[U-Boot] [PATCH 10/10] arm: dts: dra7: Add pruss and pru

Greg Leonberg greg.leonberg at sunhillo.com
Wed Jul 27 21:27:57 CEST 2022


Added the pruss subsystem to the device tree based on the device tree info
from the Linux kernel.

Signed-off-by: Greg Leonberg <greg.leonberg at sunhillo.com>
---
 arch/arm/dts/dra7.dtsi | 198 +++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 198 insertions(+)

diff --git a/arch/arm/dts/dra7.dtsi b/arch/arm/dts/dra7.dtsi
index e2e958b..5bcdb51 100644
--- a/arch/arm/dts/dra7.dtsi
+++ b/arch/arm/dts/dra7.dtsi
@@ -517,6 +517,204 @@
 			interrupt-names = "edma3_tcerrint";
 		};
 
+		pruss1: pruss at 4b200000 {
+			compatible = "ti,am5728-pruss";
+			reg = <0x0 0x80000>;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x0 0x4b200000 0x80000>;
+			dma-ranges;
+
+			pruss1_mem: memories at 0 {
+				reg = <0x0 0x2000>,
+					<0x2000 0x2000>,
+					<0x10000 0x8000>;
+				reg-names = "dram0", "dram1",
+						"shrdram2";
+			};
+
+			pruss1_cfg: cfg at 26000 {
+				compatible = "syscon";
+				reg = <0x26000 0x2000>;
+			};
+
+			pruss1_iepclk_mux: iepclk-mux {
+				#clock-cells = <0>;
+				clocks = <&dpll_gmac_m3x2_ck>,
+					<&dpll_gmac_h13x2_ck>;
+			};
+
+			pruss1_iep: iep at 2e000 {
+				compatible = "ti,am5728-icss-iep";
+				reg = <0x2e000 0x31c>;
+				clocks = <&pruss1_iepclk_mux>;
+			};
+
+			pruss1_ecap: ecap at 30000 {
+				compatible = "ti,pruss-ecap";
+				reg = <0x30000 0x60>;
+			};
+
+			pruss1_mii_rt: mii-rt at 32000 {
+				compatible = "syscon";
+				reg = <0x32000 0x58>;
+			};
+
+			pruss1_intc: interrupt-controller at 20000 {
+				compatible = "ti,pruss-intc";
+				reg = <0x20000 0x2000>;
+				interrupt-controller;
+				#interrupt-cells = <1>;
+				interrupts = <GIC_SPI 186 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 188 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 189 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 190 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 191 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 192 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 193 IRQ_TYPE_LEVEL_HIGH>;
+				interrupt-names = "host_intr0", "host_intr1",
+						"host_intr2", "host_intr3",
+						"host_intr4", "host_intr5",
+						"host_intr6", "host_intr7";
+				ti,irqs-shared = /bits/ 8 <6 7>;
+			};
+
+			pru1_0: pru1_0 at 34000 {
+				compatible = "ti,am5728-pru";
+				reg = <0x34000 0x3000>,
+					<0x22000 0x400>,
+					<0x22400 0x100>;
+				reg-names = "iram", "control", "debug";
+				firmware-name = "am57xx-pru1_0-fw";
+				interrupt-parent = <&pruss1_intc>;
+				interrupts = <16>, <17>;
+				interrupt-names = "vring", "kick";
+			};
+
+			pru1_1: pru1_1 at 38000 {
+				compatible = "ti,am5728-pru";
+				reg = <0x38000 0x3000>,
+					<0x24000 0x400>,
+					<0x24400 0x100>;
+				reg-names = "iram", "control", "debug";
+				firmware-name = "am57xx-pru1_1-fw";
+				interrupt-parent = <&pruss1_intc>;
+				interrupts = <18>, <19>;
+				interrupt-names = "vring", "kick";
+			};
+
+			pruss1_mdio: mdio at 32400 {
+				compatible = "ti,davinci_mdio";
+				#address-cells = <1>;
+				#size-cells = <0>;
+				clocks = <&dpll_gmac_h13x2_ck>;
+				clock-names = "fck";
+				bus_freq = <1000000>;
+				reg = <0x32400 0x90>;
+				status = "disabled";
+			};
+		};
+
+		pruss2: pruss at 4b280000 {
+			compatible = "ti,am5728-pruss";
+			reg = <0x0 0x80000>;
+			#address-cells = <1>;
+			#size-cells = <1>;
+			ranges = <0x0 0x4b280000 0x80000>;
+			dma-ranges;
+
+			pruss2_mem: memories at 0 {
+				reg = <0x0 0x2000>,
+					<0x2000 0x2000>,
+					<0x10000 0x8000>;
+				reg-names = "dram0", "dram1",
+						"shrdram2";
+			};
+
+			pruss2_cfg: cfg at 26000 {
+				compatible = "syscon";
+				reg = <0x26000 0x2000>;
+			};
+
+			pruss2_iepclk_mux: iepclk-mux {
+				#clock-cells = <0>;
+				clocks = <&dpll_gmac_m3x2_ck>,
+					<&dpll_gmac_h13x2_ck>;
+			};
+
+			pruss2_iep: iep at 2e000 {
+				compatible = "ti,am5728-icss-iep";
+				reg = <0x2e000 0x31c>;
+				clocks = <&pruss2_iepclk_mux>;
+			};
+
+			pruss2_ecap: ecap at 30000 {
+				compatible = "ti,pruss-ecap";
+				reg = <0x30000 0x60>;
+			};
+
+			pruss2_mii_rt: mii-rt at 32000 {
+				compatible = "syscon";
+				reg = <0x32000 0x58>;
+			};
+
+			pruss2_intc: interrupt-controller at 20000 {
+				compatible = "ti,pruss-intc";
+				reg = <0x20000 0x2000>;
+				interrupt-controller;
+				#interrupt-cells = <1>;
+				interrupts = <GIC_SPI 196 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 197 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 198 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 199 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 200 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 201 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 202 IRQ_TYPE_LEVEL_HIGH>,
+					<GIC_SPI 203 IRQ_TYPE_LEVEL_HIGH>;
+				interrupt-names = "host_intr0", "host_intr1",
+						"host_intr2", "host_intr3",
+						"host_intr4", "host_intr5",
+						"host_intr6", "host_intr7";
+				ti,irqs-shared = /bits/ 8 <6 7>;
+			};
+
+			pru2_0: pru2_0 at 34000 {
+				compatible = "ti,am5728-pru";
+				reg = <0x34000 0x3000>,
+					<0x22000 0x400>,
+					<0x22400 0x100>;
+				reg-names = "iram", "control", "debug";
+				firmware-name = "am57xx-pru2_0-fw";
+				interrupt-parent = <&pruss2_intc>;
+				interrupts = <16>, <17>;
+				interrupt-names = "vring", "kick";
+			};
+
+			pru2_1: pru2_1 at 38000 {
+				compatible = "ti,am5728-pru";
+				reg = <0x38000 0x3000>,
+					<0x24000 0x400>,
+					<0x24400 0x100>;
+				reg-names = "iram", "control", "debug";
+				firmware-name = "am57xx-pru2_1-fw";
+				interrupt-parent = <&pruss2_intc>;
+				interrupts = <18>, <19>;
+				interrupt-names = "vring", "kick";
+			};
+
+			pruss2_mdio: mdio at 32400 {
+				compatible = "ti,davinci_mdio";
+				#address-cells = <1>;
+				#size-cells = <0>;
+				clocks = <&dpll_gmac_h13x2_ck>;
+				clock-names = "fck";
+				bus_freq = <1000000>;
+				reg = <0x32400 0x90>;
+				status = "disabled";
+			};
+		};
+
 		gpio1: gpio at 4ae10000 {
 			compatible = "ti,omap4-gpio";
 			reg = <0x4ae10000 0x200>;
-- 
1.8.3.1



More information about the U-Boot mailing list