"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