[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250502122423.weyvgng4s4zcjdxh@document>
Date: Fri, 2 May 2025 07:24:23 -0500
From: Nishanth Menon <nm@...com>
To: Judith Mendez <jm@...com>
CC: Vignesh Raghavendra <vigneshr@...com>, Tero Kristo <kristo@...nel.org>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
<linux-arm-kernel@...ts.infradead.org>, <devicetree@...r.kernel.org>,
<linux-kernel@...r.kernel.org>, Hari Nagalla
<hnagalla@...com>,
Beleswar Padhi <b-padhi@...com>
Subject: Re: [PATCH v2] arm64: dts: ti: k3-am62-main: Add PRUSS-M node
On 09:43-20250430, Judith Mendez wrote:
> From: Kishon Vijay Abraham I <kishon@...com>
>
> Add the DT node for the PRUSS-M processor subsystem that is present
> on the K3 AM62x SoCs. The K3 AM62x family of SoC has one PRUSS-M
> instance and it has two Programmable Real-Time Units (PRU0 and PRU1).
>
> Signed-off-by: Kishon Vijay Abraham I <kishon@...com>
> [ Judith: Fix pruss_iclk id for pruss_coreclk_mux ]
> Signed-off-by: Judith Mendez <jm@...com>
> ---
> Changelog:
> - drop internal tags
> - rebase against ti-k3-dts-next
> - fix header
>
> Link to v1:
> https://lore.kernel.org/linux-devicetree/20250108222048.818835-1-jm@ti.com/
> ---
> arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 90 ++++++++++++++++++++++++
> 1 file changed, 90 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
> index 7d355aa73ea2..ee53e663b5bd 100644
> --- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
> @@ -1079,6 +1079,96 @@ dphy0: phy@...10000 {
> status = "disabled";
> };
>
> + pruss: pruss@...40000 {
> + compatible = "ti,am625-pruss";
> + reg = <0x00 0x30040000 0x00 0x80000>;
> + power-domains = <&k3_pds 81 TI_SCI_PD_EXCLUSIVE>;
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0x0 0x00 0x30040000 0x80000>;
Should this not be default disabled? pruss needs pinmux to operate
correctly, right?
> +
> + pruss_mem: memories@0 {
> + reg = <0x0 0x2000>,
> + <0x2000 0x2000>,
> + <0x10000 0x10000>;
> + reg-names = "dram0", "dram1", "shrdram2";
> + };
> +
> + pruss_cfg: cfg@...00 {
> + compatible = "ti,pruss-cfg", "syscon";
> + reg = <0x26000 0x200>;
> + #address-cells = <1>;
> + #size-cells = <1>;
> + ranges = <0x0 0x26000 0x2000>;
> +
> + clocks {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + pruss_coreclk_mux: coreclk-mux@3c {
> + reg = <0x3c>;
> + #clock-cells = <0>;
> + clocks = <&k3_clks 81 0>, /* pruss_core_clk */
> + <&k3_clks 81 14>; /* pruss_iclk */
> + assigned-clocks = <&pruss_coreclk_mux>;
> + assigned-clock-parents = <&k3_clks 81 14>;
> + };
> +
> + pruss_iepclk_mux: iepclk-mux@30 {
> + reg = <0x30>;
> + #clock-cells = <0>;
> + clocks = <&k3_clks 81 3>, /* pruss_iep_clk */
> + <&pruss_coreclk_mux>; /* pruss_coreclk_mux */
> + assigned-clocks = <&pruss_iepclk_mux>;
> + assigned-clock-parents = <&pruss_coreclk_mux>;
> + };
> + };
> + };
> +
> + pruss_intc: interrupt-controller@...00 {
> + compatible = "ti,pruss-intc";
> + reg = <0x20000 0x2000>;
> + interrupt-controller;
> + #interrupt-cells = <3>;
> + interrupts = <GIC_SPI 88 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 90 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 91 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 92 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 93 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 95 IRQ_TYPE_LEVEL_HIGH>;
> + interrupt-names = "host_intr0", "host_intr1",
> + "host_intr2", "host_intr3",
> + "host_intr4", "host_intr5",
> + "host_intr6", "host_intr7";
> + };
> +
> + pru0: pru@...00 {
> + compatible = "ti,am625-pru";
> + reg = <0x34000 0x3000>,
> + <0x22000 0x100>,
> + <0x22400 0x100>;
> + reg-names = "iram", "control", "debug";
> + firmware-name = "am62x-pru0-fw";
> + interrupt-parent = <&pruss_intc>;
> + interrupts = <16 2 2>;
> + interrupt-names = "vring";
> + };
> +
> + pru1: pru@...00 {
> + compatible = "ti,am625-pru";
> + reg = <0x38000 0x3000>,
> + <0x24000 0x100>,
> + <0x24400 0x100>;
> + reg-names = "iram", "control", "debug";
> + firmware-name = "am62x-pru1-fw";
> + interrupt-parent = <&pruss_intc>;
> + interrupts = <18 3 3>;
> + interrupt-names = "vring";
> + };
> + };
> +
> gpmc0: memory-controller@...00000 {
> compatible = "ti,am64-gpmc";
> power-domains = <&k3_pds 80 TI_SCI_PD_EXCLUSIVE>;
> --
> 2.49.0
>
>
--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D
Powered by blists - more mailing lists