From fec657bebd77d789a7f9708b79f95225a9c4eeef Mon Sep 17 00:00:00 2001 From: Ibai Erkiaga Date: Wed, 2 Oct 2019 15:57:36 +0100 Subject: [PATCH] arm64: versal: Move common board dtb search Move the exisiting function of getting board dtb from versal to a common Xilinx folder. Signed-off-by: Ibai Erkiaga Signed-off-by: Michal Simek --- arch/arm/mach-versal/Kconfig | 5 ----- arch/arm/mach-versal/cpu.c | 14 -------------- board/xilinx/Kconfig | 7 +++++++ board/xilinx/common/board.c | 14 ++++++++++++++ board/xilinx/versal/Makefile | 1 + 5 files changed, 22 insertions(+), 19 deletions(-) diff --git a/arch/arm/mach-versal/Kconfig b/arch/arm/mach-versal/Kconfig index 06a03529246..a08e5ae4149 100644 --- a/arch/arm/mach-versal/Kconfig +++ b/arch/arm/mach-versal/Kconfig @@ -36,11 +36,6 @@ config COUNTER_FREQUENCY config ZYNQ_SDHCI_MAX_FREQ default 200000000 -config VERSAL_OF_BOARD_DTB_ADDR - hex - default 0x1000 - depends on OF_BOARD - config IOU_SWITCH_DIVISOR0 hex "IOU switch divisor0" default 0x20 diff --git a/arch/arm/mach-versal/cpu.c b/arch/arm/mach-versal/cpu.c index db962258274..49f1e51c8ea 100644 --- a/arch/arm/mach-versal/cpu.c +++ b/arch/arm/mach-versal/cpu.c @@ -108,20 +108,6 @@ int reserve_mmu(void) } #endif -#if defined(CONFIG_OF_BOARD) -void *board_fdt_blob_setup(void) -{ - static void *fw_dtb = (void *)CONFIG_VERSAL_OF_BOARD_DTB_ADDR; - - if (fdt_magic(fw_dtb) != FDT_MAGIC) { - printf("DTB is not passed via %llx\n", (u64)fw_dtb); - return NULL; - } - - return fw_dtb; -} -#endif - int versal_pm_request(u32 api_id, u32 arg0, u32 arg1, u32 arg2, u32 arg3, u32 *ret_payload) { diff --git a/board/xilinx/Kconfig b/board/xilinx/Kconfig index 37bec5fae29..4f290339a09 100644 --- a/board/xilinx/Kconfig +++ b/board/xilinx/Kconfig @@ -39,3 +39,10 @@ config XILINX_PS_INIT_FILE before the build. endif + +config VERSAL_OF_BOARD_DTB_ADDR + hex + default 0x1000 + depends on OF_BOARD + help + Offset in the memory where the board configuration DTB is placed. diff --git a/board/xilinx/common/board.c b/board/xilinx/common/board.c index 7e6340bad6d..f66973bc66c 100644 --- a/board/xilinx/common/board.c +++ b/board/xilinx/common/board.c @@ -36,3 +36,17 @@ int zynq_board_read_rom_ethaddr(unsigned char *ethaddr) return ret; } + +#if defined(CONFIG_OF_BOARD) +void *board_fdt_blob_setup(void) +{ + static void *fw_dtb = (void *)CONFIG_VERSAL_OF_BOARD_DTB_ADDR; + + if (fdt_magic(fw_dtb) != FDT_MAGIC) { + printf("DTB is not passed via %p\n", fw_dtb); + return NULL; + } + + return fw_dtb; +} +#endif diff --git a/board/xilinx/versal/Makefile b/board/xilinx/versal/Makefile index 2b812765ee2..e9307d7fa69 100644 --- a/board/xilinx/versal/Makefile +++ b/board/xilinx/versal/Makefile @@ -5,3 +5,4 @@ # obj-y := board.o +obj-y += ../common/board.o