/* 添加如下语句即可 */
&s3c_device_nand, };
保存,退出。
1.3.3 禁止 Flash ECC校验
我们的内核都是通过UBOOT 写到Nand Flash 的, UBOOT 通过的软件ECC 算法产生ECC 校验码, 这与内核
校验的ECC 码不一样, 内核中的ECC 码是由S3C2410 中Nand Flash 控制器产生的. 所以, 我们在这里选择禁止
内核ECC 校验.
修改drivers/mtd/nand/s3c2410.c 文件:
[arm@localhost linux-2.6.14]$ vi drivers/mtd/nand/s3c2410.c
找到s3c2410_nand_init_chip()函数,在该函数体最后加上一条语句:
chip->eccmode = NAND_ECC_NONE;
保存,退出。
OK.我们的关于flash 分区的设置全部完工.
1.4 配置内核
1.4.1 支持启动时挂载 devfs
为了我们的内核支持devfs 以及在启动时并在/sbin/init
运 之前能自动挂载/dev 为devfs 文件系统,修改
fs/Kconfig 文件
[arm@localhost linux-2.6.14]$ vi fs/Kconfig
找到menu \
添加如下语句:
config DEVFS_FS
bool \
default y
config DEVFS_MOUNT
----------------------- 页面 56-----------------------
bool \
default y
depends on DEVFS_FS
1.4.2 配置内核产生.config 文件
[arm@localhost linux-2.6.14]$ cp
arch/arm/configs/smdk2410_defconfig .config
[arm@localhost linux-2.6.14]$ make menuconfig
在smdk2410_defconfig 基础上,我所增删的内核配置项如下:
Loadable module support --->
[*] Enable loadable module support
[*] Automatic kernel module loading
System Type ---> [*] S3C2410 DMA support
Boot options ---> Default kernel command string:
noinitrd root=/dev/mtdblock2 init=/linuxrc console=ttySAC0,115200
#说明:mtdblock2 代表我的第3 个flash 分区,它是我的rootfs
# console=ttySAC0,115200 使kernel 启动期间的信息全部输出到串口0 上.
# 2.6 内核对于串口的命名改为ttySAC0 ,但这不影响用户空间的串口编程。
# 用户空间的串口编程针对的仍是/dev/ttyS0 等
Floating point emulation --->
[*] NWFPE math emulation
This is necessary to run most binaries!!!
#接下来要做的是对内核MTD 子系统的设置
Device Drivers --->
Memory Technology Devices (MTD) --->
[*] MTD partitioning support
#支持MTD 分区,这样我们在前面设置的分区才有意义
[*] Command line partition table parsing
#支持从命令行设置flash 分区信息,灵活
RAM/ROM/Flash chip drivers --->
<*> Detect flash chips by Common Flash
Interface (CFI) probe
<*> Detect non-CFI AMD/JEDEC-compatible flash chips
<*> Support for Intel/Sharp flash chips
<*> Support for AMD/Fujitsu flash chips
<*> Support for ROM chips in bus mapping
NAND Flash Device Drivers --->
<*> NAND Device Support
<*> NAND Flash support for S3C2410/S3C2440 SoC
Character devices --->
[*] Non-standard serial port support
[*] S3C2410 RTC Driver
#接下来做的是针对文件系统的设置,本人实验时目标板上要上的文件系统是cramfs,故做如下配置
----------------------- 页面 57-----------------------
File systems --->
<> Second extended fs support #去除对ext2 的支持
Pseudo filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)
[*] /dev file system support (OBSOLETE)
[*] Automatically mount at boot (NEW)
#这里会看到我们前先修改fs/Kconfig 的成果,devfs 已经被支持上了
Miscellaneous filesystems --->
<*> Compressed ROM file system support (cramfs)
#支持cramfs
Network File Systems --->
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库arm2410 - linux移植(3)在线全文阅读。
相关推荐: