该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
内核启动成功后,一直卡在这里:
random: nonblocking pool is initialized
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "nfs" or unknown-block(2,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
1f00 131072 mtdblock0 (driver?)
1f01 32768 mtdblock1 (driver?)
b300 32768 mmcblk0 driver: mmcblk
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.4.0+ #2
Hardware name: ARM-Versatile Express
[<80016388>] (unwind_backtrace) from [<80012e60>] (show_stack+0x10/0x14)
[<80012e60>] (show_stack) from [<802451f0>] (dump_stack+0x78/0x88)
[<802451f0>] (dump_stack) from [<800a6698>] (panic+0x9c/0x1f8)
[<800a6698>] (panic) from [<806242d4>] (mount_block_root+0x1c8/0x268)
[<806242d4>] (mount_block_root) from [<80624498>] (mount_root+0x124/0x12c)
[<80624498>] (mount_root) from [<806245f0>] (prepare_namespace+0x150/0x198)
[<806245f0>] (prepare_namespace) from [<80623edc>] (kernel_init_freeable+0x250/0x260)
[<80623edc>] (kernel_init_freeable) from [<8049f410>] (kernel_init+0x8/0xe8)
[<8049f410>] (kernel_init) from [<8000f478>] (ret_from_fork+0x14/0x3c)
---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
---------------------------------------------------------------------------
原因分析:内核已经启动成功,但是没有成功挂载文件系统,所以不能进入到shell环境中。
排查手段:
1)检查u-boot源码:include/configs/vexpress_common.h,看bootcmd命令设置是否正确,重新编译u-boot的镜像,要跟uImage拷贝到tftpboot目录下面。
•#defineCONFIG_BOOTCOMMAND \
"tftp0x60003000 uImage;tftp 0x60500000 vexpress-v2p-ca9.dtb; \
setenvbootargs 'root=/dev/mmcblk0 console=tty0'; \
bootm 0x60003000 - 0x60500000; "
2)确保文件系统镜像测试没有问题,可以使用群共享里的uImage和a9rootfs.ext3镜像,排查是不是内核和文件系统镜像的问题