"mount_devfs_fs(): unable to mount devfs, err: -2"一个困扰了我很久的问题,主要是ecc的问题。 搞清楚你在driver/mtd/nand/s3c2410.c文件中有没有把NAND_ECC_SOFT改成NAND_ECC_NONE,这个网上不少的人都会做(听说会与yaffs文件系统有冲突,但我发现反而和cramfs文件系统有冲突)。
假设你把NAND_ECC_SOFT改成NAND_ECC_NONE,那[*] Lets Yaffs do its own ECC 这一步是必需的。
最后,如果你把NAND_ECC_SOFT改成NAND_ECC_NONE的话,那你下载yaffs文件系统的时候就不应该加上-e的参数了。
这个东西由"mount_devfs_fs(): unable to mount devfs, err: -2"得来的.
先让内核挂载cramfs试试看(记得把NAND_ECC_SOFT改成NAND_ECC_NONE),因为这个文件系统只要用下载内核的命令下载就行,成功挂载cramfs的话将会是你最大的鼓舞
2 确保devfs修改正确.由于linux 2.6.12后取消了devfs,因此你自己在fs/kconfig里面添加devfs的支持.
从2.6.12的fs/Kconfig中拷贝下面几项到2.6.14的fs/Kconfig中去:
config DEVFS_FS
bool "/dev file system support (OBSOLETE)"
depends on EXPERIMENTAL
help
…………………………………………………
config DEVFS_MOUNT
bool "Automatically mount at boot"
depends on DEVFS_FS
help
………………………………………………….
config DEVFS_DEBUG
bool "Debug devfs"
depends on DEVFS_FS
help
…………………………………………………..
help 的部分就省了,在 2.6.12 内核的配置文件会看得到,或者自己写上去也行。
重新make menuconfig 在File systems->Pseudo filesystems目录里面可以后到devfs的配置选项如下:
[*] /proc file system support │ │
[*] /dev file system support (OBSOLETE) │ │
[*] Automatically mount at boot │ │
[*] Debug devfs │ │
[*] Virtual memory file system support (former shm fs) │ │
[ ] Relayfs file system support
因为在执行内核要结束的时候,要mount devfs,需要debug devfs!所以要加上去!
Debug devfs