* [PATCH] arm: dts: ti: Add device tree nodes for PRU-ICSS1 instance on AM571x
@ 2026-07-23 10:17 Parvathi Pudi
2026-08-17 7:59 ` MD Danish Anwar
0 siblings, 1 reply; 2+ messages in thread
From: Parvathi Pudi @ 2026-07-23 10:17 UTC (permalink / raw)
To: nm, vigneshr, afd, aaro.koskinen, andreas, khilman, rogerq, tony,
robh, krzk+dt, conor+dt, richardcochran
Cc: linux-omap, devicetree, linux-kernel, netdev, danishanwar,
pratheesh, j-rameshbabu, praneeth, srk, rogerq, krishna, mohan,
pmohan, basharath, parvathi, Murali Karicheri
From: Roger Quadros <rogerq@ti.com>
The TI Sitara AM571x device has two PRU-ICSS subsystems: PRU-ICSS1 and
PRU-ICSS2. DUAL-MAC Ethernet support is already available on PRU-ICSS2.
This patch adds device tree support to enable DUAL-MAC mode on PRU-ICSS1
for the AM571x IDK board.
Each PRU-ICSS contains two PRU cores and several peripherals, including
the Interrupt Controller, IEP, MII_RT, MDIO, and eCAP. This patch also adds
the IEP and eCAP child nodes for PRU-ICSS1, making its layout consistent
with PRU-ICSS2.
am57-pruss.dtsi: Adds the IEP and eCAP child nodes for PRU-ICSS1.
am571x-idk.dts: Adds the PRU-ICSS1 DUAL-MAC Ethernet node, enables the
PRU-ICSS1 MDIO bus, adds the two external PHYs, and configures the required
pin multiplexing and interrupts.
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Andrew F. Davis <afd@ti.com>
Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
Signed-off-by: Parvathi Pudi <parvathi@couthit.com>
---
arch/arm/boot/dts/ti/omap/am57-pruss.dtsi | 11 ++++
arch/arm/boot/dts/ti/omap/am571x-idk.dts | 65 ++++++++++++++++++++++-
2 files changed, 75 insertions(+), 1 deletion(-)
diff --git a/arch/arm/boot/dts/ti/omap/am57-pruss.dtsi b/arch/arm/boot/dts/ti/omap/am57-pruss.dtsi
index f73316625608..1579f284cb6e 100644
--- a/arch/arm/boot/dts/ti/omap/am57-pruss.dtsi
+++ b/arch/arm/boot/dts/ti/omap/am57-pruss.dtsi
@@ -61,6 +61,17 @@ pruss1_iepclk_mux: iepclk-mux@30 {
};
};
+ pruss1_iep: iep@2e000 {
+ compatible = "ti,am5728-icss-iep";
+ reg = <0x2e000 0x31c>;
+ clocks = <&pruss1_iepclk_mux>;
+ };
+
+ pruss1_ecap: ecap@30000 {
+ compatible = "ti,pruss-ecap";
+ reg = <0x30000 0x60>;
+ };
+
pruss1_mii_rt: mii-rt@32000 {
compatible = "ti,pruss-mii", "syscon";
reg = <0x32000 0x58>;
diff --git a/arch/arm/boot/dts/ti/omap/am571x-idk.dts b/arch/arm/boot/dts/ti/omap/am571x-idk.dts
index 02653b440585..e74c154b1940 100644
--- a/arch/arm/boot/dts/ti/omap/am571x-idk.dts
+++ b/arch/arm/boot/dts/ti/omap/am571x-idk.dts
@@ -165,6 +165,53 @@ blue3-led {
default-state = "off";
};
};
+
+ /* Dual mac ethernet application node on icss1 */
+ pruss1-eth {
+ compatible = "ti,am57-prueth";
+ ti,prus = <&pru1_0>, <&pru1_1>;
+ ti,pruss-gp-mux-sel = <0>, /* GP, default */
+ <4>; /* MII2, for PRUSS1_MII1 */
+ sram = <&ocmcram1>;
+ ti,mii-rt = <&pruss1_mii_rt>;
+ ti,iep = <&pruss1_iep>;
+ ti,ecap = <&pruss1_ecap>;
+ interrupts = <20 2 2>, <21 3 3>;
+ interrupt-names = "rx_hp", "rx_lp";
+ interrupt-parent = <&pruss1_intc>;
+
+ ethernet-ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+ pruss1_emac0: ethernet-port@0 {
+ reg = <0>;
+ phy-handle = <&pruss1_eth0_phy>;
+ phy-mode = "mii";
+ interrupts = <20 2 2>, <26 6 6>, <23 6 6>;
+ interrupt-names = "rx", "emac_ptp_tx",
+ "hsr_ptp_tx";
+ /* Filled in by bootloader */
+ local-mac-address = [00 00 00 00 00 00];
+ };
+
+ pruss1_emac1: ethernet-port@1 {
+ reg = <1>;
+ phy-handle = <&pruss1_eth1_phy>;
+ phy-mode = "mii";
+ interrupts = <21 3 3>, <27 9 7>, <24 9 7>;
+ interrupt-names = "rx", "emac_ptp_tx",
+ "hsr_ptp_tx";
+ /* Filled in by bootloader */
+ local-mac-address = [00 00 00 00 00 00];
+ };
+ };
+ };
+};
+
+&pruss1_iep {
+ interrupt-parent = <&pruss1_intc>;
+ interrupts = <7 7 8>;
+ interrupt-names = "iep_cap_cmp";
};
&extcon_usb2 {
@@ -210,7 +257,23 @@ &mmc2 {
};
&pruss1_mdio {
- status = "disabled";
+ status = "okay";
+ reset-gpios = <&gpio5 8 GPIO_ACTIVE_LOW>;
+ reset-delay-us = <2>; /* PHY datasheet states 1uS min */
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ pruss1_eth0_phy: ethernet-phy@0 {
+ reg = <0>;
+ interrupt-parent = <&gpio3>;
+ interrupts = <28 IRQ_TYPE_LEVEL_LOW>;
+ };
+
+ pruss1_eth1_phy: ethernet-phy@1 {
+ reg = <1>;
+ interrupt-parent = <&gpio3>;
+ interrupts = <29 IRQ_TYPE_LEVEL_LOW>;
+ };
};
&pruss2_mdio {
--
2.43.0
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH] arm: dts: ti: Add device tree nodes for PRU-ICSS1 instance on AM571x
2026-07-23 10:17 [PATCH] arm: dts: ti: Add device tree nodes for PRU-ICSS1 instance on AM571x Parvathi Pudi
@ 2026-08-17 7:59 ` MD Danish Anwar
0 siblings, 0 replies; 2+ messages in thread
From: MD Danish Anwar @ 2026-08-17 7:59 UTC (permalink / raw)
To: Parvathi Pudi, nm, vigneshr, afd, aaro.koskinen, andreas, khilman,
rogerq, tony, robh, krzk+dt, conor+dt, richardcochran
Cc: linux-omap, devicetree, linux-kernel, netdev, pratheesh,
j-rameshbabu, praneeth, srk, rogerq, krishna, mohan, pmohan,
basharath, Murali Karicheri
On 23/07/26 3:47 pm, Parvathi Pudi wrote:
> From: Roger Quadros <rogerq@ti.com>
>
> The TI Sitara AM571x device has two PRU-ICSS subsystems: PRU-ICSS1 and
> PRU-ICSS2. DUAL-MAC Ethernet support is already available on PRU-ICSS2.
> This patch adds device tree support to enable DUAL-MAC mode on PRU-ICSS1
> for the AM571x IDK board.
>
> Each PRU-ICSS contains two PRU cores and several peripherals, including
> the Interrupt Controller, IEP, MII_RT, MDIO, and eCAP. This patch also adds
> the IEP and eCAP child nodes for PRU-ICSS1, making its layout consistent
> with PRU-ICSS2.
>
> am57-pruss.dtsi: Adds the IEP and eCAP child nodes for PRU-ICSS1.
>
> am571x-idk.dts: Adds the PRU-ICSS1 DUAL-MAC Ethernet node, enables the
> PRU-ICSS1 MDIO bus, adds the two external PHYs, and configures the required
> pin multiplexing and interrupts.
>
> Signed-off-by: Roger Quadros <rogerq@ti.com>
> Signed-off-by: Andrew F. Davis <afd@ti.com>
> Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
> Signed-off-by: Parvathi Pudi <parvathi@couthit.com>
Reviewed-by: MD Danish Anwar <danishanwar@ti.com>
--
Thanks and Regards,
Danish
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-08-17 8:02 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-23 10:17 [PATCH] arm: dts: ti: Add device tree nodes for PRU-ICSS1 instance on AM571x Parvathi Pudi
2026-08-17 7:59 ` MD Danish Anwar
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox