zephyr/dts/arm/xilinx/zynqmp_rpu.dtsi

111 lines
2.4 KiB
Plaintext

/*
* Copyright (c) 2019 Stephanos Ioannidis <root@stephanos.io>
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <arm/xilinx/zynqmp.dtsi>
/ {
cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-r5f";
reg = <0>;
};
};
soc {
rpu0_ipi: zynqmp-ipi@ff310000 {
status = "disabled";
compatible = "xlnx,zynqmp-ipi-mailbox";
#address-cells = <1>;
#size-cells = <1>;
reg = <0xff310000 0x10000>;
reg-names = "host_ipi_reg";
interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL
IRQ_DEFAULT_PRIORITY>;
local-ipi-id = <1>;
rpu0_apu_mailbox: mailbox@ff990200 {
remote-ipi-id = <0>;
reg = <0xff990200 0x20>,
<0xff990220 0x20>,
<0xff990040 0x20>,
<0xff990060 0x20>;
reg-names = "local_request_region",
"local_response_region",
"remote_request_region",
"remote_response_region";
};
rpu0_rpu1_mailbox: mailbox@ff990260 {
remote-ipi-id = <2>;
reg = <0xff990260 0x20>,
<0xff990280 0x20>,
<0xff990420 0x20>,
<0xff990440 0x20>;
reg-names = "local_request_region",
"local_response_region",
"remote_request_region",
"remote_response_region";
};
};
rpu1_ipi: zynqmp-ipi@ff320000 {
status = "disabled";
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,zynqmp-ipi-mailbox";
local-ipi-id = <2>;
reg = <0xff320000 0x10000>;
reg-names = "host_ipi_reg";
interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL
IRQ_DEFAULT_PRIORITY>;
rpu1_apu_mailbox: mailbox@ff990400 {
remote-ipi-id = <0>;
reg = <0xff990400 0x20>,
<0xff990420 0x20>,
<0xff990080 0x20>,
<0xff9900a0 0x20>;
reg-names = "local_request_region",
"local_response_region",
"remote_request_region",
"remote_response_region";
};
rpu1_rpu0_mailbox: mailbox@ff990420 {
remote-ipi-id = <1>;
reg = <0xff990420 0x20>,
<0xff990440 0x20>,
<0xff990260 0x20>,
<0xff990280 0x20>;
reg-names = "local_request_region",
"local_response_region",
"remote_request_region",
"remote_response_region";
};
};
interrupt-parent = <&gic>;
gic: interrupt-controller@f9000000 {
compatible = "arm,gic-v1", "arm,gic";
reg = <0xf9000000 0x1000>,
<0xf9001000 0x100>;
interrupt-controller;
#interrupt-cells = <4>;
status = "okay";
};
};
};