rockchip: dts: tinker: migrate the dm-pre-reloc tag into -u-boot dts
[oweals/u-boot.git] / arch / arm / dts / stm32mp157-pinctrl.dtsi
1 // SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2 /*
3  * Copyright (C) STMicroelectronics 2017 - All Rights Reserved
4  * Author: Ludovic Barre <ludovic.barre@st.com> for STMicroelectronics.
5  */
6 #include <dt-bindings/pinctrl/stm32-pinfunc.h>
7
8 / {
9         soc {
10                 pinctrl: pin-controller@50002000 {
11                         #address-cells = <1>;
12                         #size-cells = <1>;
13                         compatible = "st,stm32mp157-pinctrl";
14                         ranges = <0 0x50002000 0xa400>;
15                         interrupt-parent = <&exti>;
16                         st,syscfg = <&exti 0x60 0xff>;
17                         pins-are-numbered;
18
19                         gpioa: gpio@50002000 {
20                                 gpio-controller;
21                                 #gpio-cells = <2>;
22                                 interrupt-controller;
23                                 #interrupt-cells = <2>;
24                                 reg = <0x0 0x400>;
25                                 clocks = <&rcc GPIOA>;
26                                 st,bank-name = "GPIOA";
27                                 ngpios = <16>;
28                                 gpio-ranges = <&pinctrl 0 0 16>;
29                         };
30
31                         gpiob: gpio@50003000 {
32                                 gpio-controller;
33                                 #gpio-cells = <2>;
34                                 interrupt-controller;
35                                 #interrupt-cells = <2>;
36                                 reg = <0x1000 0x400>;
37                                 clocks = <&rcc GPIOB>;
38                                 st,bank-name = "GPIOB";
39                                 ngpios = <16>;
40                                 gpio-ranges = <&pinctrl 0 16 16>;
41                         };
42
43                         gpioc: gpio@50004000 {
44                                 gpio-controller;
45                                 #gpio-cells = <2>;
46                                 interrupt-controller;
47                                 #interrupt-cells = <2>;
48                                 reg = <0x2000 0x400>;
49                                 clocks = <&rcc GPIOC>;
50                                 st,bank-name = "GPIOC";
51                                 ngpios = <16>;
52                                 gpio-ranges = <&pinctrl 0 32 16>;
53                         };
54
55                         gpiod: gpio@50005000 {
56                                 gpio-controller;
57                                 #gpio-cells = <2>;
58                                 interrupt-controller;
59                                 #interrupt-cells = <2>;
60                                 reg = <0x3000 0x400>;
61                                 clocks = <&rcc GPIOD>;
62                                 st,bank-name = "GPIOD";
63                                 ngpios = <16>;
64                                 gpio-ranges = <&pinctrl 0 48 16>;
65                         };
66
67                         gpioe: gpio@50006000 {
68                                 gpio-controller;
69                                 #gpio-cells = <2>;
70                                 interrupt-controller;
71                                 #interrupt-cells = <2>;
72                                 reg = <0x4000 0x400>;
73                                 clocks = <&rcc GPIOE>;
74                                 st,bank-name = "GPIOE";
75                                 ngpios = <16>;
76                                 gpio-ranges = <&pinctrl 0 64 16>;
77                         };
78
79                         gpiof: gpio@50007000 {
80                                 gpio-controller;
81                                 #gpio-cells = <2>;
82                                 interrupt-controller;
83                                 #interrupt-cells = <2>;
84                                 reg = <0x5000 0x400>;
85                                 clocks = <&rcc GPIOF>;
86                                 st,bank-name = "GPIOF";
87                                 ngpios = <16>;
88                                 gpio-ranges = <&pinctrl 0 80 16>;
89                         };
90
91                         gpiog: gpio@50008000 {
92                                 gpio-controller;
93                                 #gpio-cells = <2>;
94                                 interrupt-controller;
95                                 #interrupt-cells = <2>;
96                                 reg = <0x6000 0x400>;
97                                 clocks = <&rcc GPIOG>;
98                                 st,bank-name = "GPIOG";
99                                 ngpios = <16>;
100                                 gpio-ranges = <&pinctrl 0 96 16>;
101                         };
102
103                         gpioh: gpio@50009000 {
104                                 gpio-controller;
105                                 #gpio-cells = <2>;
106                                 interrupt-controller;
107                                 #interrupt-cells = <2>;
108                                 reg = <0x7000 0x400>;
109                                 clocks = <&rcc GPIOH>;
110                                 st,bank-name = "GPIOH";
111                                 ngpios = <16>;
112                                 gpio-ranges = <&pinctrl 0 112 16>;
113                         };
114
115                         gpioi: gpio@5000a000 {
116                                 gpio-controller;
117                                 #gpio-cells = <2>;
118                                 interrupt-controller;
119                                 #interrupt-cells = <2>;
120                                 reg = <0x8000 0x400>;
121                                 clocks = <&rcc GPIOI>;
122                                 st,bank-name = "GPIOI";
123                                 ngpios = <16>;
124                                 gpio-ranges = <&pinctrl 0 128 16>;
125                         };
126
127                         gpioj: gpio@5000b000 {
128                                 gpio-controller;
129                                 #gpio-cells = <2>;
130                                 interrupt-controller;
131                                 #interrupt-cells = <2>;
132                                 reg = <0x9000 0x400>;
133                                 clocks = <&rcc GPIOJ>;
134                                 st,bank-name = "GPIOJ";
135                                 ngpios = <16>;
136                                 gpio-ranges = <&pinctrl 0 144 16>;
137                         };
138
139                         gpiok: gpio@5000c000 {
140                                 gpio-controller;
141                                 #gpio-cells = <2>;
142                                 interrupt-controller;
143                                 #interrupt-cells = <2>;
144                                 reg = <0xa000 0x400>;
145                                 clocks = <&rcc GPIOK>;
146                                 st,bank-name = "GPIOK";
147                                 ngpios = <8>;
148                                 gpio-ranges = <&pinctrl 0 160 8>;
149                         };
150
151                         adc12_usb_pwr_pins_a: adc12-usb-pwr-pins-0 {
152                                 pins {
153                                         pinmux = <STM32_PINMUX('A', 4, ANALOG)>, /* ADC12 in18 */
154                                                  <STM32_PINMUX('A', 5, ANALOG)>; /* ADC12 in19 */
155                                 };
156                         };
157
158                         cec_pins_a: cec-0 {
159                                 pins {
160                                         pinmux = <STM32_PINMUX('A', 15, AF4)>;
161                                         bias-disable;
162                                         drive-open-drain;
163                                         slew-rate = <0>;
164                                 };
165                         };
166
167                         ethernet0_rgmii_pins_a: rgmii-0 {
168                                 pins1 {
169                                         pinmux = <STM32_PINMUX('G', 5, AF11)>, /* ETH_RGMII_CLK125 */
170                                                  <STM32_PINMUX('G', 4, AF11)>, /* ETH_RGMII_GTX_CLK */
171                                                  <STM32_PINMUX('G', 13, AF11)>, /* ETH_RGMII_TXD0 */
172                                                  <STM32_PINMUX('G', 14, AF11)>, /* ETH_RGMII_TXD1 */
173                                                  <STM32_PINMUX('C', 2, AF11)>, /* ETH_RGMII_TXD2 */
174                                                  <STM32_PINMUX('E', 2, AF11)>, /* ETH_RGMII_TXD3 */
175                                                  <STM32_PINMUX('B', 11, AF11)>, /* ETH_RGMII_TX_CTL */
176                                                  <STM32_PINMUX('C', 1, AF11)>; /* ETH_MDC */
177                                         bias-disable;
178                                         drive-push-pull;
179                                         slew-rate = <2>;
180                                 };
181                                 pins2 {
182                                         pinmux = <STM32_PINMUX('A', 2, AF11)>; /* ETH_MDIO */
183                                         bias-disable;
184                                         drive-push-pull;
185                                         slew-rate = <0>;
186                                 };
187                                 pins3 {
188                                         pinmux = <STM32_PINMUX('C', 4, AF11)>, /* ETH_RGMII_RXD0 */
189                                                  <STM32_PINMUX('C', 5, AF11)>, /* ETH_RGMII_RXD1 */
190                                                  <STM32_PINMUX('B', 0, AF11)>, /* ETH_RGMII_RXD2 */
191                                                  <STM32_PINMUX('B', 1, AF11)>, /* ETH_RGMII_RXD3 */
192                                                  <STM32_PINMUX('A', 1, AF11)>, /* ETH_RGMII_RX_CLK */
193                                                  <STM32_PINMUX('A', 7, AF11)>; /* ETH_RGMII_RX_CTL */
194                                         bias-disable;
195                                 };
196                         };
197
198                         ethernet0_rgmii_pins_sleep_a: rgmii-sleep-0 {
199                                 pins1 {
200                                         pinmux = <STM32_PINMUX('G', 5, ANALOG)>, /* ETH_RGMII_CLK125 */
201                                                  <STM32_PINMUX('G', 4, ANALOG)>, /* ETH_RGMII_GTX_CLK */
202                                                  <STM32_PINMUX('G', 13, ANALOG)>, /* ETH_RGMII_TXD0 */
203                                                  <STM32_PINMUX('G', 14, ANALOG)>, /* ETH_RGMII_TXD1 */
204                                                  <STM32_PINMUX('C', 2, ANALOG)>, /* ETH_RGMII_TXD2 */
205                                                  <STM32_PINMUX('E', 2, ANALOG)>, /* ETH_RGMII_TXD3 */
206                                                  <STM32_PINMUX('B', 11, ANALOG)>, /* ETH_RGMII_TX_CTL */
207                                                  <STM32_PINMUX('A', 2, ANALOG)>, /* ETH_MDIO */
208                                                  <STM32_PINMUX('C', 1, ANALOG)>, /* ETH_MDC */
209                                                  <STM32_PINMUX('C', 4, ANALOG)>, /* ETH_RGMII_RXD0 */
210                                                  <STM32_PINMUX('C', 5, ANALOG)>, /* ETH_RGMII_RXD1 */
211                                                  <STM32_PINMUX('B', 0, ANALOG)>, /* ETH_RGMII_RXD2 */
212                                                  <STM32_PINMUX('B', 1, ANALOG)>, /* ETH_RGMII_RXD3 */
213                                                  <STM32_PINMUX('A', 1, ANALOG)>, /* ETH_RGMII_RX_CLK */
214                                                  <STM32_PINMUX('A', 7, ANALOG)>; /* ETH_RGMII_RX_CTL */
215                                 };
216                         };
217
218                         fmc_pins_a: fmc-0 {
219                                 pins1 {
220                                         pinmux = <STM32_PINMUX('D', 4, AF12)>, /* FMC_NOE */
221                                                  <STM32_PINMUX('D', 5, AF12)>, /* FMC_NWE */
222                                                  <STM32_PINMUX('D', 11, AF12)>, /* FMC_A16_FMC_CLE */
223                                                  <STM32_PINMUX('D', 12, AF12)>, /* FMC_A17_FMC_ALE */
224                                                  <STM32_PINMUX('D', 14, AF12)>, /* FMC_D0 */
225                                                  <STM32_PINMUX('D', 15, AF12)>, /* FMC_D1 */
226                                                  <STM32_PINMUX('D', 0, AF12)>, /* FMC_D2 */
227                                                  <STM32_PINMUX('D', 1, AF12)>, /* FMC_D3 */
228                                                  <STM32_PINMUX('E', 7, AF12)>, /* FMC_D4 */
229                                                  <STM32_PINMUX('E', 8, AF12)>, /* FMC_D5 */
230                                                  <STM32_PINMUX('E', 9, AF12)>, /* FMC_D6 */
231                                                  <STM32_PINMUX('E', 10, AF12)>, /* FMC_D7 */
232                                                  <STM32_PINMUX('G', 9, AF12)>; /* FMC_NE2_FMC_NCE */
233                                         bias-disable;
234                                         drive-push-pull;
235                                         slew-rate = <1>;
236                                 };
237                                 pins2 {
238                                         pinmux = <STM32_PINMUX('D', 6, AF12)>; /* FMC_NWAIT */
239                                         bias-pull-up;
240                                 };
241                         };
242
243                         fmc_sleep_pins_a: fmc-sleep-0 {
244                                 pins {
245                                         pinmux = <STM32_PINMUX('D', 4, ANALOG)>, /* FMC_NOE */
246                                                  <STM32_PINMUX('D', 5, ANALOG)>, /* FMC_NWE */
247                                                  <STM32_PINMUX('D', 11, ANALOG)>, /* FMC_A16_FMC_CLE */
248                                                  <STM32_PINMUX('D', 12, ANALOG)>, /* FMC_A17_FMC_ALE */
249                                                  <STM32_PINMUX('D', 14, ANALOG)>, /* FMC_D0 */
250                                                  <STM32_PINMUX('D', 15, ANALOG)>, /* FMC_D1 */
251                                                  <STM32_PINMUX('D', 0, ANALOG)>, /* FMC_D2 */
252                                                  <STM32_PINMUX('D', 1, ANALOG)>, /* FMC_D3 */
253                                                  <STM32_PINMUX('E', 7, ANALOG)>, /* FMC_D4 */
254                                                  <STM32_PINMUX('E', 8, ANALOG)>, /* FMC_D5 */
255                                                  <STM32_PINMUX('E', 9, ANALOG)>, /* FMC_D6 */
256                                                  <STM32_PINMUX('E', 10, ANALOG)>, /* FMC_D7 */
257                                                  <STM32_PINMUX('D', 6, ANALOG)>, /* FMC_NWAIT */
258                                                  <STM32_PINMUX('G', 9, ANALOG)>; /* FMC_NE2_FMC_NCE */
259                                 };
260                         };
261
262                         i2c1_pins_a: i2c1-0 {
263                                 pins {
264                                         pinmux = <STM32_PINMUX('D', 12, AF5)>, /* I2C1_SCL */
265                                                  <STM32_PINMUX('F', 15, AF5)>; /* I2C1_SDA */
266                                         bias-disable;
267                                         drive-open-drain;
268                                         slew-rate = <0>;
269                                 };
270                         };
271
272                         i2c1_pins_b: i2c1-1 {
273                                 pins {
274                                         pinmux = <STM32_PINMUX('F', 14, AF5)>, /* I2C1_SCL */
275                                                  <STM32_PINMUX('F', 15, AF5)>; /* I2C1_SDA */
276                                         bias-disable;
277                                         drive-open-drain;
278                                         slew-rate = <0>;
279                                 };
280                         };
281
282                         i2c2_pins_a: i2c2-0 {
283                                 pins {
284                                         pinmux = <STM32_PINMUX('H', 4, AF4)>, /* I2C2_SCL */
285                                                  <STM32_PINMUX('H', 5, AF4)>; /* I2C2_SDA */
286                                         bias-disable;
287                                         drive-open-drain;
288                                         slew-rate = <0>;
289                                 };
290                         };
291
292                         i2c2_pins_b: i2c2-1 {
293                                 pins {
294                                         pinmux = <STM32_PINMUX('Z', 0, AF3)>, /* I2C2_SCL */
295                                                  <STM32_PINMUX('H', 5, AF4)>; /* I2C2_SDA */
296                                         bias-disable;
297                                         drive-open-drain;
298                                         slew-rate = <0>;
299                                 };
300                         };
301
302                         i2c5_pins_a: i2c5-0 {
303                                 pins {
304                                         pinmux = <STM32_PINMUX('A', 11, AF4)>, /* I2C5_SCL */
305                                                  <STM32_PINMUX('A', 12, AF4)>; /* I2C5_SDA */
306                                         bias-disable;
307                                         drive-open-drain;
308                                         slew-rate = <0>;
309                                 };
310                         };
311
312                         m_can1_pins_a: m-can1-0 {
313                                 pins1 {
314                                         pinmux = <STM32_PINMUX('H', 13, AF9)>; /* CAN1_TX */
315                                         slew-rate = <1>;
316                                         drive-push-pull;
317                                         bias-disable;
318                                 };
319                                 pins2 {
320                                         pinmux = <STM32_PINMUX('I', 9, AF9)>; /* CAN1_RX */
321                                         bias-disable;
322                                 };
323                         };
324
325                         pwm2_pins_a: pwm2-0 {
326                                 pins {
327                                         pinmux = <STM32_PINMUX('A', 3, AF1)>; /* TIM2_CH4 */
328                                         bias-pull-down;
329                                         drive-push-pull;
330                                         slew-rate = <0>;
331                                 };
332                         };
333
334                         pwm8_pins_a: pwm8-0 {
335                                 pins {
336                                         pinmux = <STM32_PINMUX('I', 2, AF3)>; /* TIM8_CH4 */
337                                         bias-pull-down;
338                                         drive-push-pull;
339                                         slew-rate = <0>;
340                                 };
341                         };
342
343                         pwm12_pins_a: pwm12-0 {
344                                 pins {
345                                         pinmux = <STM32_PINMUX('H', 6, AF2)>; /* TIM12_CH1 */
346                                         bias-pull-down;
347                                         drive-push-pull;
348                                         slew-rate = <0>;
349                                 };
350                         };
351
352                         qspi_clk_pins_a: qspi-clk-0 {
353                                 pins {
354                                         pinmux = <STM32_PINMUX('F', 10, AF9)>; /* QSPI_CLK */
355                                         bias-disable;
356                                         drive-push-pull;
357                                         slew-rate = <3>;
358                                 };
359                         };
360
361                         qspi_bk1_pins_a: qspi-bk1-0 {
362                                 pins1 {
363                                         pinmux = <STM32_PINMUX('F', 8, AF10)>, /* QSPI_BK1_IO0 */
364                                                  <STM32_PINMUX('F', 9, AF10)>, /* QSPI_BK1_IO1 */
365                                                  <STM32_PINMUX('F', 7, AF9)>, /* QSPI_BK1_IO2 */
366                                                  <STM32_PINMUX('F', 6, AF9)>; /* QSPI_BK1_IO3 */
367                                         bias-disable;
368                                         drive-push-pull;
369                                         slew-rate = <3>;
370                                 };
371                                 pins2 {
372                                         pinmux = <STM32_PINMUX('B', 6, AF10)>; /* QSPI_BK1_NCS */
373                                         bias-pull-up;
374                                         drive-push-pull;
375                                         slew-rate = <3>;
376                                 };
377                         };
378
379                         qspi_bk2_pins_a: qspi-bk2-0 {
380                                 pins1 {
381                                         pinmux = <STM32_PINMUX('H', 2, AF9)>, /* QSPI_BK2_IO0 */
382                                                  <STM32_PINMUX('H', 3, AF9)>, /* QSPI_BK2_IO1 */
383                                                  <STM32_PINMUX('G', 10, AF11)>, /* QSPI_BK2_IO2 */
384                                                  <STM32_PINMUX('G', 7, AF11)>; /* QSPI_BK2_IO3 */
385                                         bias-disable;
386                                         drive-push-pull;
387                                         slew-rate = <3>;
388                                 };
389                                 pins2 {
390                                         pinmux = <STM32_PINMUX('C', 0, AF10)>; /* QSPI_BK2_NCS */
391                                         bias-pull-up;
392                                         drive-push-pull;
393                                         slew-rate = <3>;
394                                 };
395                         };
396                         sdmmc1_b4_pins_a: sdmmc1-b4@0 {
397                                 pins {
398                                         pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDMMC1_D0 */
399                                                  <STM32_PINMUX('C', 9, AF12)>, /* SDMMC1_D1 */
400                                                  <STM32_PINMUX('C', 10, AF12)>, /* SDMMC1_D2 */
401                                                  <STM32_PINMUX('C', 11, AF12)>, /* SDMMC1_D3 */
402                                                  <STM32_PINMUX('C', 12, AF12)>, /* SDMMC1_CK */
403                                                  <STM32_PINMUX('D', 2, AF12)>; /* SDMMC1_CMD */
404                                         slew-rate = <3>;
405                                         drive-push-pull;
406                                         bias-disable;
407                                 };
408                         };
409
410                         sdmmc1_dir_pins_a: sdmmc1-dir@0 {
411                                 pins {
412                                         pinmux = <STM32_PINMUX('F', 2, AF11)>, /* SDMMC1_D0DIR */
413                                                  <STM32_PINMUX('C', 7, AF8)>, /* SDMMC1_D123DIR */
414                                                  <STM32_PINMUX('B', 9, AF11)>, /* SDMMC1_CDIR */
415                                                  <STM32_PINMUX('E', 4, AF8)>; /* SDMMC1_CKIN */
416                                         slew-rate = <3>;
417                                         drive-push-pull;
418                                         bias-pull-up;
419                                 };
420                         };
421                         sdmmc2_b4_pins_a: sdmmc2-b4@0 {
422                                 pins {
423                                         pinmux = <STM32_PINMUX('B', 14, AF9)>, /* SDMMC2_D0 */
424                                                  <STM32_PINMUX('B', 15, AF9)>, /* SDMMC2_D1 */
425                                                  <STM32_PINMUX('B', 3, AF9)>, /* SDMMC2_D2 */
426                                                  <STM32_PINMUX('B', 4, AF9)>, /* SDMMC2_D3 */
427                                                  <STM32_PINMUX('E', 3, AF9)>, /* SDMMC2_CK */
428                                                  <STM32_PINMUX('G', 6, AF10)>; /* SDMMC2_CMD */
429                                         slew-rate = <3>;
430                                         drive-push-pull;
431                                         bias-pull-up;
432                                 };
433                         };
434
435                         sdmmc2_d47_pins_a: sdmmc2-d47@0 {
436                                 pins {
437                                         pinmux = <STM32_PINMUX('A', 8, AF9)>, /* SDMMC2_D4 */
438                                                  <STM32_PINMUX('A', 9, AF10)>, /* SDMMC2_D5 */
439                                                  <STM32_PINMUX('E', 5, AF9)>, /* SDMMC2_D6 */
440                                                  <STM32_PINMUX('D', 3, AF9)>; /* SDMMC2_D7 */
441                                         slew-rate = <3>;
442                                         drive-push-pull;
443                                         bias-pull-up;
444                                 };
445                         };
446
447                         spi2_pins_a: spi2-0 {
448                                 pins1 {
449                                         pinmux = <STM32_PINMUX('B', 10, AF5)>, /* SPI2_SCK */
450                                                  <STM32_PINMUX('I', 0, AF5)>, /* SPI2_NSS */
451                                                  <STM32_PINMUX('I', 3, AF5)>; /* SPI2_MOSI */
452                                         bias-disable;
453                                         drive-push-pull;
454                                         slew-rate = <3>;
455                                 };
456                                 pins2 {
457                                         pinmux = <STM32_PINMUX('I', 2, AF5)>; /* SPI2_MISO */
458                                         bias-disable;
459                                 };
460                         };
461
462                         stusb1600_pins_a: stusb1600-0 {
463                                 pins {
464                                         pinmux = <STM32_PINMUX('I', 11, ANALOG)>;
465                                         bias-pull-up;
466                                 };
467                         };
468
469                         uart4_pins_a: uart4-0 {
470                                 pins1 {
471                                         pinmux = <STM32_PINMUX('G', 11, AF6)>; /* UART4_TX */
472                                         bias-disable;
473                                         drive-push-pull;
474                                         slew-rate = <0>;
475                                 };
476                                 pins2 {
477                                         pinmux = <STM32_PINMUX('B', 2, AF8)>; /* UART4_RX */
478                                         bias-disable;
479                                 };
480                         };
481
482                         uart4_pins_b: uart4-1 {
483                                 pins1 {
484                                         pinmux = <STM32_PINMUX('D', 1, AF8)>; /* UART4_TX */
485                                         bias-disable;
486                                         drive-push-pull;
487                                         slew-rate = <0>;
488                                 };
489                                 pins2 {
490                                         pinmux = <STM32_PINMUX('B', 2, AF8)>; /* UART4_RX */
491                                         bias-disable;
492                                 };
493                         };
494
495                         uart7_pins_a: uart7-0 {
496                                 pins1 {
497                                         pinmux = <STM32_PINMUX('E', 8, AF7)>; /* UART4_TX */
498                                         bias-disable;
499                                         drive-push-pull;
500                                         slew-rate = <0>;
501                                 };
502                                 pins2 {
503                                         pinmux = <STM32_PINMUX('E', 7, AF7)>, /* UART4_RX */
504                                                  <STM32_PINMUX('E', 10, AF7)>, /* UART4_CTS */
505                                                  <STM32_PINMUX('E', 9, AF7)>; /* UART4_RTS */
506                                         bias-disable;
507                                 };
508                         };
509
510                         usbotg_hs_pins_a: usbotg_hs-0 {
511                                 pins {
512                                         pinmux = <STM32_PINMUX('A', 10, ANALOG)>; /* OTG_ID */
513                                 };
514                         };
515                 };
516
517                 pinctrl_z: pin-controller-z@54004000 {
518                         #address-cells = <1>;
519                         #size-cells = <1>;
520                         compatible = "st,stm32mp157-z-pinctrl";
521                         ranges = <0 0x54004000 0x400>;
522                         pins-are-numbered;
523                         interrupt-parent = <&exti>;
524                         st,syscfg = <&exti 0x60 0xff>;
525
526                         gpioz: gpio@54004000 {
527                                 gpio-controller;
528                                 #gpio-cells = <2>;
529                                 interrupt-controller;
530                                 #interrupt-cells = <2>;
531                                 reg = <0 0x400>;
532                                 clocks = <&rcc GPIOZ>;
533                                 st,bank-name = "GPIOZ";
534                                 st,bank-ioport = <11>;
535                                 ngpios = <8>;
536                                 gpio-ranges = <&pinctrl_z 0 400 8>;
537                         };
538
539                         i2c4_pins_a: i2c4-0 {
540                                 pins {
541                                         pinmux = <STM32_PINMUX('Z', 4, AF6)>, /* I2C4_SCL */
542                                                  <STM32_PINMUX('Z', 5, AF6)>; /* I2C4_SDA */
543                                         bias-disable;
544                                         drive-open-drain;
545                                         slew-rate = <0>;
546                                 };
547                         };
548
549                         spi1_pins_a: spi1-0 {
550                                 pins1 {
551                                         pinmux = <STM32_PINMUX('Z', 0, AF5)>, /* SPI1_SCK */
552                                                  <STM32_PINMUX('Z', 2, AF5)>; /* SPI1_MOSI */
553                                         bias-disable;
554                                         drive-push-pull;
555                                         slew-rate = <1>;
556                                 };
557
558                                 pins2 {
559                                         pinmux = <STM32_PINMUX('Z', 1, AF5)>; /* SPI1_MISO */
560                                         bias-disable;
561                                 };
562                         };
563                 };
564         };
565 };