summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com>2024-10-07 21:22:22 -0600
committerMark Hatle <mark.hatle@amd.com>2024-10-09 08:34:47 -0500
commitebf254948e1309051793dffd01db36d4092608ea (patch)
tree833dde9f6c90992345bd87cb1f089a7a523cce09
parentec6815ed64d808423bcc957cdada9499bfbfc6a7 (diff)
downloadmeta-xilinx-ebf254948e1309051793dffd01db36d4092608ea.tar.gz
u-boot-xlnx-scr: Fix kernel image overlap issue
Kernel image boot hangs when packagegroup-openamp is enabled. $ runqemu nographic runqemu - INFO - Running bitbake -e ... runqemu - INFO - Continuing with the following parameters: KERNEL: [] DTB: [/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/system.dtb] MACHINE: [zcu111-zynqmp] FSTYPE: [wic.qemu-sd] ROOTFS: [/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/petalinux-image-minimal-zcu111-zynqmp-20241006163914.wic.qemu-sd] CONFFILE: [/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/petalinux-image-minimal-zcu111-zynqmp-20241006163914.qemuboot.conf] runqemu - INFO - Using preconfigured tap device tap0 runqemu - INFO - If this is not intended, touch /tmp/qemu-tap-locks/tap0.skip to make runqemu skip tap0. runqemu - INFO - Network configuration: ip=192.168.7.2::192.168.7.1:255.255.255.0::eth0:off:8.8.8.8 net.ifnames=0 runqemu - INFO - Running /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/work/x86_64-linux/qemu-helper-native/1.0/recipe-sysroot-native/usr/bin/qemu-system-aarch64-multiarch -net nic -net nic -net nic -net nic,netdev=net0,macaddr=52:54:00:12:34:02 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -drive if=sd,index=1,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/petalinux-image-minimal-zcu111-zynqmp-20241006163914.wic.qemu-sd,format=raw -nodefaults -hw-dtb /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/qemu-hw-devicetrees/multiarch/zcu102-arm.dtb -global xlnx,zynqmp-boot.cpu-num=0 -global xlnx,zynqmp-boot.use-pmufw=true -device loader,addr=0xfffc0000,data=0x584c4e5801000000,data-be=true,data-len=8 -device loader,addr=0xfffc0008,data=0x0000000800000000,data-be=true,data-len=8 -device loader,addr=0xfffc0010,data=0x1000000000000000,data-be=true,data-len=8 -device loader,addr=0xffd80048,data=0xfffc0000,data-len=4,attrs-secure=on -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/arm-trusted-firmware.elf,cpu-num=0 -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/u-boot.elf -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/system.dtb,addr=0x100000,force-raw=on -boot mode=5 -pmu-args ' -M microblaze-fdt -display none -hw-dtb /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/qemu-hw-devicetrees/multiarch/zynqmp-pmu.dtb -kernel /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/pmu-rom.elf -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/pmu-firmware-zcu111-zynqmp.elf -device loader,addr=0xfd1a0074,data=0x1011003,data-len=4 -device loader,addr=0xfd1a007C,data=0x1010f03,data-len=4 ' -machine arm-generic-fdt -m 4096 -serial mon:stdio -serial null -nographic runqemu - INFO - Host uptime: 868688.21 PMU instance cmd: /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/work/x86_64-linux/qemu-helper-native/1.0/recipe-sysroot-native/usr/bin/qemu-system-microblazeel -M microblaze-fdt -display none -hw-dtb /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/qemu-hw-devicetrees/multiarch/zynqmp-pmu.dtb -kernel /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/pmu-rom.elf -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/pmu-firmware-zcu111-zynqmp.elf -device loader,addr=0xfd1a0074,data=0x1011003,data-len=4 -device loader,addr=0xfd1a007C,data=0x1010f03,data-len=4 -machine-path /tmp/tmp22ryxeee APU instance cmd: /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/work/x86_64-linux/qemu-helper-native/1.0/recipe-sysroot-native/usr/bin/qemu-system-aarch64 -net nic -net nic -net nic -net nic,netdev=net0,macaddr=52:54:00:12:34:02 -netdev tap,id=net0,ifname=tap0,script=no,downscript=no -drive if=sd,index=1,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/petalinux-image-minimal-zcu111-zynqmp-20241006163914.wic.qemu-sd,format=raw -nodefaults -hw-dtb /scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/qemu-hw-devicetrees/multiarch/zcu102-arm.dtb -global xlnx,zynqmp-boot.cpu-num=0 -global xlnx,zynqmp-boot.use-pmufw=true -device loader,addr=0xfffc0000,data=0x584c4e5801000000,data-be=true,data-len=8 -device loader,addr=0xfffc0008,data=0x0000000800000000,data-be=true,data-len=8 -device loader,addr=0xfffc0010,data=0x1000000000000000,data-be=true,data-len=8 -device loader,addr=0xffd80048,data=0xfffc0000,data-len=4,attrs-secure=on -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/arm-trusted-firmware.elf,cpu-num=0 -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/u-boot.elf -device loader,file=/scratch/sandeep/yocto/2024.2/yp-dev/build-zynqmp/tmp/deploy/images/zcu111-zynqmp/system.dtb,addr=0x100000,force-raw=on -boot mode=5 -machine arm-generic-fdt -m 4096 -serial mon:stdio -serial null -nographic -machine-path /tmp/tmp22ryxeee PMU Firmware 2024.2 Sep 26 2024 10:36:04 PMU_ROM Version: xpbr-v8.1.0-0 NOTICE: BL31: Non secure code at 0x8000000 NOTICE: BL31: v2.10.0 (release):xlnx_rebase_v2.10_2024.1-27-g14cea4616-dirty NOTICE: BL31: Built : 04:42:28, Sep 19 2024 U-Boot 2024.01 (Oct 02 2024 - 11:20:40 +0000) CPU: ZynqMP Silicon: v3 Chip: unknown Model: ZynqMP ZCU111 RevA Board: Xilinx ZynqMP DRAM: 2 GiB (effective 4 GiB) PMUFW: v1.1 EL Level: EL2 Secure Boot: not authenticated, not encrypted Core: 77 devices, 31 uclasses, devicetree: board NAND: 0 MiB MMC: mmc@ff170000: 0 Loading Environment from FAT... *** Error - No Valid Environment Area found *** Warning - bad env area, using default environment In: serial Out: serial,vidconsole Err: serial,vidconsole Bootmode: SD_MODE1 Reset reason: Net: ZYNQ GEM: ff0e0000, mdio bus ff0e0000, phyaddr 12, interface rgmii-id Warning: ethernet@ff0e0000 (eth0) using random MAC address - 2e:b4:31:02:a8:93 eth0: ethernet@ff0e0000 scanning bus for devices... SATA link 0 timeout. SATA link 1 timeout. AHCI 0001.0000 32 slots 2 ports 1.5 Gbps 0x3 impl SATA mode flags: 64bit ncq only starting USB... Bus usb@fe200000: Register 8000440 NbrPorts 8 Starting the controller USB XHCI 1.00 scanning bus usb@fe200000 for devices... 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Hit any key to stop autoboot: 0 switch to partitions #0, OK mmc0 is current device Scanning mmc 0:1... Found U-Boot script /boot.scr 4749 bytes read in 19 ms (243.2 KiB/s) Trying to load boot images from mmc0 Checking for /image.ub Checking for /Image Loading Image at 0x00200000 25020928 bytes read in 5526 ms (4.3 MiB/s) Checking for /system.dtb Loading system.dtb at 0x00100000 58687 bytes read in 30 ms (1.9 MiB/s) Checking for /devicetree/openamp.dtbo Loading and merging openamp.dtbo into device tree at 0x1000000 5250 bytes read in 22 ms (232.4 KiB/s) Working FDT set to 100000 Checking for /ramdisk.cpio.gz.u-boot Checking for /rootfs.cpio.gz.u-boot Working FDT set to 100000 Booting using the fdt blob at 0x100000 Working FDT set to 100000 Loading Device Tree to 0000000077bc4000, end 0000000077bdcfff ... OK Working FDT set to 77bc4000 Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034] [ 0.000000] Linux version 6.6.40-xilinx-g9f541a58e4c7 (oe-user@oe-host) (aarch64-xilinx-linux-gcc (GCC) 13.3.0, GNU ld (GNU Binutils) 2.42.0.20240716) #1 SMP Wed Sep 25 08:26:32 UTC 2024 [ 0.000000] KASLR disabled due to lack of seed [ 0.000000] Machine model: ZynqMP ZCU111 RevA [ 0.000000] earlycon: cdns0 at MMIO 0x00000000ff000000 (options '115200n8') [ 0.000000] printk: bootconsole [cdns0] enabled [ 0.000000] efi: UEFI not found. [ 0.000000] OF: reserved mem: 0x000000003ed00000..0x000000003ed3ffff (256 KiB) nomap non-reusable rproc@3ed00000 [ 0.000000] OF: reserved mem: 0x000000003ed40000..0x000000003ed43fff (16 KiB) nomap non-reusable rpu0vdev0vring0@3ed40000 [ 0.000000] OF: reserved mem: 0x000000003ed44000..0x000000003ed47fff (16 KiB) nomap non-reusable rpu0vdev0vring1@3ed44000 [ 0.000000] OF: reserved mem: 0x000000003ed48000..0x000000003ee47fff (1024 KiB) nomap non-reusable rpu0vdev0buffer@3ed48000 [ 0.000000] OF: reserved mem: 0x000000003ef00000..0x000000003ef3ffff (256 KiB) nomap non-reusable rproc@3ef00000 [ 0.000000] OF: reserved mem: 0x000000003ef40000..0x000000003ef43fff (16 KiB) nomap non-reusable rpu0vdev0vring0@3ef40000 [ 0.000000] OF: reserved mem: 0x000000003ef44000..0x000000003ef47fff (16 KiB) nomap non-reusable rpu0vdev0vring1@3ef44000 [ 0.000000] OF: reserved mem: 0x000000003ef48000..0x000000003f047fff (1024 KiB) nomap non-reusable rpu0vdev0buffer@3ef48000 [ 0.000000] Zone ranges: [ 0.000000] DMA32 [mem 0x0000000000000000-0x00000000ffffffff] [ 0.000000] Normal [mem 0x0000000100000000-0x000000087fffffff] [ 0.000000] Movable zone start for each node [ 0.000000] Early memory node ranges [ 0.000000] node 0: [mem 0x0000000000000000-0x000000003ecfffff] [ 0.000000] node 0: [mem 0x000000003ed00000-0x000000003ee47fff] [ 0.000000] node 0: [mem 0x000000003ee48000-0x000000003eefffff] [ 0.000000] node 0: [mem 0x000000003ef00000-0x000000003f047fff] [ 0.000000] node 0: [mem 0x000000003f048000-0x000000007fefffff] [ 0.000000] node 0: [mem 0x0000000800000000-0x000000087fffffff] [ 0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000087fffffff] [ 0.000000] On node 0, zone Normal: 256 pages in unavailable ranges [ 0.000000] cma: Reserved 256 MiB at 0x0000000067a00000 on node -1 [ 0.000000] psci: probing for conduit method from DT. [ 0.000000] psci: PSCIv1.1 detected in firmware. [ 0.000000] psci: Using standard PSCI v0.2 function IDs [ 0.000000] psci: MIGRATE_INFO_TYPE not supported. [ 0.000000] psci: SMC Calling Convention v1.4 [ 0.000000] percpu: Embedded 19 pages/cpu s37864 r8192 d31768 u77824 [ 0.000000] Detected VIPT I-cache on CPU0 [ 0.000000] CPU features: detected: ARM erratum 845719 [ 0.000000] alternatives: applying boot alternatives [ 0.000000] Kernel command line: earlycon root=/dev/mmcblk0p2 ro rootwait [ 0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear) [ 0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear) [ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 1031940 [ 0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off [ 0.000000] software IO TLB: area num 4. [ 0.000000] software IO TLB: mapped [mem 0x000000007bf00000-0x000000007ff00000] (64MB) [ 0.000000] Memory: 3756688K/4193280K available (15680K kernel code, 1074K rwdata, 4576K rodata, 2944K init, 467K bss, 174448K reserved, 262144K cma-reserved) [ 0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1 [ 0.000000] rcu: Hierarchical RCU implementation. [ 0.000000] rcu: RCU event tracing is enabled. [ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=16 to nr_cpu_ids=4. [ 0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies. [ 0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4 [ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0 [ 0.000000] GIC: Adjusting CPU interface base to 0x00000000f902f000 [ 0.000000] Root IRQ handler: gic_handle_irq [ 0.000000] GIC: Using split EOI/Deactivate mode [ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention. [ 0.000000] arch_timer: cp15 timer(s) running at 65.00MHz (phys). [ 0.000000] clocksource: arch_sys_counter: mask: 0x1ffffffffffffff max_cycles: 0xefdb196da, max_idle_ns: 440795204367 ns [ 0.000066] sched_clock: 57 bits at 65MHz, resolution 15ns, wraps every 2199023255550ns [ 0.008222] Console: colour dummy device 80x25 [ 0.008688] printk: console [tty0] enabled [ 0.009179] printk: bootconsole [cdns0] disabled When the DT overlay is loaded, it overwrites part of the kernel (25020928 bytes). 0x00200000 < 0x01000000 < 0x00200000 + 25020928. Since Kernel image has increase and it overlaps with openamp DT overlay load address. Hence increase the DEVICETREE_OVERLAY_PADSIZE so that it doesn't overlap with kernel image. Signed-off-by: Sandeep Gundlupet Raju <sandeep.gundlupet-raju@amd.com> Signed-off-by: Mark Hatle <mark.hatle@amd.com>
-rw-r--r--meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-scr.bb2
1 files changed, 1 insertions, 1 deletions
diff --git a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-scr.bb b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-scr.bb
index d2b6b9a5..e13413a1 100644
--- a/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-scr.bb
+++ b/meta-xilinx-core/recipes-bsp/u-boot/u-boot-xlnx-scr.bb
@@ -84,7 +84,7 @@ DEVICETREE_OVERLAY_OFFSET:zynqmp ??= "0x100000"
84DEVICETREE_OVERLAY_OFFSET:zynq ??= "0x100000" 84DEVICETREE_OVERLAY_OFFSET:zynq ??= "0x100000"
85DEVICETREE_OVERLAY_OFFSET:versal ??= "0x1000" 85DEVICETREE_OVERLAY_OFFSET:versal ??= "0x1000"
86DEVICETREE_OVERLAY_OFFSET:versal-net ??= "0x1000" 86DEVICETREE_OVERLAY_OFFSET:versal-net ??= "0x1000"
87DEVICETREE_OVERLAY_PADSIZE ??= "0xf00000" 87DEVICETREE_OVERLAY_PADSIZE ??= "0x1f00000"
88 88
89DEVICETREE_OVERLAY_ADDRESS ?= "${@hex(int(append_baseaddr(d,d.getVar('DEVICETREE_OVERLAY_OFFSET')),16) \ 89DEVICETREE_OVERLAY_ADDRESS ?= "${@hex(int(append_baseaddr(d,d.getVar('DEVICETREE_OVERLAY_OFFSET')),16) \
90 + int(d.getVar('DEVICETREE_OVERLAY_PADSIZE'),16))}" 90 + int(d.getVar('DEVICETREE_OVERLAY_PADSIZE'),16))}"