On Mon, Jul 26, 2021 at 07:37:53AM +0000, Z.Q. Hou wrote: > Hi Micheal, > > Pasted the log below, the direct cause seems the u-boot DTB doesn't have > /cpus node. > > => run bootcmd_mmc0 > switch to partitions #0, OK > mmc0 is current device > Scanning mmc 0:1... > libfdt fdt_check_header(): FDT_ERR_BADMAGIC > Scanning disk es...@1560000.blk... > Found 5 disks > No EFI system partition > couldn't find /cpus > "Synchronous Abort" handler, esr 0x96000006 > elr: 0000000082004a6c lr : 0000000082004a30 (reloc) > elr: 00000000fbd25a6c lr : 00000000fbd25a30 > x0 : 0000000087f00a88 x1 : 000000001cfbfd5e > x2 : efbeaddeefbeadde x3 : 00000000efbeadde > x4 : 00000000fffffffc x5 : 0000000087f037d2 > x6 : 0000000000000a58 x7 : 0000000000000003 > x8 : 0000000087f00000 x9 : 0000000000000008 > x10: 0000000000000a44 x11: 00000000fbc17c6c > x12: 00000000000009e4 x13: 0000000000000000 > x14: 0000000087f00000 x15: 00000000fbc180d8 > x16: 00000000fbd742d0 x17: 0000000000000000 > x18: 00000000fbc1cdb0 x19: 00000000000009e4 > x20: 0000000087f00000 x21: 00000000fbdb3404 > x22: 00000000fbdb4a97 x23: 0000000000000018 > x24: 00000000fbde5d44 x25: 0000000000000000 > x26: 0000000000000000 x27: 0000000000000000 > x28: 00000000fbc5ba60 x29: 00000000fbc17d30 > > Code: a94153f3 a9425bf5 a8c47bfd d65f03c0 (b8617803) > Resetting CPU ... > > > > > > And why don't you fix the fdt_addr then? Shouldn't it be unset if there is > > no > > actual device tree present in a ROM section? (I don't say there isn't > > another > > underlying problem when you use an invalid fdt_addr). > > The problem shown in above log is triggered when unset the fdt_addr. On which platform are you seeing this issue?
I have tested v2021.07 on ls1043a-rdb and it doesn't reproduce. Board is booting from NOR and I have two mmc partitions: Device Start End Sectors Size Type /dev/mmcblk0p1 2048 1048576 1046529 511M Linux filesystem /dev/mmcblk0p2 1050624 15523806 14473183 6.9G Linux filesystem => run bootcmd_mmc0 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... Scanning disk es...@1560000.blk... Found 3 disks No EFI system partition PCIe1: pcie@3400000 disabled PCIe2: pcie@3500000 Root Complex: no link PCIe3: pcie@3600000 Root Complex: no link WARNING failed to get smmu node: FDT_ERR_NOTFOUND WARNING failed to get smmu node: FDT_ERR_NOTFOUND BootOrder not defined EFI boot manager: Cannot load any image Scanning mmc 0:2... WARNING failed to get smmu node: FDT_ERR_NOTFOUND WARNING failed to get smmu node: FDT_ERR_NOTFOUND BootOrder not defined EFI boot manager: Cannot load any image => I still don't see the issue even if I remove fdt_addr: => setenv fdt_addr => run bootcmd_mmc0 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... WARNING failed to get smmu node: FDT_ERR_NOTFOUND WARNING failed to get smmu node: FDT_ERR_NOTFOUND BootOrder not defined EFI boot manager: Cannot load any image Scanning mmc 0:2... WARNING failed to get smmu node: FDT_ERR_NOTFOUND WARNING failed to get smmu node: FDT_ERR_NOTFOUND BootOrder not defined EFI boot manager: Cannot load any image => > If it not unset, the SError is triggered when to check the magic of the fdt > header. > > Thanks, > Zhiqiang > > > > > -michael BR, Yousaf