Unable to Boot Linux from SD card in LX2160ardb_rev2

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

Unable to Boot Linux from SD card in LX2160ardb_rev2

ソリューションへジャンプ
2,249件の閲覧回数
m_kei
Contributor III

We are using lx2160ardb_rev2 for development.

I have been trying to get my own build of Linux to work since the other day, but it has not been working as expected. I thought I was running flushed Linux with flex-installer on my sd card, but I was wrong. I had previously thought that the following command would boot Linux on the sd card.

$ run sd_bootcmd

However, upon reading the LSDK user guide, I found that this is to boot the pre-prepared TinyLinux on lx2160ardb_rev2. Perhaps it must be correctly executed as follows.

$ run bootcmd_mmc0

However, when this is done, the following error occurs.

switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
Scanning disk esdhc@2140000.blk...
Scanning disk esdhc@2150000.blk...
** Unrecognized filesystem type **
Found 6 disks
No EFI system partition
ERROR: invalid device tree
Scanning mmc 0:2...
Found U-Boot script /lx2160ardb_boot.scr
980 bytes read in 16 ms (59.6 KiB/s)
## Executing script at 80000000

I was using flex-installer and flushing composite firmware, rootfs, and linux img, so I am thinking that perhaps flex-installer is not formatting the partitions correctly.

Is my BOOT method wrong?
Or is flex-installer wrong?

0 件の賞賛
返信
1 解決策
2,234件の閲覧回数
yipingwang
NXP TechSupport
NXP TechSupport

Generate boot partition tar ball with the following command.

$ flex-builder -i mkboot -a arm64

Download ubuntu main rootfs image tar ball

$ wget https://www.nxp.com/lgfiles/sdk/lsdk2108/rootfs_lsdk2108_ubuntu_main_arm64.tgz

Deploy images to SD card on the build host.

$ flex-installer -b boot_arm64_lts_5.10.tgz -r rootfs_lsdk2108_ubuntu_main_arm64.tgz  -d /dev/sdx

Note:/dev/sdx is SD device name on the host.

Under u-boot run "boot" command directly.

元の投稿で解決策を見る

0 件の賞賛
返信
2 返答(返信)
2,246件の閲覧回数
m_kei
Contributor III

Perhaps, but I found that this is due to the default uboot env, which looks for boot scripts in order from partition 1 of the sd. So, as a result, I think it is trying to boot Linux by executing lx2160ardb_boot.scr, which resides on partition 2.

However, I think the problem is that Linux fails to boot from there.

"## Executing script at 80000000", it is trying to start at 80000000 by executing lx2160ardb_boot.scr, but it fails to boot there. We believe that this may be the case.

Why is this failing?

0 件の賞賛
返信
2,235件の閲覧回数
yipingwang
NXP TechSupport
NXP TechSupport

Generate boot partition tar ball with the following command.

$ flex-builder -i mkboot -a arm64

Download ubuntu main rootfs image tar ball

$ wget https://www.nxp.com/lgfiles/sdk/lsdk2108/rootfs_lsdk2108_ubuntu_main_arm64.tgz

Deploy images to SD card on the build host.

$ flex-installer -b boot_arm64_lts_5.10.tgz -r rootfs_lsdk2108_ubuntu_main_arm64.tgz  -d /dev/sdx

Note:/dev/sdx is SD device name on the host.

Under u-boot run "boot" command directly.

0 件の賞賛
返信