根目录挂载位置错误记录

通过官方给予的run uprootfs升级rootfs时,发现根文件系统不能正确挂载到正确位置。但是使用mfgtool确是正确运行。

开发板当前环境:

自制uboot

自制kernel

自制rootfs

编译器arm-none-linux-gnueabi

uprootfs陪置:

"uprootfs=" "mtdparts default;"
"nand erase rootfs;"
"ubi part rootfs;"
"ubi create rootfs;"
"tftp $(loadaddr) $(rootfs);"
"ubi write $(loadaddr) rootfs $(filesize)"

mtdparts default配置:

MTDPARTS_DEFAULT "mtdparts=nandflash0:12m(boot),"
"512k(env),"
"512k(reserve),"
"2m(bmp),"
"512k(reserve),"
"64m(rootfs),"
"-(opt)"

bootargs配置

gpmi=g console=ttyAM0,115200n8 ubi.mtd=5 root=ubi0:rootfs rootfstype=ubifs ro

报错:

FEC Ethernet Driver
fec_enet_mii_bus: probed
rtc-pcf8563 1-0051: pcf8563_get_datetime: read error
rtc-pcf8563 1-0051: hctosys: unable to read the hardware clock
VFS: Cannot open root device "ubi0:rootfs" or unknown-block(0,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00           12288 mtdblock0 (driver?)
1f01             512 mtdblock1 (driver?)
1f02             512 mtdblock2 (driver?)
1f03            2048 mtdblock3 (driver?)
1f04             512 mtdblock4 (driver?)
1f05           65536 mtdblock5 (driver?)
1f06           49664 mtdblock6 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Backtrace:
[<c0030468>] (dump_backtrace+0x0/0x114) from [<c03b65fc>] (dump_stack+0x18/0x1c)
 r7:c0027a24 r6:00008001 r5:c3c15000 r4:c0510fb8
[<c03b65e4>] (dump_stack+0x0/0x1c) from [<c03b6678>] (panic+0x78/0xf4)
[<c03b6600>] (panic+0x0/0xf4) from [<c000902c>] (mount_block_root+0x1d8/0x218)
 r3:00000000 r2:00000001 r1:c3c23f78 r0:c0465945
[<c0008e54>] (mount_block_root+0x0/0x218) from [<c00091fc>] (prepare_namespace+)
[<c0009168>] (prepare_namespace+0x0/0x1c4) from [<c00084f8>] (kernel_init+0x128)
 r5:c0026e04 r4:c0510100
[<c00083d0>] (kernel_init+0x0/0x170) from [<c004bdf8>] (do_exit+0x0/0x6dc)
 r5:c00083d0 r4:00000000  
少壮不识cpp,老大方知cpp可怕
原文地址:https://www.cnblogs.com/Jacket-K/p/7453607.html