xref: /freebsd/sys/contrib/device-tree/src/arm/st/stm32mp15x-mecio1-io.dtsi (revision b2d2a78ad80ec68d4a17f5aef97d21686cb1e29b)
1*b2d2a78aSEmmanuel Vadot// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2*b2d2a78aSEmmanuel Vadot/*
3*b2d2a78aSEmmanuel Vadot * Copyright (C) Protonic Holland
4*b2d2a78aSEmmanuel Vadot * Author: David Jander <david@protonic.nl>
5*b2d2a78aSEmmanuel Vadot */
6*b2d2a78aSEmmanuel Vadot
7*b2d2a78aSEmmanuel Vadot#include "stm32mp15xc.dtsi"
8*b2d2a78aSEmmanuel Vadot#include "stm32mp15-pinctrl.dtsi"
9*b2d2a78aSEmmanuel Vadot#include "stm32mp15xxaa-pinctrl.dtsi"
10*b2d2a78aSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
11*b2d2a78aSEmmanuel Vadot#include <dt-bindings/input/input.h>
12*b2d2a78aSEmmanuel Vadot
13*b2d2a78aSEmmanuel Vadot/ {
14*b2d2a78aSEmmanuel Vadot	chosen {
15*b2d2a78aSEmmanuel Vadot		stdout-path = "serial0:1500000n8";
16*b2d2a78aSEmmanuel Vadot	};
17*b2d2a78aSEmmanuel Vadot
18*b2d2a78aSEmmanuel Vadot	aliases {
19*b2d2a78aSEmmanuel Vadot		serial0 = &uart4;
20*b2d2a78aSEmmanuel Vadot		ethernet0 = &ethernet0;
21*b2d2a78aSEmmanuel Vadot		spi1 = &spi1;
22*b2d2a78aSEmmanuel Vadot		spi2 = &spi2;
23*b2d2a78aSEmmanuel Vadot		spi3 = &spi3;
24*b2d2a78aSEmmanuel Vadot		spi4 = &spi4;
25*b2d2a78aSEmmanuel Vadot		spi5 = &spi5;
26*b2d2a78aSEmmanuel Vadot		spi6 = &spi6;
27*b2d2a78aSEmmanuel Vadot	};
28*b2d2a78aSEmmanuel Vadot
29*b2d2a78aSEmmanuel Vadot	memory@c0000000 {
30*b2d2a78aSEmmanuel Vadot		device_type = "memory";
31*b2d2a78aSEmmanuel Vadot		reg = <0xC0000000 0x10000000>;
32*b2d2a78aSEmmanuel Vadot	};
33*b2d2a78aSEmmanuel Vadot
34*b2d2a78aSEmmanuel Vadot	reserved-memory {
35*b2d2a78aSEmmanuel Vadot		#address-cells = <1>;
36*b2d2a78aSEmmanuel Vadot		#size-cells = <1>;
37*b2d2a78aSEmmanuel Vadot		ranges;
38*b2d2a78aSEmmanuel Vadot
39*b2d2a78aSEmmanuel Vadot		mcuram2: mcuram2@10000000 {
40*b2d2a78aSEmmanuel Vadot			compatible = "shared-dma-pool";
41*b2d2a78aSEmmanuel Vadot			reg = <0x10000000 0x40000>;
42*b2d2a78aSEmmanuel Vadot			no-map;
43*b2d2a78aSEmmanuel Vadot		};
44*b2d2a78aSEmmanuel Vadot
45*b2d2a78aSEmmanuel Vadot		vdev0vring0: vdev0vring0@10040000 {
46*b2d2a78aSEmmanuel Vadot			compatible = "shared-dma-pool";
47*b2d2a78aSEmmanuel Vadot			reg = <0x10040000 0x1000>;
48*b2d2a78aSEmmanuel Vadot			no-map;
49*b2d2a78aSEmmanuel Vadot		};
50*b2d2a78aSEmmanuel Vadot
51*b2d2a78aSEmmanuel Vadot		vdev0vring1: vdev0vring1@10041000 {
52*b2d2a78aSEmmanuel Vadot			compatible = "shared-dma-pool";
53*b2d2a78aSEmmanuel Vadot			reg = <0x10041000 0x1000>;
54*b2d2a78aSEmmanuel Vadot			no-map;
55*b2d2a78aSEmmanuel Vadot		};
56*b2d2a78aSEmmanuel Vadot
57*b2d2a78aSEmmanuel Vadot		vdev0buffer: vdev0buffer@10042000 {
58*b2d2a78aSEmmanuel Vadot			compatible = "shared-dma-pool";
59*b2d2a78aSEmmanuel Vadot			reg = <0x10042000 0x4000>;
60*b2d2a78aSEmmanuel Vadot			no-map;
61*b2d2a78aSEmmanuel Vadot		};
62*b2d2a78aSEmmanuel Vadot
63*b2d2a78aSEmmanuel Vadot		mcuram: mcuram@30000000 {
64*b2d2a78aSEmmanuel Vadot			compatible = "shared-dma-pool";
65*b2d2a78aSEmmanuel Vadot			reg = <0x30000000 0x40000>;
66*b2d2a78aSEmmanuel Vadot			no-map;
67*b2d2a78aSEmmanuel Vadot		};
68*b2d2a78aSEmmanuel Vadot
69*b2d2a78aSEmmanuel Vadot		retram: retram@38000000 {
70*b2d2a78aSEmmanuel Vadot			compatible = "shared-dma-pool";
71*b2d2a78aSEmmanuel Vadot			reg = <0x38000000 0x10000>;
72*b2d2a78aSEmmanuel Vadot			no-map;
73*b2d2a78aSEmmanuel Vadot		};
74*b2d2a78aSEmmanuel Vadot	};
75*b2d2a78aSEmmanuel Vadot
76*b2d2a78aSEmmanuel Vadot	v3v3: regulator-v3v3 {
77*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
78*b2d2a78aSEmmanuel Vadot		regulator-name = "v3v3";
79*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <3300000>;
80*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <3300000>;
81*b2d2a78aSEmmanuel Vadot	};
82*b2d2a78aSEmmanuel Vadot
83*b2d2a78aSEmmanuel Vadot	v5v: regulator-v5v {
84*b2d2a78aSEmmanuel Vadot		compatible = "regulator-fixed";
85*b2d2a78aSEmmanuel Vadot		regulator-name = "v5v";
86*b2d2a78aSEmmanuel Vadot		regulator-min-microvolt = <5000000>;
87*b2d2a78aSEmmanuel Vadot		regulator-max-microvolt = <5000000>;
88*b2d2a78aSEmmanuel Vadot		regulator-always-on;
89*b2d2a78aSEmmanuel Vadot	};
90*b2d2a78aSEmmanuel Vadot};
91*b2d2a78aSEmmanuel Vadot
92*b2d2a78aSEmmanuel Vadot&adc {
93*b2d2a78aSEmmanuel Vadot	/* ANA0, ANA1 are dedicated pins and don't need pinctrl: only in6. */
94*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&adc12_pins_mecsbc>;
95*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
96*b2d2a78aSEmmanuel Vadot	vdd-supply = <&v3v3>;
97*b2d2a78aSEmmanuel Vadot	vdda-supply = <&v3v3>;
98*b2d2a78aSEmmanuel Vadot	vref-supply = <&v3v3>;
99*b2d2a78aSEmmanuel Vadot	status = "okay";
100*b2d2a78aSEmmanuel Vadot};
101*b2d2a78aSEmmanuel Vadot
102*b2d2a78aSEmmanuel Vadot&adc1 {
103*b2d2a78aSEmmanuel Vadot	status = "okay";
104*b2d2a78aSEmmanuel Vadot
105*b2d2a78aSEmmanuel Vadot	channel@0 {
106*b2d2a78aSEmmanuel Vadot		reg = <0>;
107*b2d2a78aSEmmanuel Vadot		/* 16.5 ck_cycles sampling time */
108*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
109*b2d2a78aSEmmanuel Vadot		label = "p24v_stp";
110*b2d2a78aSEmmanuel Vadot	};
111*b2d2a78aSEmmanuel Vadot
112*b2d2a78aSEmmanuel Vadot	channel@1 {
113*b2d2a78aSEmmanuel Vadot		reg = <1>;
114*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
115*b2d2a78aSEmmanuel Vadot		label = "p24v_hpdcm";
116*b2d2a78aSEmmanuel Vadot	};
117*b2d2a78aSEmmanuel Vadot
118*b2d2a78aSEmmanuel Vadot	channel@2 {
119*b2d2a78aSEmmanuel Vadot		reg = <2>;
120*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
121*b2d2a78aSEmmanuel Vadot		label = "ain0";
122*b2d2a78aSEmmanuel Vadot	};
123*b2d2a78aSEmmanuel Vadot
124*b2d2a78aSEmmanuel Vadot	channel@3 {
125*b2d2a78aSEmmanuel Vadot		reg = <3>;
126*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
127*b2d2a78aSEmmanuel Vadot		label = "hpdcm1_i2";
128*b2d2a78aSEmmanuel Vadot	};
129*b2d2a78aSEmmanuel Vadot
130*b2d2a78aSEmmanuel Vadot	channel@5 {
131*b2d2a78aSEmmanuel Vadot		reg = <5>;
132*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
133*b2d2a78aSEmmanuel Vadot		label = "hpout1_i";
134*b2d2a78aSEmmanuel Vadot	};
135*b2d2a78aSEmmanuel Vadot
136*b2d2a78aSEmmanuel Vadot	channel@6 {
137*b2d2a78aSEmmanuel Vadot		reg = <6>;
138*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
139*b2d2a78aSEmmanuel Vadot		label = "ain1";
140*b2d2a78aSEmmanuel Vadot	};
141*b2d2a78aSEmmanuel Vadot
142*b2d2a78aSEmmanuel Vadot	channel@9 {
143*b2d2a78aSEmmanuel Vadot		reg = <9>;
144*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
145*b2d2a78aSEmmanuel Vadot		label = "hpout0_i";
146*b2d2a78aSEmmanuel Vadot	};
147*b2d2a78aSEmmanuel Vadot
148*b2d2a78aSEmmanuel Vadot	channel@10 {
149*b2d2a78aSEmmanuel Vadot		reg = <10>;
150*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
151*b2d2a78aSEmmanuel Vadot		label = "phint0_ain";
152*b2d2a78aSEmmanuel Vadot	};
153*b2d2a78aSEmmanuel Vadot
154*b2d2a78aSEmmanuel Vadot	channel@13 {
155*b2d2a78aSEmmanuel Vadot		reg = <13>;
156*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
157*b2d2a78aSEmmanuel Vadot		label = "phint1_ain";
158*b2d2a78aSEmmanuel Vadot	};
159*b2d2a78aSEmmanuel Vadot
160*b2d2a78aSEmmanuel Vadot	channel@15 {
161*b2d2a78aSEmmanuel Vadot		reg = <15>;
162*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
163*b2d2a78aSEmmanuel Vadot		label = "hpdcm0_i1";
164*b2d2a78aSEmmanuel Vadot	};
165*b2d2a78aSEmmanuel Vadot
166*b2d2a78aSEmmanuel Vadot	channel@16 {
167*b2d2a78aSEmmanuel Vadot		reg = <16>;
168*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
169*b2d2a78aSEmmanuel Vadot		label = "lsin";
170*b2d2a78aSEmmanuel Vadot	};
171*b2d2a78aSEmmanuel Vadot
172*b2d2a78aSEmmanuel Vadot	channel@18 {
173*b2d2a78aSEmmanuel Vadot		reg = <18>;
174*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
175*b2d2a78aSEmmanuel Vadot		label = "hpdcm0_i2";
176*b2d2a78aSEmmanuel Vadot	};
177*b2d2a78aSEmmanuel Vadot
178*b2d2a78aSEmmanuel Vadot	channel@19 {
179*b2d2a78aSEmmanuel Vadot		reg = <19>;
180*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
181*b2d2a78aSEmmanuel Vadot		label = "hpdcm1_i1";
182*b2d2a78aSEmmanuel Vadot	};
183*b2d2a78aSEmmanuel Vadot};
184*b2d2a78aSEmmanuel Vadot
185*b2d2a78aSEmmanuel Vadot&adc2 {
186*b2d2a78aSEmmanuel Vadot	status = "okay";
187*b2d2a78aSEmmanuel Vadot
188*b2d2a78aSEmmanuel Vadot	channel@2 {
189*b2d2a78aSEmmanuel Vadot		reg = <2>;
190*b2d2a78aSEmmanuel Vadot		/* 16.5 ck_cycles sampling time */
191*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
192*b2d2a78aSEmmanuel Vadot		label = "ain2";
193*b2d2a78aSEmmanuel Vadot	};
194*b2d2a78aSEmmanuel Vadot
195*b2d2a78aSEmmanuel Vadot	channel@6 {
196*b2d2a78aSEmmanuel Vadot		reg = <6>;
197*b2d2a78aSEmmanuel Vadot		st,min-sample-time-ns = <5000>;
198*b2d2a78aSEmmanuel Vadot		label = "ain3";
199*b2d2a78aSEmmanuel Vadot	};
200*b2d2a78aSEmmanuel Vadot};
201*b2d2a78aSEmmanuel Vadot
202*b2d2a78aSEmmanuel Vadot&ethernet0 {
203*b2d2a78aSEmmanuel Vadot	status = "okay";
204*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&ethernet0_rgmii_pins_x>;
205*b2d2a78aSEmmanuel Vadot	pinctrl-1 = <&ethernet0_rgmii_sleep_pins_x>;
206*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default", "sleep";
207*b2d2a78aSEmmanuel Vadot	phy-mode = "rgmii-id";
208*b2d2a78aSEmmanuel Vadot	max-speed = <1000>;
209*b2d2a78aSEmmanuel Vadot	phy-handle = <&phy0>;
210*b2d2a78aSEmmanuel Vadot	st,eth-clk-sel;
211*b2d2a78aSEmmanuel Vadot
212*b2d2a78aSEmmanuel Vadot	mdio {
213*b2d2a78aSEmmanuel Vadot		#address-cells = <1>;
214*b2d2a78aSEmmanuel Vadot		#size-cells = <0>;
215*b2d2a78aSEmmanuel Vadot		compatible = "snps,dwmac-mdio";
216*b2d2a78aSEmmanuel Vadot		phy0: ethernet-phy@8 {
217*b2d2a78aSEmmanuel Vadot			reg = <8>;
218*b2d2a78aSEmmanuel Vadot			interrupts-extended = <&gpiog 7 IRQ_TYPE_LEVEL_LOW>;
219*b2d2a78aSEmmanuel Vadot			reset-gpios = <&gpiog 10 GPIO_ACTIVE_LOW>;
220*b2d2a78aSEmmanuel Vadot			reset-assert-us = <10>;
221*b2d2a78aSEmmanuel Vadot			reset-deassert-us = <35>;
222*b2d2a78aSEmmanuel Vadot		};
223*b2d2a78aSEmmanuel Vadot	};
224*b2d2a78aSEmmanuel Vadot};
225*b2d2a78aSEmmanuel Vadot
226*b2d2a78aSEmmanuel Vadot&gpiod {
227*b2d2a78aSEmmanuel Vadot	gpio-line-names = "", "", "", "",
228*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
229*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
230*b2d2a78aSEmmanuel Vadot			  "STP_RESETN", "STP_ENABLEN", "HPOUT0", "HPOUT0_ALERTN";
231*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
232*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&pinctrl_hog_d_mecsbc>;
233*b2d2a78aSEmmanuel Vadot};
234*b2d2a78aSEmmanuel Vadot
235*b2d2a78aSEmmanuel Vadot&gpioe {
236*b2d2a78aSEmmanuel Vadot	gpio-line-names = "HPOUT0_RESETN", "HPOUT1", "HPOUT1_ALERTN", "",
237*b2d2a78aSEmmanuel Vadot			  "", "", "HPOUT1_RESETN",
238*b2d2a78aSEmmanuel Vadot			  "LPOUT0", "LPOUT0_ALERTN", "GPOUT0_RESETN",
239*b2d2a78aSEmmanuel Vadot			  "LPOUT1", "LPOUT1_ALERTN", "GPOUT1_RESETN",
240*b2d2a78aSEmmanuel Vadot			  "LPOUT2", "LPOUT2_ALERTN", "GPOUT2_RESETN";
241*b2d2a78aSEmmanuel Vadot};
242*b2d2a78aSEmmanuel Vadot
243*b2d2a78aSEmmanuel Vadot&gpiof {
244*b2d2a78aSEmmanuel Vadot	gpio-line-names = "LPOUT3", "LPOUT3_ALERTN", "GPOUT3_RESETN",
245*b2d2a78aSEmmanuel Vadot			  "LPOUT4", "LPOUT4_ALERTN", "GPOUT4_RESETN",
246*b2d2a78aSEmmanuel Vadot			  "", "",
247*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
248*b2d2a78aSEmmanuel Vadot			  "", "", "", "";
249*b2d2a78aSEmmanuel Vadot};
250*b2d2a78aSEmmanuel Vadot
251*b2d2a78aSEmmanuel Vadot&gpiog {
252*b2d2a78aSEmmanuel Vadot	gpio-line-names = "LPOUT5", "LPOUT5_ALERTN", "", "LPOUT5_RESETN",
253*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
254*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
255*b2d2a78aSEmmanuel Vadot			  "", "", "", "";
256*b2d2a78aSEmmanuel Vadot};
257*b2d2a78aSEmmanuel Vadot
258*b2d2a78aSEmmanuel Vadot&gpioh {
259*b2d2a78aSEmmanuel Vadot	gpio-line-names = "", "", "", "",
260*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
261*b2d2a78aSEmmanuel Vadot			  "GPIO0_RESETN", "", "", "",
262*b2d2a78aSEmmanuel Vadot			  "", "", "", "";
263*b2d2a78aSEmmanuel Vadot};
264*b2d2a78aSEmmanuel Vadot
265*b2d2a78aSEmmanuel Vadot&gpioi {
266*b2d2a78aSEmmanuel Vadot	gpio-line-names = "", "", "", "",
267*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
268*b2d2a78aSEmmanuel Vadot			  "HPDCM0_SLEEPN", "HPDCM1_SLEEPN", "GPIO1_RESETN", "",
269*b2d2a78aSEmmanuel Vadot			  "", "", "", "";
270*b2d2a78aSEmmanuel Vadot};
271*b2d2a78aSEmmanuel Vadot
272*b2d2a78aSEmmanuel Vadot&gpioj {
273*b2d2a78aSEmmanuel Vadot	gpio-line-names = "HSIN10", "HSIN11", "HSIN12", "HSIN13",
274*b2d2a78aSEmmanuel Vadot			  "HSIN14", "HSIN15", "", "",
275*b2d2a78aSEmmanuel Vadot			  "", "", "", "",
276*b2d2a78aSEmmanuel Vadot			  "", "RTD_RESETN", "", "";
277*b2d2a78aSEmmanuel Vadot};
278*b2d2a78aSEmmanuel Vadot
279*b2d2a78aSEmmanuel Vadot&gpiok {
280*b2d2a78aSEmmanuel Vadot	gpio-line-names = "", "", "HSIN0", "HSIN1",
281*b2d2a78aSEmmanuel Vadot			  "HSIN2", "HSIN3", "HSIN4", "HSIN5";
282*b2d2a78aSEmmanuel Vadot};
283*b2d2a78aSEmmanuel Vadot
284*b2d2a78aSEmmanuel Vadot&gpioz {
285*b2d2a78aSEmmanuel Vadot	gpio-line-names = "", "", "", "HSIN6",
286*b2d2a78aSEmmanuel Vadot			  "HSIN7", "HSIN8", "HSIN9", "";
287*b2d2a78aSEmmanuel Vadot};
288*b2d2a78aSEmmanuel Vadot
289*b2d2a78aSEmmanuel Vadot&i2c2 {
290*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
291*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&i2c2_pins_a>;
292*b2d2a78aSEmmanuel Vadot	pinctrl-1 = <&i2c2_sleep_pins_a>;
293*b2d2a78aSEmmanuel Vadot	status = "okay";
294*b2d2a78aSEmmanuel Vadot
295*b2d2a78aSEmmanuel Vadot	gpio0: gpio@20 {
296*b2d2a78aSEmmanuel Vadot		compatible = "ti,tca6416";
297*b2d2a78aSEmmanuel Vadot		reg = <0x20>;
298*b2d2a78aSEmmanuel Vadot		gpio-controller;
299*b2d2a78aSEmmanuel Vadot		#gpio-cells = <2>;
300*b2d2a78aSEmmanuel Vadot		gpio-line-names = "HSIN0_BIAS", "HSIN1_BIAS", "HSIN2_BIAS", "HSIN3_BIAS",
301*b2d2a78aSEmmanuel Vadot				  "", "", "HSIN_VREF0_LVL", "HSIN_VREF1_LVL",
302*b2d2a78aSEmmanuel Vadot				  "HSIN4_BIAS", "HSIN5_BIAS", "HSIN6_BIAS", "HSIN9_BIAS",
303*b2d2a78aSEmmanuel Vadot				  "", "", "", "";
304*b2d2a78aSEmmanuel Vadot	};
305*b2d2a78aSEmmanuel Vadot
306*b2d2a78aSEmmanuel Vadot	gpio1: gpio@21 {
307*b2d2a78aSEmmanuel Vadot		compatible = "ti,tca6416";
308*b2d2a78aSEmmanuel Vadot		reg = <0x21>;
309*b2d2a78aSEmmanuel Vadot		gpio-controller;
310*b2d2a78aSEmmanuel Vadot		#gpio-cells = <2>;
311*b2d2a78aSEmmanuel Vadot		gpio-line-names = "HSIN8_BIAS", "HSIN9_BIAS", "HSIN10_BIAS", "HSIN11_BIAS",
312*b2d2a78aSEmmanuel Vadot				  "", "", "HSIN_VREF2_LVL", "HSIN_VREF3_LVL",
313*b2d2a78aSEmmanuel Vadot				  "HSIN12_BIAS", "HSIN13_BIAS", "HSIN14_BIAS", "HSIN15_BIAS",
314*b2d2a78aSEmmanuel Vadot				  "", "", "LSIN8_BIAS", "LSIN9_BIAS";
315*b2d2a78aSEmmanuel Vadot	};
316*b2d2a78aSEmmanuel Vadot};
317*b2d2a78aSEmmanuel Vadot
318*b2d2a78aSEmmanuel Vadot&qspi {
319*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default", "sleep";
320*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&qspi_clk_pins_a
321*b2d2a78aSEmmanuel Vadot		     &qspi_bk1_pins_a
322*b2d2a78aSEmmanuel Vadot		     &qspi_cs1_pins_a>;
323*b2d2a78aSEmmanuel Vadot	pinctrl-1 = <&qspi_clk_sleep_pins_a
324*b2d2a78aSEmmanuel Vadot		     &qspi_bk1_sleep_pins_a
325*b2d2a78aSEmmanuel Vadot		     &qspi_cs1_sleep_pins_a>;
326*b2d2a78aSEmmanuel Vadot	status = "okay";
327*b2d2a78aSEmmanuel Vadot
328*b2d2a78aSEmmanuel Vadot	flash@0 {
329*b2d2a78aSEmmanuel Vadot		compatible = "jedec,spi-nor";
330*b2d2a78aSEmmanuel Vadot		reg = <0>;
331*b2d2a78aSEmmanuel Vadot		spi-rx-bus-width = <4>;
332*b2d2a78aSEmmanuel Vadot		spi-max-frequency = <104000000>;
333*b2d2a78aSEmmanuel Vadot		#address-cells = <1>;
334*b2d2a78aSEmmanuel Vadot		#size-cells = <1>;
335*b2d2a78aSEmmanuel Vadot	};
336*b2d2a78aSEmmanuel Vadot};
337*b2d2a78aSEmmanuel Vadot
338*b2d2a78aSEmmanuel Vadot&{qspi_bk1_pins_a/pins} {
339*b2d2a78aSEmmanuel Vadot	pinmux = <STM32_PINMUX('F', 8, AF10)>, /* QSPI_BK1_IO0 */
340*b2d2a78aSEmmanuel Vadot		 <STM32_PINMUX('F', 9, AF10)>, /* QSPI_BK1_IO1 */
341*b2d2a78aSEmmanuel Vadot		 <STM32_PINMUX('F', 7, AF9)>, /* QSPI_BK1_IO2 */
342*b2d2a78aSEmmanuel Vadot		 <STM32_PINMUX('F', 6, AF9)>; /* QSPI_BK1_IO3 */
343*b2d2a78aSEmmanuel Vadot	/delete-property/ bias-disable;
344*b2d2a78aSEmmanuel Vadot	bias-pull-up;
345*b2d2a78aSEmmanuel Vadot};
346*b2d2a78aSEmmanuel Vadot
347*b2d2a78aSEmmanuel Vadot&timers1 {
348*b2d2a78aSEmmanuel Vadot	/delete-property/dmas;
349*b2d2a78aSEmmanuel Vadot	/delete-property/dma-names;
350*b2d2a78aSEmmanuel Vadot	status = "okay";
351*b2d2a78aSEmmanuel Vadot
352*b2d2a78aSEmmanuel Vadot	hpdcm0_pwm: pwm {
353*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default", "sleep";
354*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pwm1_pins_mecio1>;
355*b2d2a78aSEmmanuel Vadot		pinctrl-1 = <&pwm1_sleep_pins_mecio1>;
356*b2d2a78aSEmmanuel Vadot		status = "okay";
357*b2d2a78aSEmmanuel Vadot	};
358*b2d2a78aSEmmanuel Vadot};
359*b2d2a78aSEmmanuel Vadot
360*b2d2a78aSEmmanuel Vadot&timers8 {
361*b2d2a78aSEmmanuel Vadot	/delete-property/dmas;
362*b2d2a78aSEmmanuel Vadot	/delete-property/dma-names;
363*b2d2a78aSEmmanuel Vadot	status = "okay";
364*b2d2a78aSEmmanuel Vadot
365*b2d2a78aSEmmanuel Vadot	hpdcm1_pwm: pwm {
366*b2d2a78aSEmmanuel Vadot		pinctrl-names = "default", "sleep";
367*b2d2a78aSEmmanuel Vadot		pinctrl-0 = <&pwm8_pins_mecio1>;
368*b2d2a78aSEmmanuel Vadot		pinctrl-1 = <&pwm8_sleep_pins_mecio1>;
369*b2d2a78aSEmmanuel Vadot		status = "okay";
370*b2d2a78aSEmmanuel Vadot	};
371*b2d2a78aSEmmanuel Vadot};
372*b2d2a78aSEmmanuel Vadot
373*b2d2a78aSEmmanuel Vadot&uart4 {
374*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default", "sleep", "idle";
375*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&uart4_pins_a>;
376*b2d2a78aSEmmanuel Vadot	pinctrl-1 = <&uart4_sleep_pins_a>;
377*b2d2a78aSEmmanuel Vadot	pinctrl-2 = <&uart4_idle_pins_a>;
378*b2d2a78aSEmmanuel Vadot	/delete-property/dmas;
379*b2d2a78aSEmmanuel Vadot	/delete-property/dma-names;
380*b2d2a78aSEmmanuel Vadot	status = "okay";
381*b2d2a78aSEmmanuel Vadot};
382*b2d2a78aSEmmanuel Vadot
383*b2d2a78aSEmmanuel Vadot&{uart4_pins_a/pins1} {
384*b2d2a78aSEmmanuel Vadot	pinmux = <STM32_PINMUX('B', 9, AF8)>; /* UART4_TX */
385*b2d2a78aSEmmanuel Vadot};
386*b2d2a78aSEmmanuel Vadot
387*b2d2a78aSEmmanuel Vadot&{uart4_pins_a/pins2} {
388*b2d2a78aSEmmanuel Vadot	pinmux = <STM32_PINMUX('B', 2, AF8)>; /* UART4_RX */
389*b2d2a78aSEmmanuel Vadot	/delete-property/ bias-disable;
390*b2d2a78aSEmmanuel Vadot	bias-pull-up;
391*b2d2a78aSEmmanuel Vadot};
392*b2d2a78aSEmmanuel Vadot
393*b2d2a78aSEmmanuel Vadot&usbotg_hs {
394*b2d2a78aSEmmanuel Vadot	dr_mode = "host";
395*b2d2a78aSEmmanuel Vadot	pinctrl-0 = <&usbotg_hs_pins_a>;
396*b2d2a78aSEmmanuel Vadot	pinctrl-names = "default";
397*b2d2a78aSEmmanuel Vadot	phys = <&usbphyc_port1 0>;
398*b2d2a78aSEmmanuel Vadot	phy-names = "usb2-phy";
399*b2d2a78aSEmmanuel Vadot	vbus-supply = <&v5v>;
400*b2d2a78aSEmmanuel Vadot	status = "okay";
401*b2d2a78aSEmmanuel Vadot};
402*b2d2a78aSEmmanuel Vadot
403*b2d2a78aSEmmanuel Vadot&usbphyc {
404*b2d2a78aSEmmanuel Vadot	status = "okay";
405*b2d2a78aSEmmanuel Vadot};
406*b2d2a78aSEmmanuel Vadot
407*b2d2a78aSEmmanuel Vadot&usbphyc_port0 {
408*b2d2a78aSEmmanuel Vadot	phy-supply = <&v3v3>;
409*b2d2a78aSEmmanuel Vadot};
410*b2d2a78aSEmmanuel Vadot
411*b2d2a78aSEmmanuel Vadot&usbphyc_port1 {
412*b2d2a78aSEmmanuel Vadot	phy-supply = <&v3v3>;
413*b2d2a78aSEmmanuel Vadot};
414*b2d2a78aSEmmanuel Vadot
415*b2d2a78aSEmmanuel Vadot&pinctrl {
416*b2d2a78aSEmmanuel Vadot	adc12_pins_mecsbc: adc12-ain-mecsbc-0 {
417*b2d2a78aSEmmanuel Vadot		pins {
418*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('F', 11, ANALOG)>, /* ADC1_INP2 */
419*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('F', 12, ANALOG)>, /* ADC1_INP6 */
420*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('F', 13, ANALOG)>, /* ADC2_INP2 */
421*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('F', 14, ANALOG)>, /* ADC2_INP6 */
422*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 0, ANALOG)>, /* ADC1_INP16 */
423*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 3, ANALOG)>, /* ADC1_INP15 */
424*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 4, ANALOG)>, /* ADC1_INP18 */
425*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 5, ANALOG)>, /* ADC1_INP19 */
426*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 6, ANALOG)>, /* ADC1_INP3 */
427*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 0, ANALOG)>, /* ADC1_INP9 */
428*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 1, ANALOG)>, /* ADC1_INP5 */
429*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 0, ANALOG)>, /* ADC1_INP10 */
430*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 3, ANALOG)>; /* ADC1_INP13 */
431*b2d2a78aSEmmanuel Vadot		};
432*b2d2a78aSEmmanuel Vadot	};
433*b2d2a78aSEmmanuel Vadot
434*b2d2a78aSEmmanuel Vadot	pinctrl_hog_d_mecsbc: hog-d-0 {
435*b2d2a78aSEmmanuel Vadot		pins {
436*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('D', 12, GPIO)>; /* STP_RESETn */
437*b2d2a78aSEmmanuel Vadot			bias-pull-up;
438*b2d2a78aSEmmanuel Vadot			drive-push-pull;
439*b2d2a78aSEmmanuel Vadot			slew-rate = <0>;
440*b2d2a78aSEmmanuel Vadot		};
441*b2d2a78aSEmmanuel Vadot	};
442*b2d2a78aSEmmanuel Vadot
443*b2d2a78aSEmmanuel Vadot	pwm1_pins_mecio1: pwm1-mecio1-0 {
444*b2d2a78aSEmmanuel Vadot		pins {
445*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('A', 8, AF1)>, /* TIM1_CH1 */
446*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 8, AF1)>; /* TIM1_CH2 */
447*b2d2a78aSEmmanuel Vadot			bias-pull-down;
448*b2d2a78aSEmmanuel Vadot			drive-push-pull;
449*b2d2a78aSEmmanuel Vadot			slew-rate = <0>;
450*b2d2a78aSEmmanuel Vadot		};
451*b2d2a78aSEmmanuel Vadot	};
452*b2d2a78aSEmmanuel Vadot
453*b2d2a78aSEmmanuel Vadot	pwm1_sleep_pins_mecio1: pwm1-sleep-mecio1-0 {
454*b2d2a78aSEmmanuel Vadot		pins {
455*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('A', 8, ANALOG)>, /* TIM1_CH1 */
456*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 8, ANALOG)>; /* TIM1_CH2 */
457*b2d2a78aSEmmanuel Vadot		};
458*b2d2a78aSEmmanuel Vadot	};
459*b2d2a78aSEmmanuel Vadot
460*b2d2a78aSEmmanuel Vadot	pwm8_pins_mecio1: pwm8-mecio1-0 {
461*b2d2a78aSEmmanuel Vadot		pins {
462*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('I', 5, AF3)>, /* TIM8_CH1 */
463*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('I', 6, AF3)>; /* TIM8_CH2 */
464*b2d2a78aSEmmanuel Vadot			bias-pull-down;
465*b2d2a78aSEmmanuel Vadot			drive-push-pull;
466*b2d2a78aSEmmanuel Vadot			slew-rate = <0>;
467*b2d2a78aSEmmanuel Vadot		};
468*b2d2a78aSEmmanuel Vadot	};
469*b2d2a78aSEmmanuel Vadot
470*b2d2a78aSEmmanuel Vadot	pwm8_sleep_pins_mecio1: pwm8-sleep-mecio1-0 {
471*b2d2a78aSEmmanuel Vadot		pins {
472*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('I', 5, ANALOG)>, /* TIM8_CH1 */
473*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('I', 6, ANALOG)>; /* TIM8_CH2 */
474*b2d2a78aSEmmanuel Vadot		};
475*b2d2a78aSEmmanuel Vadot	};
476*b2d2a78aSEmmanuel Vadot
477*b2d2a78aSEmmanuel Vadot	ethernet0_rgmii_pins_x: rgmii-0 {
478*b2d2a78aSEmmanuel Vadot		pins1 {
479*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('G', 5, AF11)>, /* ETH_RGMII_CLK125 */
480*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('G', 4, AF11)>, /* ETH_RGMII_GTX_CLK */
481*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 12, AF11)>, /* ETH_RGMII_TXD0 */
482*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 13, AF11)>, /* ETH_RGMII_TXD1 */
483*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 2, AF11)>, /* ETH_RGMII_TXD2 */
484*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 8, AF11)>, /* ETH_RGMII_TXD3 */
485*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 11, AF11)>, /* ETH_RGMII_TX_CTL */
486*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 1, AF11)>; /* ETH_MDC */
487*b2d2a78aSEmmanuel Vadot			bias-disable;
488*b2d2a78aSEmmanuel Vadot			drive-push-pull;
489*b2d2a78aSEmmanuel Vadot			slew-rate = <3>;
490*b2d2a78aSEmmanuel Vadot		};
491*b2d2a78aSEmmanuel Vadot		pins2 {
492*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('A', 2, AF11)>; /* ETH_MDIO */
493*b2d2a78aSEmmanuel Vadot			bias-disable;
494*b2d2a78aSEmmanuel Vadot			drive-push-pull;
495*b2d2a78aSEmmanuel Vadot			slew-rate = <0>;
496*b2d2a78aSEmmanuel Vadot		};
497*b2d2a78aSEmmanuel Vadot		pins3 {
498*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH_RGMII_RXD0 */
499*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 5, AF11)>, /* ETH_RGMII_RXD1 */
500*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('H', 6, AF11)>, /* ETH_RGMII_RXD2 */
501*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('H', 7, AF11)>, /* ETH_RGMII_RXD3 */
502*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 1, AF11)>, /* ETH_RGMII_RX_CLK */
503*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 7, AF11)>; /* ETH_RGMII_RX_CTL */
504*b2d2a78aSEmmanuel Vadot			bias-disable;
505*b2d2a78aSEmmanuel Vadot		};
506*b2d2a78aSEmmanuel Vadot	};
507*b2d2a78aSEmmanuel Vadot
508*b2d2a78aSEmmanuel Vadot	ethernet0_rgmii_sleep_pins_x: rgmii-sleep-0 {
509*b2d2a78aSEmmanuel Vadot		pins1 {
510*b2d2a78aSEmmanuel Vadot			pinmux = <STM32_PINMUX('G', 5, ANALOG)>, /* ETH_RGMII_CLK125 */
511*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('G', 4, ANALOG)>, /* ETH_RGMII_GTX_CLK */
512*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 12, ANALOG)>, /* ETH_RGMII_TXD0 */
513*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 13, ANALOG)>, /* ETH_RGMII_TXD1 */
514*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 2, ANALOG)>, /* ETH_RGMII_TXD2 */
515*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 8, ANALOG)>, /* ETH_RGMII_TXD3 */
516*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('B', 11, ANALOG)>, /* ETH_RGMII_TX_CTL */
517*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 2, ANALOG)>, /* ETH_MDIO */
518*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 1, ANALOG)>, /* ETH_MDC */
519*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 4, ANALOG)>, /* ETH_RGMII_RXD0 */
520*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('C', 5, ANALOG)>, /* ETH_RGMII_RXD1 */
521*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('H', 6, ANALOG)>, /* ETH_RGMII_RXD2 */
522*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('H', 7, ANALOG)>, /* ETH_RGMII_RXD3 */
523*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 1, ANALOG)>, /* ETH_RGMII_RX_CLK */
524*b2d2a78aSEmmanuel Vadot				 <STM32_PINMUX('A', 7, ANALOG)>; /* ETH_RGMII_RX_CTL */
525*b2d2a78aSEmmanuel Vadot		};
526*b2d2a78aSEmmanuel Vadot	};
527*b2d2a78aSEmmanuel Vadot};
528