1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
3 * Copyright (C) Protonic Holland
8 #include "stm32mp151.dtsi"
9 #include "stm32mp15xc.dtsi"
10 #include "stm32mp15-pinctrl.dtsi"
11 #include "stm32mp15xxaa-pinctrl.dtsi"
12 #include <dt-bindings/gpio/gpio.h>
13 #include <dt-bindings/input/input.h>
14 #include <dt-bindings/leds/common.h>
17 model = "Protonic MECT1S";
18 compatible = "prt,mect1s", "st,stm32mp151";
21 stdout-path = "serial0:1500000n8";
26 ethernet0 = ðernet0;
27 ethernet1 = ðernet1;
28 ethernet2 = ðernet2;
29 ethernet3 = ðernet3;
30 ethernet4 = ðernet4;
33 v3v3: regulator-v3v3 {
34 compatible = "regulator-fixed";
35 regulator-name = "v3v3";
36 regulator-min-microvolt = <3300000>;
37 regulator-max-microvolt = <3300000>;
41 compatible = "regulator-fixed";
42 regulator-name = "v5v";
43 regulator-min-microvolt = <5000000>;
44 regulator-max-microvolt = <5000000>;
49 compatible = "gpio-leds";
52 color = <LED_COLOR_ID_RED>;
53 function = LED_FUNCTION_DEBUG;
54 gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
58 color = <LED_COLOR_ID_GREEN>;
59 function = LED_FUNCTION_DEBUG;
60 gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
61 linux,default-trigger = "heartbeat";
67 clock-frequency = <24000000>;
76 pinctrl-0 = <ðernet0_rmii_pins_a>;
77 pinctrl-1 = <ðernet0_rmii_sleep_pins_a>;
78 pinctrl-names = "default", "sleep";
91 compatible = "snps,dwmac-mdio";
95 &{ethernet0_rmii_pins_a/pins1} {
96 pinmux = <STM32_PINMUX('B', 12, AF11)>, /* ETH1_RMII_TXD0 */
97 <STM32_PINMUX('B', 13, AF11)>, /* ETH1_RMII_TXD1 */
98 <STM32_PINMUX('B', 11, AF11)>, /* ETH1_RMII_TX_EN */
99 <STM32_PINMUX('A', 2, AF11)>, /* ETH1_MDIO */
100 <STM32_PINMUX('C', 1, AF11)>; /* ETH1_MDC */
103 &{ethernet0_rmii_pins_a/pins2} {
104 pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH1_RMII_RXD0 */
105 <STM32_PINMUX('C', 5, AF11)>, /* ETH1_RMII_RXD1 */
106 <STM32_PINMUX('A', 1, AF11)>, /* ETH1_RMII_REF_CLK input */
107 <STM32_PINMUX('A', 7, AF11)>; /* ETH1_RMII_CRS_DV */
110 &{ethernet0_rmii_sleep_pins_a/pins1} {
111 pinmux = <STM32_PINMUX('B', 12, ANALOG)>, /* ETH1_RMII_TXD0 */
112 <STM32_PINMUX('B', 13, ANALOG)>, /* ETH1_RMII_TXD1 */
113 <STM32_PINMUX('B', 11, ANALOG)>, /* ETH1_RMII_TX_EN */
114 <STM32_PINMUX('C', 4, ANALOG)>, /* ETH1_RMII_RXD0 */
115 <STM32_PINMUX('C', 5, ANALOG)>, /* ETH1_RMII_RXD1 */
116 <STM32_PINMUX('A', 1, ANALOG)>, /* ETH1_RMII_REF_CLK */
117 <STM32_PINMUX('A', 7, ANALOG)>; /* ETH1_RMII_CRS_DV */
121 /* All this DP83TG720R PHYs can't be probed before switch@0 is
122 * probed so we need to use compatible with PHYid
125 t1_phy0: ethernet-phy@8 {
126 compatible = "ethernet-phy-id2000.a284";
128 interrupts-extended = <&gpioi 5 IRQ_TYPE_LEVEL_LOW>;
129 reset-gpios = <&gpioh 13 GPIO_ACTIVE_LOW>;
130 reset-assert-us = <10>;
131 reset-deassert-us = <35>;
135 t1_phy1: ethernet-phy@c {
136 compatible = "ethernet-phy-id2000.a284";
138 interrupts-extended = <&gpioj 0 IRQ_TYPE_LEVEL_LOW>;
139 reset-gpios = <&gpioh 14 GPIO_ACTIVE_LOW>;
140 reset-assert-us = <10>;
141 reset-deassert-us = <35>;
145 t1_phy2: ethernet-phy@4 {
146 compatible = "ethernet-phy-id2000.a284";
148 interrupts-extended = <&gpioi 7 IRQ_TYPE_LEVEL_LOW>;
149 reset-gpios = <&gpioh 15 GPIO_ACTIVE_LOW>;
150 reset-assert-us = <10>;
151 reset-deassert-us = <35>;
155 t1_phy3: ethernet-phy@d {
156 compatible = "ethernet-phy-id2000.a284";
158 interrupts-extended = <&gpioi 15 IRQ_TYPE_LEVEL_LOW>;
159 reset-gpios = <&gpioi 13 GPIO_ACTIVE_LOW>;
160 reset-assert-us = <10000>;
161 reset-deassert-us = <1000>;
166 pinctrl-names = "default", "sleep";
167 pinctrl-0 = <&qspi_clk_pins_a
170 pinctrl-1 = <&qspi_clk_sleep_pins_a
171 &qspi_bk1_sleep_pins_a
172 &qspi_cs1_sleep_pins_a>;
176 compatible = "jedec,spi-nor";
178 spi-rx-bus-width = <4>;
179 spi-max-frequency = <1000000>;
180 #address-cells = <1>;
185 &{qspi_bk1_pins_a/pins} {
186 /delete-property/ bias-disable;
193 pinctrl-0 = <&spi2_pins_b>;
194 pinctrl-names = "default";
195 cs-gpios = <&gpioj 3 GPIO_ACTIVE_LOW>;
196 /delete-property/dmas;
197 /delete-property/dma-names;
201 compatible = "nxp,sja1105q";
203 spi-max-frequency = <1000000>;
204 spi-rx-delay-us = <1>;
205 spi-tx-delay-us = <1>;
209 #address-cells = <1>;
215 phy-mode = "rgmii-id";
216 phy-handle = <&t1_phy0>;
222 phy-mode = "rgmii-id";
223 phy-handle = <&t1_phy1>;
229 phy-mode = "rgmii-id";
230 phy-handle = <&t1_phy2>;
236 phy-mode = "rgmii-id";
237 phy-handle = <&t1_phy3>;
243 ethernet = <ðernet0>;
246 /* RGMII mode is not working properly, using RMII instead. */
257 pinctrl-names = "default", "sleep", "idle";
258 pinctrl-0 = <&uart4_pins_a>;
259 pinctrl-1 = <&uart4_sleep_pins_a>;
260 pinctrl-2 = <&uart4_idle_pins_a>;
261 /delete-property/dmas;
262 /delete-property/dma-names;
272 pinctrl-0 = <&usbotg_hs_pins_a>;
273 pinctrl-names = "default";
274 phys = <&usbphyc_port1 0>;
275 phy-names = "usb2-phy";
276 vbus-supply = <&v5v>;
285 phy-supply = <&v3v3>;
289 phy-supply = <&v3v3>;