mirror of
				git://git.openwrt.org/openwrt/openwrt.git
				synced 2025-11-03 22:44:27 -05:00 
			
		
		
		
	New stm32 target introduces support for stm32mp1 based devices. For now it includes an initial support of the STM32MP135F-DK device. The specifications bellow only list supported features. Specifications -------------- SOC: STM32MP135FAF7 RAM: 512 MiB Storage: SD Card Ethernet: 2x 100 Mbps Wireless: 2.4GHz Cypress CYW43455 (802.11b/g/n) LEDs: Heartbeat (Blue) Buttons: 1x Reset, 1x User (USER2) USB: 4x 2.0 Type-A Signed-off-by: Thomas Richard <thomas.richard@bootlin.com> Link: https://github.com/openwrt/openwrt/pull/16716 Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
		
			
				
	
	
		
			127 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			127 lines
		
	
	
		
			4.4 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
From b1468a44e0c0f43a06e027efeff4183b3aee0cf7 Mon Sep 17 00:00:00 2001
 | 
						|
From: Christophe Roullier <christophe.roullier@foss.st.com>
 | 
						|
Date: Mon, 10 Jun 2024 10:03:08 +0200
 | 
						|
Subject: [PATCH 3/5] ARM: dts: stm32: add ethernet1/2 RMII pins for
 | 
						|
 STM32MP13F-DK board
 | 
						|
 | 
						|
Those pins are used for Ethernet 1 and 2 on STM32MP13F-DK board.
 | 
						|
ethernet1: RMII with crystal.
 | 
						|
ethernet2: RMII without crystal.
 | 
						|
Add analog gpio pin configuration ("sleep") to manage power mode on
 | 
						|
stm32mp13.
 | 
						|
 | 
						|
Signed-off-by: Christophe Roullier <christophe.roullier@foss.st.com>
 | 
						|
Reviewed-by: Marek Vasut <marex@denx.de>
 | 
						|
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>
 | 
						|
---
 | 
						|
 arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi | 98 +++++++++++++++++++++
 | 
						|
 1 file changed, 98 insertions(+)
 | 
						|
 | 
						|
--- a/arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi
 | 
						|
+++ b/arch/arm/boot/dts/st/stm32mp13-pinctrl.dtsi
 | 
						|
@@ -13,6 +13,104 @@
 | 
						|
 		};
 | 
						|
 	};
 | 
						|
 
 | 
						|
+	eth1_rgmii_pins_a: eth1-rgmii-0 {
 | 
						|
+		pins1 {
 | 
						|
+			pinmux = <STM32_PINMUX('G', 13, AF11)>, /* ETH_RGMII_TXD0 */
 | 
						|
+				 <STM32_PINMUX('G', 14, AF11)>, /* ETH_RGMII_TXD1 */
 | 
						|
+				 <STM32_PINMUX('C', 2, AF11)>, /* ETH_RGMII_TXD2 */
 | 
						|
+				 <STM32_PINMUX('E', 5, AF10)>, /* ETH_RGMII_TXD3 */
 | 
						|
+				 <STM32_PINMUX('B', 11, AF11)>, /* ETH_RGMII_TX_CTL */
 | 
						|
+				 <STM32_PINMUX('C', 1, AF11)>, /* ETH_RGMII_GTX_CLK */
 | 
						|
+				 <STM32_PINMUX('A', 2, AF11)>, /* ETH_MDIO */
 | 
						|
+				 <STM32_PINMUX('G', 2, AF11)>; /* ETH_MDC */
 | 
						|
+			bias-disable;
 | 
						|
+			drive-push-pull;
 | 
						|
+			slew-rate = <2>;
 | 
						|
+		};
 | 
						|
+
 | 
						|
+		pins2 {
 | 
						|
+			pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH_RGMII_RXD0 */
 | 
						|
+				 <STM32_PINMUX('C', 5, AF11)>, /* ETH_RGMII_RXD1 */
 | 
						|
+				 <STM32_PINMUX('B', 0, AF11)>, /* ETH_RGMII_RXD2 */
 | 
						|
+				 <STM32_PINMUX('B', 1, AF11)>, /* ETH_RGMII_RXD3 */
 | 
						|
+				 <STM32_PINMUX('A', 7, AF11)>, /* ETH_RGMII_RX_CTL */
 | 
						|
+				 <STM32_PINMUX('D', 7, AF10)>; /* ETH_RGMII_RX_CLK */
 | 
						|
+			bias-disable;
 | 
						|
+		};
 | 
						|
+
 | 
						|
+	};
 | 
						|
+
 | 
						|
+	eth1_rmii_pins_a: eth1-rmii-0 {
 | 
						|
+		pins1 {
 | 
						|
+			pinmux = <STM32_PINMUX('G', 13, AF11)>, /* ETH_RMII_TXD0 */
 | 
						|
+				 <STM32_PINMUX('G', 14, AF11)>, /* ETH_RMII_TXD1 */
 | 
						|
+				 <STM32_PINMUX('B', 11, AF11)>, /* ETH_RMII_TX_EN */
 | 
						|
+				 <STM32_PINMUX('A', 1, AF11)>, /* ETH_RMII_REF_CLK */
 | 
						|
+				 <STM32_PINMUX('A', 2, AF11)>, /* ETH_MDIO */
 | 
						|
+				 <STM32_PINMUX('G', 2, AF11)>; /* ETH_MDC */
 | 
						|
+			bias-disable;
 | 
						|
+			drive-push-pull;
 | 
						|
+			slew-rate = <1>;
 | 
						|
+		};
 | 
						|
+
 | 
						|
+		pins2 {
 | 
						|
+			pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH_RMII_RXD0 */
 | 
						|
+				 <STM32_PINMUX('C', 5, AF11)>, /* ETH_RMII_RXD1 */
 | 
						|
+				 <STM32_PINMUX('C', 1, AF10)>; /* ETH_RMII_CRS_DV */
 | 
						|
+			bias-disable;
 | 
						|
+		};
 | 
						|
+
 | 
						|
+	};
 | 
						|
+
 | 
						|
+	eth1_rmii_sleep_pins_a: eth1-rmii-sleep-0 {
 | 
						|
+		pins1 {
 | 
						|
+			pinmux = <STM32_PINMUX('G', 13, ANALOG)>, /* ETH_RMII_TXD0 */
 | 
						|
+				 <STM32_PINMUX('G', 14, ANALOG)>, /* ETH_RMII_TXD1 */
 | 
						|
+				 <STM32_PINMUX('B', 11, ANALOG)>, /* ETH_RMII_TX_EN */
 | 
						|
+				 <STM32_PINMUX('A', 1, ANALOG)>, /* ETH_RMII_REF_CLK */
 | 
						|
+				 <STM32_PINMUX('A', 2, ANALOG)>, /* ETH_MDIO */
 | 
						|
+				 <STM32_PINMUX('G', 2, ANALOG)>, /* ETH_MDC */
 | 
						|
+				 <STM32_PINMUX('C', 4, ANALOG)>, /* ETH_RMII_RXD0 */
 | 
						|
+				 <STM32_PINMUX('C', 5, ANALOG)>, /* ETH_RMII_RXD1 */
 | 
						|
+				 <STM32_PINMUX('C', 1, ANALOG)>; /* ETH_RMII_CRS_DV */
 | 
						|
+		};
 | 
						|
+	};
 | 
						|
+
 | 
						|
+	eth2_rmii_pins_a: eth2-rmii-0 {
 | 
						|
+		pins1 {
 | 
						|
+			pinmux = <STM32_PINMUX('F', 7, AF11)>, /* ETH_RMII_TXD0 */
 | 
						|
+				 <STM32_PINMUX('G', 11, AF10)>, /* ETH_RMII_TXD1 */
 | 
						|
+				 <STM32_PINMUX('G', 8, AF13)>, /* ETH_RMII_ETHCK */
 | 
						|
+				 <STM32_PINMUX('F', 6, AF11)>, /* ETH_RMII_TX_EN */
 | 
						|
+				 <STM32_PINMUX('B', 2, AF11)>, /* ETH_MDIO */
 | 
						|
+				 <STM32_PINMUX('G', 5, AF10)>; /* ETH_MDC */
 | 
						|
+			bias-disable;
 | 
						|
+			drive-push-pull;
 | 
						|
+			slew-rate = <1>;
 | 
						|
+		};
 | 
						|
+
 | 
						|
+		pins2 {
 | 
						|
+			pinmux = <STM32_PINMUX('F', 4, AF11)>, /* ETH_RMII_RXD0 */
 | 
						|
+				 <STM32_PINMUX('E', 2, AF10)>, /* ETH_RMII_RXD1 */
 | 
						|
+				 <STM32_PINMUX('A', 12, AF11)>; /* ETH_RMII_CRS_DV */
 | 
						|
+			bias-disable;
 | 
						|
+		};
 | 
						|
+	};
 | 
						|
+
 | 
						|
+	eth2_rmii_sleep_pins_a: eth2-rmii-sleep-0 {
 | 
						|
+		pins1 {
 | 
						|
+			pinmux = <STM32_PINMUX('F', 7, ANALOG)>, /* ETH_RMII_TXD0 */
 | 
						|
+				 <STM32_PINMUX('G', 11, ANALOG)>, /* ETH_RMII_TXD1 */
 | 
						|
+				 <STM32_PINMUX('G', 8, ANALOG)>, /* ETH_RMII_ETHCK */
 | 
						|
+				 <STM32_PINMUX('F', 6, ANALOG)>, /* ETH_RMII_TX_EN */
 | 
						|
+				 <STM32_PINMUX('B', 2, ANALOG)>, /* ETH_MDIO */
 | 
						|
+				 <STM32_PINMUX('G', 5, ANALOG)>, /* ETH_MDC */
 | 
						|
+				 <STM32_PINMUX('F', 4, ANALOG)>, /* ETH_RMII_RXD0 */
 | 
						|
+				 <STM32_PINMUX('E', 2, ANALOG)>, /* ETH_RMII_RXD1 */
 | 
						|
+				 <STM32_PINMUX('A', 12, ANALOG)>; /* ETH_RMII_CRS_DV */
 | 
						|
+		};
 | 
						|
+	};
 | 
						|
+
 | 
						|
 	i2c1_pins_a: i2c1-0 {
 | 
						|
 		pins {
 | 
						|
 			pinmux = <STM32_PINMUX('D', 12, AF5)>, /* I2C1_SCL */
 |