arm64: xilinx: Never touch DDR if system has no DDR
authorMichal Simek <michal.simek@xilinx.com>
Thu, 19 Mar 2020 09:23:56 +0000 (10:23 +0100)
committerMichal Simek <michal.simek@xilinx.com>
Mon, 6 Apr 2020 10:52:45 +0000 (12:52 +0200)
If DDR is not mapped do not touch it. Default
XILINX_OF_BOARD_DTB_ADDR is pointing to DDR.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
board/xilinx/common/board.c

index f87e2e91059e3f82c36ea68a3cfb68b87451fefa..e83c692f2174101e634b29364b679730d067ddb7 100644 (file)
@@ -41,12 +41,16 @@ int zynq_board_read_rom_ethaddr(unsigned char *ethaddr)
 #if defined(CONFIG_OF_BOARD) || defined(CONFIG_OF_SEPARATE)
 void *board_fdt_blob_setup(void)
 {
-       static void *fdt_blob = (void *)CONFIG_XILINX_OF_BOARD_DTB_ADDR;
+       static void *fdt_blob;
+
+#if !defined(CONFIG_VERSAL_NO_DDR) && !defined(CONFIG_ZYNQMP_NO_DDR)
+       fdt_blob = (void *)CONFIG_XILINX_OF_BOARD_DTB_ADDR;
 
        if (fdt_magic(fdt_blob) == FDT_MAGIC)
                return fdt_blob;
 
        debug("DTB is not passed via %p\n", fdt_blob);
+#endif
 
 #ifdef CONFIG_SPL_BUILD
        /* FDT is at end of BSS unless it is in a different memory region */