From 3a8be46414f736269db4a6abb2b89f4a4e79640d Mon Sep 17 00:00:00 2001 From: Sandeep Gundlupet Raju Date: Sun, 24 Mar 2024 14:58:13 -0600 Subject: README.booting.versal.md: Update xen jtag boot instructions Update xen jtag boot instruction using TFTP or XSDB tools. Signed-off-by: Sandeep Gundlupet Raju Signed-off-by: Mark Hatle --- docs/README.booting.versal.md | 82 ++++++++++++++++++++++++++++++++++++------- 1 file changed, 69 insertions(+), 13 deletions(-) (limited to 'docs') diff --git a/docs/README.booting.versal.md b/docs/README.booting.versal.md index ef817bf3..4f673689 100644 --- a/docs/README.booting.versal.md +++ b/docs/README.booting.versal.md @@ -57,6 +57,10 @@ Deploying the images can be done in two methods. #### Using devtool boot-jtag script +> **Note:** For Xen boot flow boot-jtag script doesn't include loading xen, kernel +> and root filesystem, This step needs to be done manually as mentioned in XSDB +> or TFTP method below. + 1. Run devtool command to generate the boot-jtag.tcl script. ``` $ devtool boot-jtag --help @@ -125,6 +129,8 @@ Load the images into the target DDR/PL DRR load address i.e., Below example uses base DDR address as 0x0 which matches in vivado address editor. +1. **Linux** + | Image Type | Base DDR Address | Image Offset | Load Address in DDR | |--------------------|------------------|--------------|---------------------| | Kernel | 0x0 | 0x200000 | 0x200000 | @@ -132,6 +138,15 @@ Below example uses base DDR address as 0x0 which matches in vivado address edito | Rootfs | 0x0 | 0x4000000 | 0x4000000 | | U-boot boot script | 0x0 | 0x20000000 | 0x20000000 | +2. **Xen** + +| Image Type | Base DDR Address | Image Offset | Load Address in DDR | +|--------------------|------------------|--------------|---------------------| +| Kernel | 0x0 | 0xE00000 | 0xE00000 | +| Device Tree | 0x0 | 0xC000000 | 0xc000000 | +| Rootfs | 0x0 | 0x02600000 | 0x02600000 | +| U-boot boot script | 0x0 | 0x20000000 | 0x20000000 | + > **Note:** > 1. `` refers to core-image-minimal or petalinux-image-minimal > 2. For pxeboot boot create a symlink for `-${MACHINE}-${DATETIME}.cpio.gz.u-boot` @@ -152,13 +167,23 @@ xsdb% stop ``` 2. Using the `dow` command to load the images into the target DDR/PL DDR load address. -``` -xsdb% dow -data ${DEPLOY_DIR_IMAGE}/Image 0x200000 -xsdb% dow -data ${DEPLOY_DIR_IMAGE}/system.dtb 0x1000 -xsdb% dow -data ${DEPLOY_DIR_IMAGE}/core-image-minimal-${MACHINE}.cpio.gz.u-boot 0x4000000 -xsdb% dow -data ${DEPLOY_DIR_IMAGE}/boot.scr 0x20000000 -xsdb% targets -set -nocase -filter {name =~ "*A72*#0"} -``` + + * Linux XSDB + ``` + xsdb% targets -set -nocase -filter {name =~ "*A72*#0"} + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/Image 0x200000 + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/system.dtb 0x1000 + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/core-image-minimal-${MACHINE}.cpio.gz.u-boot 0x4000000 + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/boot.scr 0x20000000 + ``` + * Xen XSDB + ``` + xsdb% targets -set -nocase -filter {name =~ "*A72*#0"} + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/Image 0xE00000 + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/system.dtb 0xc000000 + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/core-image-minimal-${MACHINE}.cpio.gz 0x02600000 + xsdb% dow -data ${DEPLOY_DIR_IMAGE}/boot.scr 0x20000000 + ``` ###### Using TFTP @@ -170,13 +195,25 @@ Versal> set serverip Versal> set ipaddr ``` 3. Load the images to DDR address. -``` -U-Boot> tftpboot 0x200000 Image -U-Boot> tftpboot 0x1000 system.dtb -U-Boot> tftpboot 0x4000000 core-image-minimal-${MACHINE}.cpio.gz.u-boot -U-Boot> tftpboot 0x20000000 boot.scr -``` + * Linux TFTP + ``` + U-Boot> tftpboot 0x200000 Image + U-Boot> tftpboot 0x1000 system.dtb + U-Boot> tftpboot 0x4000000 core-image-minimal-${MACHINE}.cpio.gz.u-boot + U-Boot> tftpboot 0x20000000 boot.scr + ``` + + * Xen TFTP + ``` + U-Boot> tftpboot 0xE00000 Image + U-Boot> setenv kernel_size 0x$filesize + U-Boot> tftpboot 0xc000000 system.dtb + U-Boot> tftpboot 0x02600000 core-image-minimal-${MACHINE}.cpio.gz + U-Boot> setenv ramdisk_size 0x$filesize + U-Boot> tftpboot 0x20000000 boot.scr + ``` + ##### Booting Linux Once the images are loaded continue the execution. @@ -191,10 +228,29 @@ xsdb% con xsdb% exit ``` 3. In the target Serial Terminal, from U-Boot prompt run `boot` command. + +* Linux boot ``` U-Boot> boot ``` +* XEN JTAG boot + + * XSDB + > **Note:** You need to calculate the Kernel(kernel_size) and ramdisk(ramdisk_size) + > image size manually from `${DEPLOY_DIR_IMAGE}` directory. For example if your + > kernel size is 24269312 bytes you need to convert to hex 0x1725200 and use it. + ``` + U-Boot> setenv kernel_size + U-Boot> setenv ramdisk_size + U-Boot> boot + ``` + + * TFTP + ``` + U-Boot> boot + ``` + ## Booting from SD 1. Load the SD card into the VCK190 board in the J302 SD slot. -- cgit v1.2.3-54-g00ecf