# cd /public/linux-2.6.11.7-2410/fs/ # vi Makefile (将下面一行添加到Makefile中) obj-$(CONFIG_YAFFS_FS) += yaffs2/
# vi Kconfig (将下面一行添加到Kconfig中) source "fs/yaffs2/Kconfig
(4)cd /public/linux-2.6.11.7-2410/ make menuconfig 在编译内核时选择: <*> YAFFS2 file system support <*> 512 byte / page devices <*> Lets Yaffs do its own ECC <*> 2048 byte (or larger) / page devices <*> Autoselect yaffs2 format <*> Disable lazy loading <*> Turn off wide tnodes <*> Turn off debug chunk erase check
(5) 编译内核make zImage 看网上有人编译过程中出现了问题, 我没有碰到任何问题,很顺利。 By the way : 编译yaffs时出现了问题,编译通过不了, 这也是我选择yaff2 而没有选yaffs的一大原因。
(6)现在板子上跑的是2.4的内核,将板子上的根文件系统换为yaffs文件系统。具体过程参见文档。 然后在vivi >param set linux_cmd_line "noinitrd root=/dev/mtdblock/3 init=/linuxrc console=ttySAC0" 修改启动参数,然后烧写刚才生成的2.6的内核。
(7) 启动成功。 NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com IrCOMM protocol (Dag Brattli) yaffs: dev is 7939 name is "1f:03" VFS: Mounted root (yaffs filesystem). Mounted devfs on /dev Freeing init memory: 76K hub.c: USB new device connect on bus1/2, assigned device number 2 usb.c: USB device not accepting new address=2 (error=-110) hub.c: USB new device connect on bus1/2, assigned device number 3 usb.c: USB device not accepting new address=3 (error=-110) mount /etc as ramfs re-create the /etc/mtab entries /lib/yaffs.o: init_module: Device or resource busy Hint: insmod errors can be caused by incorrect module parameters, including invsyaffs: dev is 7940 name is "1f:04" console=/dev/coconsole=/dev/co