32be_rootfs boot from sdcard (ls1046)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

32be_rootfs boot from sdcard (ls1046)

1,082 Views
zhengruoqin
Contributor I

I tried to put kernel and rootfs in SD card , and boot it follow the SDK note(ls1046), it was fail to mount the rootfs(while 64be kernel is good),and here is part of log:

mmcblk0: mmc0:0007 SL32G 29.0 GiB

 mcblk0: p1

VFS: Mounted root (ext2 filesystem) on device 1:0.

VFS: Cannot open root device "mmcblk0p1" or unknown-block(0,0): error -6

Please append a correct "root=" boot option; here are the available partitions:

0100          262144 ram0  (driver?)

0101          262144 ram1  (driver?)

0102          262144 ram2  (driver?)

0103          262144 ram3  (driver?)

0104          262144 ram4  (driver?)

0105          262144 ram5  (driver?)

0106          262144 ram6  (driver?)

0107          262144 ram7  (driver?)

1f00          524288 mtdblock0  (driver?)

b300        30375936 mmcblk0  driver: mmcblk

  b301        30371936 mmcblk0p1 00000000-01

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.1.30-rt34+ #2

Hardware name: Freescale LAYERSCAPE

 

The entire log is in atachments, do anyone have any idea about this problem? 

 

By the way, I tried to boot the kernel with command “bootm a0000000:kernel@1 - a0000000:fdt@1”

And the log show as below, you can see that mmcblk0 device is missed, do anyone know the reason?

 

ALSA device list:

  No soundcards found.

VFS: Cannot open root device "mmcblk0p1" or unknown-block(0,0): error -6

Please append a correct "root=" boot option; here are the available partitions:

0100          262144 ram0  (driver?)

0101          262144 ram1  (driver?)

0102          262144 ram2  (driver?)

0103          262144 ram3  (driver?)

0104          262144 ram4  (driver?)

0105          262144 ram5  (driver?)

0106          262144 ram6  (driver?)

0107          262144 ram7  (driver?)

1f00          524288 mtdblock0  (driver?)

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

CPU: 0 PID: 1 Comm: swapper/0 Not tainted 4.1.30-rt34+ #2

Hardware name: Freescale LAYERSCAPE

Original Attachment has been moved to: 32be_kernel+32be_rootfs_boot-from-sdcard.txt.zip

0 Kudos
Reply
2 Replies

846 Views
yipingwang
NXP TechSupport
NXP TechSupport

Hello zheng ruoqin,

In your SDK build environment, please create ls1046 32 bit build project with the command "source ./fsl-setup-env -m ls1046ardb-32b", specify the filesystem type as tar.gz to build the 32 bit rootfs filesystem. Then Copy and deploy the rootfs filesystem on SD card.

Assume both kernel.itb and rootfs located on the first partition of SD card.

=> ext2load mmc 0:1 a0000000 kernel.itb

=> setenv bootargs  "root=/dev/mmcblk0p1 rw earlycon=uart8250,0x21c0500 console=ttyS0,115200"

=> bootm a0000000:kernel@1 - a0000000:fdt@1


Have a great day,
TIC

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

846 Views
zhengruoqin
Contributor I

Thank you for your help.

It's the problem of kernel delay, I have resolved it by add rootdelay=1 in uboot parameter.

It is because the kernel didn't recognize the sdcard in mount time, and if you add some delay, the kernel will recognize  it.

0 Kudos
Reply