diff --git a/boards/arm/qemu_cortex_r5/Kconfig.board b/boards/arm/qemu_cortex_r5/Kconfig.board index 0dae3d153c8..8e89de5ad8e 100644 --- a/boards/arm/qemu_cortex_r5/Kconfig.board +++ b/boards/arm/qemu_cortex_r5/Kconfig.board @@ -3,4 +3,4 @@ config BOARD_QEMU_CORTEX_R5 bool "Cortex-R5 Emulation (QEMU)" - depends on SOC_XILINX_ZYNQMP + depends on SOC_XILINX_ZYNQMP_RPU diff --git a/boards/arm/qemu_cortex_r5/qemu_cortex_r5_defconfig b/boards/arm/qemu_cortex_r5/qemu_cortex_r5_defconfig index 6033c3c99e6..288b0f5f083 100644 --- a/boards/arm/qemu_cortex_r5/qemu_cortex_r5_defconfig +++ b/boards/arm/qemu_cortex_r5/qemu_cortex_r5_defconfig @@ -1,5 +1,5 @@ CONFIG_ARM=y -CONFIG_SOC_XILINX_ZYNQMP=y +CONFIG_SOC_XILINX_ZYNQMP_RPU=y CONFIG_BOARD_QEMU_CORTEX_R5=y CONFIG_XIP=n diff --git a/soc/arm/xilinx_zynqmp/Kconfig b/soc/arm/xilinx_zynqmp/Kconfig new file mode 100644 index 00000000000..7c72b2d5046 --- /dev/null +++ b/soc/arm/xilinx_zynqmp/Kconfig @@ -0,0 +1,5 @@ +# Copyright (c) 2019 Stephanos Ioannidis +# SPDX-License-Identifier: Apache-2.0 + +config SOC_XILINX_ZYNQMP + bool diff --git a/soc/arm/xilinx_zynqmp/Kconfig.defconfig b/soc/arm/xilinx_zynqmp/Kconfig.defconfig index 5bdb7e0d074..75c0ff5c879 100644 --- a/soc/arm/xilinx_zynqmp/Kconfig.defconfig +++ b/soc/arm/xilinx_zynqmp/Kconfig.defconfig @@ -1,4 +1,5 @@ # Copyright (c) 2019 Lexmark International, Inc. +# Copyright (c) 2019 Stephanos Ioannidis # SPDX-License-Identifier: Apache-2.0 if SOC_XILINX_ZYNQMP @@ -6,6 +7,8 @@ if SOC_XILINX_ZYNQMP config SOC default "xilinx_zynqmp" +if SOC_XILINX_ZYNQMP_RPU + config NUM_IRQS # must be >= the highest interrupt number used # - include the UART interrupts @@ -23,6 +26,8 @@ config NUM_2ND_LEVEL_AGGREGATORS config SYS_CLOCK_HW_CYCLES_PER_SEC default 12000000 +endif # SOC_XILINX_ZYNQMP_RPU + # Workaround for not being able to have commas in macro arguments DT_CHOSEN_Z_FLASH := zephyr,flash @@ -32,4 +37,4 @@ config FLASH_SIZE config FLASH_BASE_ADDRESS default $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_FLASH)) -endif +endif # SOC_XILINX_ZYNQMP diff --git a/soc/arm/xilinx_zynqmp/Kconfig.soc b/soc/arm/xilinx_zynqmp/Kconfig.soc index 9ce2180fac7..90b43e63642 100644 --- a/soc/arm/xilinx_zynqmp/Kconfig.soc +++ b/soc/arm/xilinx_zynqmp/Kconfig.soc @@ -1,9 +1,11 @@ # Copyright (c) 2019 Lexmark International, Inc. +# Copyright (c) 2019 Stephanos Ioannidis # SPDX-License-Identifier: Apache-2.0 -config SOC_XILINX_ZYNQMP - bool "Xilinx ZynqMP" +config SOC_XILINX_ZYNQMP_RPU + bool "Xilinx ZynqMP RPU" select CPU_CORTEX_R5 + select SOC_XILINX_ZYNQMP select GIC_V1 select MULTI_LEVEL_INTERRUPTS select 2ND_LEVEL_INTERRUPTS diff --git a/soc/arm/xilinx_zynqmp/linker.ld b/soc/arm/xilinx_zynqmp/linker.ld index bbf4673b6de..c8e3aaa7bc0 100644 --- a/soc/arm/xilinx_zynqmp/linker.ld +++ b/soc/arm/xilinx_zynqmp/linker.ld @@ -1,8 +1,12 @@ /* * Copyright (c) 2019 Lexmark International, Inc. + * Copyright (c) 2019 Stephanos Ioannidis * * SPDX-License-Identifier: Apache-2.0 - * */ +#include + +#if defined(CONFIG_SOC_XILINX_ZYNQMP_RPU) #include +#endif