通过官方给予的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