~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/arch/arm/boot/dts/st/stm32mp151c-mect1s.dts

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
  2 /*
  3  * Copyright (C) Protonic Holland
  4  * Author: David Jander <david@protonic.nl>
  5  */
  6 /dts-v1/;
  7 
  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>
 15 
 16 / {
 17         model = "Protonic MECT1S";
 18         compatible = "prt,mect1s", "st,stm32mp151";
 19 
 20         chosen {
 21                 stdout-path = "serial0:1500000n8";
 22         };
 23 
 24         aliases {
 25                 serial0 = &uart4;
 26                 ethernet0 = &ethernet0;
 27                 ethernet1 = &ethernet1;
 28                 ethernet2 = &ethernet2;
 29                 ethernet3 = &ethernet3;
 30                 ethernet4 = &ethernet4;
 31         };
 32 
 33         v3v3: regulator-v3v3 {
 34                 compatible = "regulator-fixed";
 35                 regulator-name = "v3v3";
 36                 regulator-min-microvolt = <3300000>;
 37                 regulator-max-microvolt = <3300000>;
 38         };
 39 
 40         v5v: regulator-v5v {
 41                 compatible = "regulator-fixed";
 42                 regulator-name = "v5v";
 43                 regulator-min-microvolt = <5000000>;
 44                 regulator-max-microvolt = <5000000>;
 45                 regulator-always-on;
 46         };
 47 
 48         led {
 49                 compatible = "gpio-leds";
 50 
 51                 led-0 {
 52                         color = <LED_COLOR_ID_RED>;
 53                         function = LED_FUNCTION_DEBUG;
 54                         gpios = <&gpioa 13 GPIO_ACTIVE_LOW>;
 55                 };
 56 
 57                 led-1 {
 58                         color = <LED_COLOR_ID_GREEN>;
 59                         function = LED_FUNCTION_DEBUG;
 60                         gpios = <&gpioa 14 GPIO_ACTIVE_LOW>;
 61                         linux,default-trigger = "heartbeat";
 62                 };
 63         };
 64 };
 65 
 66 &clk_hse {
 67         clock-frequency = <24000000>;
 68 };
 69 
 70 &clk_lse {
 71         status = "disabled";
 72 };
 73 
 74 &ethernet0 {
 75         status = "okay";
 76         pinctrl-0 = <&ethernet0_rmii_pins_a>;
 77         pinctrl-1 = <&ethernet0_rmii_sleep_pins_a>;
 78         pinctrl-names = "default", "sleep";
 79         phy-mode = "rmii";
 80         max-speed = <100>;
 81         st,eth-clk-sel;
 82 
 83         fixed-link {
 84                 speed = <100>;
 85                 full-duplex;
 86         };
 87 
 88         mdio0: mdio {
 89                  #address-cells = <1>;
 90                  #size-cells = <0>;
 91                  compatible = "snps,dwmac-mdio";
 92         };
 93 };
 94 
 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 */
101 };
102 
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 */
108 };
109 
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 */
118 };
119 
120 &mdio0 {
121         /* All this DP83TG720R PHYs can't be probed before switch@0 is
122          * probed so we need to use compatible with PHYid
123          */
124         /* TI DP83TG720R */
125         t1_phy0: ethernet-phy@8 {
126                 compatible = "ethernet-phy-id2000.a284";
127                 reg = <8>;
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>;
132         };
133 
134         /* TI DP83TG720R */
135         t1_phy1: ethernet-phy@c {
136                 compatible = "ethernet-phy-id2000.a284";
137                 reg = <12>;
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>;
142         };
143 
144         /* TI DP83TG720R */
145         t1_phy2: ethernet-phy@4 {
146                 compatible = "ethernet-phy-id2000.a284";
147                 reg = <4>;
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>;
152         };
153 
154         /* TI DP83TG720R */
155         t1_phy3: ethernet-phy@d {
156                 compatible = "ethernet-phy-id2000.a284";
157                 reg = <13>;
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>;
162         };
163 };
164 
165 &qspi {
166         pinctrl-names = "default", "sleep";
167         pinctrl-0 = <&qspi_clk_pins_a
168                      &qspi_bk1_pins_a
169                      &qspi_cs1_pins_a>;
170         pinctrl-1 = <&qspi_clk_sleep_pins_a
171                      &qspi_bk1_sleep_pins_a
172                      &qspi_cs1_sleep_pins_a>;
173         status = "okay";
174 
175         flash@0 {
176                 compatible = "jedec,spi-nor";
177                 reg = <0>;
178                 spi-rx-bus-width = <4>;
179                 spi-max-frequency = <1000000>;
180                 #address-cells = <1>;
181                 #size-cells = <1>;
182         };
183 };
184 
185 &{qspi_bk1_pins_a/pins} {
186         /delete-property/ bias-disable;
187         bias-pull-up;
188         drive-push-pull;
189         slew-rate = <1>;
190 };
191 
192 &spi2 {
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;
198         status = "okay";
199 
200         switch@0 {
201                 compatible = "nxp,sja1105q";
202                 reg = <0>;
203                 spi-max-frequency = <1000000>;
204                 spi-rx-delay-us = <1>;
205                 spi-tx-delay-us = <1>;
206                 spi-cpha;
207 
208                 ports {
209                         #address-cells = <1>;
210                         #size-cells = <0>;
211 
212                         ethernet1: port@0 {
213                                 reg = <0>;
214                                 label = "t10";
215                                 phy-mode = "rgmii-id";
216                                 phy-handle = <&t1_phy0>;
217                         };
218 
219                         ethernet2: port@1 {
220                                 reg = <1>;
221                                 label = "t11";
222                                 phy-mode = "rgmii-id";
223                                 phy-handle = <&t1_phy1>;
224                         };
225 
226                         ethernet3: port@2 {
227                                 reg = <2>;
228                                 label = "t12";
229                                 phy-mode = "rgmii-id";
230                                 phy-handle = <&t1_phy2>;
231                         };
232 
233                         ethernet4: port@3 {
234                                 reg = <3>;
235                                 label = "t13";
236                                 phy-mode = "rgmii-id";
237                                 phy-handle = <&t1_phy3>;
238                         };
239 
240                         port@4 {
241                                 reg = <4>;
242                                 label = "cpu";
243                                 ethernet = <&ethernet0>;
244                                 phy-mode = "rmii";
245 
246                                 /* RGMII mode is not working properly, using RMII instead. */
247                                 fixed-link {
248                                         speed = <100>;
249                                         full-duplex;
250                                 };
251                         };
252                 };
253         };
254 };
255 
256 &uart4 {
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;
263         status = "okay";
264 };
265 
266 &usbh_ehci {
267         status = "okay";
268 };
269 
270 &usbotg_hs {
271         dr_mode = "host";
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>;
277         status = "okay";
278 };
279 
280 &usbphyc {
281         status = "okay";
282 };
283 
284 &usbphyc_port0 {
285         phy-supply = <&v3v3>;
286 };
287 
288 &usbphyc_port1 {
289         phy-supply = <&v3v3>;
290 };

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php