On 7/22/26 14:16, Michal Simek wrote:
Setup BOARD_SIZE_LIMIT to 128KB (131072 bytes) for ZynqMP mini/qspi
configurations and enable CONFIG_SKIP_RELOCATE as there is no need
for relocation.

For configurations running from OCM (xilinx_zynqmp_mini_defconfig and
xilinx_zynqmp_mini_qspi_defconfig), move TEXT_BASE from 0xFFFC0000 to
0xFFFE0000. The initial 128KB of OCM (0xFFFC0000-0xFFFDFFFF) is used
for data buffer.

Memory layout in OCM (256KB total):
- 0xFFFC0000 - 0xFFFDFFFF: Data buffer (128KB)
- 0xFFFE0000 - 0xFFFFFFFF: U-Boot code + stack (128KB)
   - TEXT_BASE at 0xFFFE0000 (code grows up)
   - EARLY SP at 0xFFFE0000 (stack grows down)

EARLY SP is released when new stack location is calculated before U-Boot
prompt that's why no conflict with Data buffer location.

Signed-off-by: Michal Simek <[email protected]>
---

  configs/xilinx_zynqmp_mini_defconfig      | 5 ++++-
  configs/xilinx_zynqmp_mini_qspi_defconfig | 6 ++++--
  2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/configs/xilinx_zynqmp_mini_defconfig 
b/configs/xilinx_zynqmp_mini_defconfig
index 20e2ae0f0030..8b1d8cc0439d 100644
--- a/configs/xilinx_zynqmp_mini_defconfig
+++ b/configs/xilinx_zynqmp_mini_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini"
  CONFIG_SYS_ICACHE_OFF=y
  CONFIG_ARCH_ZYNQMP=y
-CONFIG_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFE0000
  CONFIG_SYS_MALLOC_LEN=0x1a00
  CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
  CONFIG_CUSTOM_SYS_INIT_SP_ADDR=0xfffe0000
@@ -14,7 +14,10 @@ CONFIG_SYS_MEM_RSVD_FOR_MMU=y
  # CONFIG_PSCI_RESET is not set
  CONFIG_SYS_MEMTEST_START=0x00000000
  CONFIG_SYS_MEMTEST_END=0x00001000
+CONFIG_SKIP_RELOCATE=y
  CONFIG_REMAKE_ELF=y
+CONFIG_HAS_BOARD_SIZE_LIMIT=y
+CONFIG_BOARD_SIZE_LIMIT=131072
  # CONFIG_LEGACY_IMAGE_FORMAT is not set
  # CONFIG_AUTOBOOT is not set
  CONFIG_SYS_CBSIZE=1024
diff --git a/configs/xilinx_zynqmp_mini_qspi_defconfig 
b/configs/xilinx_zynqmp_mini_qspi_defconfig
index 03366a3b05a4..9457dd0a6723 100644
--- a/configs/xilinx_zynqmp_mini_qspi_defconfig
+++ b/configs/xilinx_zynqmp_mini_qspi_defconfig
@@ -2,7 +2,7 @@ CONFIG_ARM=y
  CONFIG_SYS_CONFIG_NAME="xilinx_zynqmp_mini"
  CONFIG_SYS_ICACHE_OFF=y
  CONFIG_ARCH_ZYNQMP=y
-CONFIG_TEXT_BASE=0xFFFC0000
+CONFIG_TEXT_BASE=0xFFFE0000
  CONFIG_SYS_MALLOC_LEN=0x1b00
  CONFIG_NR_DRAM_BANKS=1
  CONFIG_HAS_CUSTOM_SYS_INIT_SP_ADDR=y
@@ -19,8 +19,10 @@ CONFIG_XILINX_MINI=y
  CONFIG_SYS_MEM_RSVD_FOR_MMU=y
  CONFIG_ZYNQMP_NO_DDR=y
  # CONFIG_PSCI_RESET is not set
-# CONFIG_EXPERT is not set
+CONFIG_SKIP_RELOCATE=y
  CONFIG_REMAKE_ELF=y
+CONFIG_HAS_BOARD_SIZE_LIMIT=y
+CONFIG_BOARD_SIZE_LIMIT=131072
  # CONFIG_LEGACY_IMAGE_FORMAT is not set
  # CONFIG_AUTOBOOT is not set
  # CONFIG_ARCH_FIXUP_FDT_MEMORY is not set
---
base-commit: 5da0b87566c20b6f429f05cad027027f4b1edc3c
branch: debian-sent3


Applied.
M

Reply via email to