From 38f0b05b9975b9599d368f2c465ca2719f349a97 Mon Sep 17 00:00:00 2001 From: Stephanos Ioannidis Date: Thu, 31 Oct 2019 22:50:21 +0900 Subject: [PATCH] dts: xilinx_zynqmp: Fix incorrect RPU device tree specification. This commit fixes the following problems with the RPU device tree: 1. The core type of the RPU of ZynqMP SoC is Cortex-R5F, not Cortex-R4. 2. RPU and APU use different interrupt controllers (PL390 GICv1 and GIC-400 GICv2, respectively) mapped to the same CPU local bus address region but with different offsets for the distributor and CPU interrupt control register sets. The GIC address mapping specified by the current dts is that of an APU and does not apply to the PL390 GICv1 of an RPU (refer to the "Zynq UltraScale+ Devices Register Reference" document from Xilinx for more information). For more details, refer to the issue #20217. Signed-off-by: Stephanos Ioannidis --- dts/arm/xilinx/zynqmp_rpu.dtsi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/dts/arm/xilinx/zynqmp_rpu.dtsi b/dts/arm/xilinx/zynqmp_rpu.dtsi index 7fa3ad31bc4..fae677e2e99 100644 --- a/dts/arm/xilinx/zynqmp_rpu.dtsi +++ b/dts/arm/xilinx/zynqmp_rpu.dtsi @@ -13,7 +13,7 @@ cpu@0 { device_type = "cpu"; - compatible = "arm,cortex-r4"; + compatible = "arm,cortex-r5f"; reg = <0>; }; }; @@ -21,10 +21,10 @@ soc { interrupt-parent = <&gic>; - gic: interrupt-controller@f9010000 { + gic: interrupt-controller@f9000000 { compatible = "arm,gic"; - reg = <0xf9010000 0x1000>, - <0xf9020000 0x100>; + reg = <0xf9000000 0x1000>, + <0xf9001000 0x100>; interrupt-controller; #interrupt-cells = <4>; label = "GIC";