1// SPDX-License-Identifier: (GPL-2.0+ OR BSD-3-Clause)
2/*
3 * Copyright (C) STMicroelectronics 2022 - All Rights Reserved
4 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com>
5 */
6#include <dt-bindings/pinctrl/stm32-pinfunc.h>
7
8&pinctrl {
9	i2c4_pins_a: i2c4-0 {
10		pins {
11			pinmux = <STM32_PINMUX('E', 15, AF6)>, /* I2C4_SCL */
12				 <STM32_PINMUX('B', 9, AF6)>; /* I2C4_SDA */
13			bias-disable;
14			drive-open-drain;
15			slew-rate = <0>;
16		};
17	};
18
19	sdmmc1_b4_pins_a: sdmmc1-b4-0 {
20		pins1 {
21			pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDMMC1_D0 */
22				 <STM32_PINMUX('C', 9, AF12)>, /* SDMMC1_D1 */
23				 <STM32_PINMUX('C', 10, AF12)>, /* SDMMC1_D2 */
24				 <STM32_PINMUX('C', 11, AF12)>, /* SDMMC1_D3 */
25				 <STM32_PINMUX('D', 2, AF12)>; /* SDMMC1_CMD */
26			slew-rate = <1>;
27			drive-push-pull;
28			bias-disable;
29		};
30		pins2 {
31			pinmux = <STM32_PINMUX('C', 12, AF12)>; /* SDMMC1_CK */
32			slew-rate = <2>;
33			drive-push-pull;
34			bias-disable;
35		};
36	};
37
38	sdmmc2_b4_pins_a: sdmmc2-b4-0 {
39		pins1 {
40			pinmux = <STM32_PINMUX('B', 14, AF10)>, /* SDMMC2_D0 */
41				 <STM32_PINMUX('B', 15, AF10)>, /* SDMMC2_D1 */
42				 <STM32_PINMUX('B', 3, AF10)>, /* SDMMC2_D2 */
43				 <STM32_PINMUX('B', 4, AF10)>, /* SDMMC2_D3 */
44				 <STM32_PINMUX('G', 6, AF10)>; /* SDMMC2_CMD */
45			slew-rate = <1>;
46			drive-push-pull;
47			bias-pull-up;
48		};
49		pins2 {
50			pinmux = <STM32_PINMUX('E', 3, AF10)>; /* SDMMC2_CK */
51			slew-rate = <2>;
52			drive-push-pull;
53			bias-pull-up;
54		};
55	};
56
57	uart4_pins_a: uart4-0 {
58		pins1 {
59			pinmux = <STM32_PINMUX('D', 6, AF8)>; /* UART4_TX */
60			bias-disable;
61			drive-push-pull;
62			slew-rate = <0>;
63		};
64		pins2 {
65			pinmux = <STM32_PINMUX('D', 8, AF8)>; /* UART4_RX */
66			bias-disable;
67		};
68	};
69
70	usart1_pins_a: usart1-0 {
71		pins1 {
72			pinmux = <STM32_PINMUX('C', 0, AF7)>, /* USART1_TX */
73				 <STM32_PINMUX('C', 2, AF7)>; /* USART1_RTS */
74			bias-disable;
75			drive-push-pull;
76			slew-rate = <0>;
77		};
78		pins2 {
79			pinmux = <STM32_PINMUX('B', 0, AF4)>, /* USART1_RX */
80				 <STM32_PINMUX('A', 7, AF7)>; /* USART1_CTS_NSS */
81			bias-pull-up;
82		};
83	};
84
85	uart8_pins_a: uart8-0 {
86		pins1 {
87			pinmux = <STM32_PINMUX('E', 1, AF8)>; /* UART8_TX */
88			bias-disable;
89			drive-push-pull;
90			slew-rate = <0>;
91		};
92		pins2 {
93			pinmux = <STM32_PINMUX('F', 9, AF8)>; /* UART8_RX */
94			bias-pull-up;
95		};
96	};
97};
98