Booting a rtems exe on Zynq UltraScale+ MPSoC ZCU106 board
Richi Dubey
richidubey at gmail.com
Wed Apr 14 06:00:51 UTC 2021
Hi,
I followed the 8.2.23 docs
<https://docs.rtems.org/branches/master/user/bsps/bsps-arm.html#xilinx-zynqmp>
to
build rtems for the xilinx_zynqmp_ultra96 bsp since it was the only bsp
corresponding to xilinx-zynqmp in the rtems-bsp.
Then I followed the boot via Uboot section 8.2.1.1 on docs
<https://docs.rtems.org/branches/master/user/bsps/bsps-arm.html#boot-via-u-boot>,
but the uboot on zcu106 does not have a run loadfdt command, and its
alternative is fdt addr [address]. But something is wrong, I cannot run the
sp01.img file:
With fdt:
------------------------------
ZynqMP> tftpboot 0x3000000 rdubey/sp01.img
Using ethernet at ff0e0000 device
TFTP from server 172.19.0.3; our IP address is 172.19.2.40
Filename 'rdubey/sp01.img'.
Load address: 0x3000000
Loading: ####
6.9 MiB/s
done
Bytes transferred = 50978 (c722 hex)
ZynqMP> fdt addr 0x2A00000
ZynqMP> bootm 0x3000000 - 0x2A00000 ; reset
## Booting kernel from Legacy Image at 03000000 ...
Image Name: RTEMS
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 50914 Bytes = 49.7 KiB
Load Address: 00300000
Entry Point: 00300000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02a00000
Booting using the fdt blob at 0x2a00000
Uncompressing Kernel Image ... OK
Loading Device Tree to 0000000007ff1000, end 0000000007fff257 ... OK
fdt_find_or_add_subnode: chosen: FDT_ERR_BADSTRUCTURE
ERROR: /chosen node create failed
- must RESET the board to recover.
FDT creation failed! hanging...### ERROR ### Please RESET the board ###
------------------------------
With loading the system.dtb that I generally use for loading yocto linux
images:
---------------------
ZynqMP> tftpboot 0x2A00000 rdubey/system.dtb
Using ethernet at ff0e0000 device
TFTP from server 172.19.0.3; our IP address is 172.19.253.142
Filename 'rdubey/system.dtb'.
Load address: 0x2a00000
Loading: ###T #
8.8 KiB/s
done
Bytes transferred = 45656 (b258 hex)
ZynqMP> tftpboot 0x3000000 rdubey/sp01.img
Using ethernet at ff0e0000 device
TFTP from server 172.19.0.3; our IP address is 172.19.253.142
Filename 'rdubey/sp01.img'.
Load address: 0x3000000
Loading: ####
1.7 MiB/s
done
Bytes transferred = 50978 (c722 hex)
ZynqMP> bootm 0x3000000 - 0x2A00000 ; reset
## Booting kernel from Legacy Image at 03000000 ...
Image Name: RTEMS
Image Type: ARM Linux Kernel Image (gzip compressed)
Data Size: 50914 Bytes = 49.7 KiB
Load Address: 00300000
Entry Point: 00300000
Verifying Checksum ... OK
## Flattened Device Tree blob at 02a00000
Booting using the fdt blob at 0x2a00000
Uncompressing Kernel Image ... OK
Loading Device Tree to 0000000007ff1000, end 0000000007fff257 ... OK
Starting kernel ...
"Synchronous Abort" handler, esr 0x02000000
elr: ffffffff90593000 lr : 0000000010081868 (reloc)
elr: 0000000000300000 lr : 000000007fdee868
x0 : 0000000000000000 x1 : 0000000000000000
x2 : 0000000007ff1000 x3 : 0000000000000000
x4 : 0000000000300000 x5 : 0000000000000000
x6 : 0000000000000008 x7 : 0000000000000000
x8 : 000000007dda0650 x9 : 0000000001008000
x10: 000000000a200023 x11: 0000000000000002
x12: 0000000000000002 x13: 00000000000096f4
x14: 000000007dda06ac x15: 000000007fdee224
x16: 0000000000000002 x17: 0000000007fff258
x18: 000000007ddacde8 x19: 000000007fead720
x20: 0000000000000000 x21: 0000000000000400
x22: 000000000000071f x23: 000000007fdeedb8
x24: 0000000000000003 x25: 000000007ddbd378
x26: 000000007fe9ac18 x27: 0000000000300000
x28: 0000000003000040 x29: 000000007dda0790
Resetting CPU ...
### ERROR ### Please RESET the board ###
---------------------
What might be going wrong? zcu106 is a multi processor board, so do I need
to do something special to run the sp01 test? I have not tested any other
.exe (or .img) so far.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20210414/be158555/attachment-0001.html>
More information about the devel
mailing list