1// SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) 2/* 3 * Copyright (C) STMicroelectronics 2023 - All Rights Reserved 4 * Author: Alexandre Torgue <alexandre.torgue@foss.st.com> for STMicroelectronics. 5 */ 6#include <dt-bindings/pinctrl/stm32-pinfunc.h> 7 8&pinctrl { 9 i2c2_pins_a: i2c2-0 { 10 pins { 11 pinmux = <STM32_PINMUX('B', 5, AF9)>, /* I2C2_SCL */ 12 <STM32_PINMUX('B', 4, AF9)>; /* I2C2_SDA */ 13 bias-disable; 14 drive-open-drain; 15 slew-rate = <0>; 16 }; 17 }; 18 19 i2c2_sleep_pins_a: i2c2-sleep-0 { 20 pins { 21 pinmux = <STM32_PINMUX('B', 5, ANALOG)>, /* I2C2_SCL */ 22 <STM32_PINMUX('B', 4, ANALOG)>; /* I2C2_SDA */ 23 }; 24 }; 25 26 sdmmc1_b4_pins_a: sdmmc1-b4-0 { 27 pins1 { 28 pinmux = <STM32_PINMUX('E', 4, AF10)>, /* SDMMC1_D0 */ 29 <STM32_PINMUX('E', 5, AF10)>, /* SDMMC1_D1 */ 30 <STM32_PINMUX('E', 0, AF10)>, /* SDMMC1_D2 */ 31 <STM32_PINMUX('E', 1, AF10)>, /* SDMMC1_D3 */ 32 <STM32_PINMUX('E', 2, AF10)>; /* SDMMC1_CMD */ 33 slew-rate = <2>; 34 drive-push-pull; 35 bias-disable; 36 }; 37 pins2 { 38 pinmux = <STM32_PINMUX('E', 3, AF10)>; /* SDMMC1_CK */ 39 slew-rate = <3>; 40 drive-push-pull; 41 bias-disable; 42 }; 43 }; 44 45 sdmmc1_b4_od_pins_a: sdmmc1-b4-od-0 { 46 pins1 { 47 pinmux = <STM32_PINMUX('E', 4, AF10)>, /* SDMMC1_D0 */ 48 <STM32_PINMUX('E', 5, AF10)>, /* SDMMC1_D1 */ 49 <STM32_PINMUX('E', 0, AF10)>, /* SDMMC1_D2 */ 50 <STM32_PINMUX('E', 1, AF10)>; /* SDMMC1_D3 */ 51 slew-rate = <2>; 52 drive-push-pull; 53 bias-disable; 54 }; 55 pins2 { 56 pinmux = <STM32_PINMUX('E', 3, AF10)>; /* SDMMC1_CK */ 57 slew-rate = <3>; 58 drive-push-pull; 59 bias-disable; 60 }; 61 pins3 { 62 pinmux = <STM32_PINMUX('E', 2, AF10)>; /* SDMMC1_CMD */ 63 slew-rate = <2>; 64 drive-open-drain; 65 bias-disable; 66 }; 67 }; 68 69 sdmmc1_b4_sleep_pins_a: sdmmc1-b4-sleep-0 { 70 pins { 71 pinmux = <STM32_PINMUX('E', 4, ANALOG)>, /* SDMMC1_D0 */ 72 <STM32_PINMUX('E', 5, ANALOG)>, /* SDMMC1_D1 */ 73 <STM32_PINMUX('E', 0, ANALOG)>, /* SDMMC1_D2 */ 74 <STM32_PINMUX('E', 1, ANALOG)>, /* SDMMC1_D3 */ 75 <STM32_PINMUX('E', 3, ANALOG)>, /* SDMMC1_CK */ 76 <STM32_PINMUX('E', 2, ANALOG)>; /* SDMMC1_CMD */ 77 }; 78 }; 79 80 spi3_pins_a: spi3-0 { 81 pins1 { 82 pinmux = <STM32_PINMUX('B', 7, AF1)>, /* SPI3_SCK */ 83 <STM32_PINMUX('B', 8, AF1)>; /* SPI3_MOSI */ 84 drive-push-pull; 85 bias-disable; 86 slew-rate = <1>; 87 }; 88 pins2 { 89 pinmux = <STM32_PINMUX('B', 10, AF1)>; /* SPI3_MISO */ 90 bias-disable; 91 }; 92 }; 93 94 spi3_sleep_pins_a: spi3-sleep-0 { 95 pins1 { 96 pinmux = <STM32_PINMUX('B', 7, ANALOG)>, /* SPI3_SCK */ 97 <STM32_PINMUX('B', 8, ANALOG)>, /* SPI3_MOSI */ 98 <STM32_PINMUX('B', 10, ANALOG)>; /* SPI3_MISO */ 99 }; 100 }; 101 102 usart2_pins_a: usart2-0 { 103 pins1 { 104 pinmux = <STM32_PINMUX('A', 4, AF6)>; /* USART2_TX */ 105 bias-disable; 106 drive-push-pull; 107 slew-rate = <0>; 108 }; 109 pins2 { 110 pinmux = <STM32_PINMUX('A', 8, AF8)>; /* USART2_RX */ 111 bias-disable; 112 }; 113 }; 114 115 usart2_idle_pins_a: usart2-idle-0 { 116 pins1 { 117 pinmux = <STM32_PINMUX('A', 4, ANALOG)>; /* USART2_TX */ 118 }; 119 pins2 { 120 pinmux = <STM32_PINMUX('A', 8, AF8)>; /* USART2_RX */ 121 bias-disable; 122 }; 123 }; 124 125 usart2_sleep_pins_a: usart2-sleep-0 { 126 pins { 127 pinmux = <STM32_PINMUX('A', 4, ANALOG)>, /* USART2_TX */ 128 <STM32_PINMUX('A', 8, ANALOG)>; /* USART2_RX */ 129 }; 130 }; 131}; 132 133&pinctrl_z { 134 i2c8_pins_a: i2c8-0 { 135 pins { 136 pinmux = <STM32_PINMUX('Z', 4, AF8)>, /* I2C8_SCL */ 137 <STM32_PINMUX('Z', 3, AF8)>; /* I2C8_SDA */ 138 bias-disable; 139 drive-open-drain; 140 slew-rate = <0>; 141 }; 142 }; 143 144 i2c8_sleep_pins_a: i2c8-sleep-0 { 145 pins { 146 pinmux = <STM32_PINMUX('Z', 4, ANALOG)>, /* I2C8_SCL */ 147 <STM32_PINMUX('Z', 3, ANALOG)>; /* I2C8_SDA */ 148 }; 149 }; 150}; 151 152&pinctrl_z { 153 spi8_pins_a: spi8-0 { 154 pins1 { 155 pinmux = <STM32_PINMUX('Z', 2, AF3)>, /* SPI8_SCK */ 156 <STM32_PINMUX('Z', 0, AF3)>; /* SPI8_MOSI */ 157 drive-push-pull; 158 bias-disable; 159 slew-rate = <1>; 160 }; 161 pins2 { 162 pinmux = <STM32_PINMUX('Z', 1, AF3)>; /* SPI8_MISO */ 163 bias-disable; 164 }; 165 }; 166 167 spi8_sleep_pins_a: spi8-sleep-0 { 168 pins1 { 169 pinmux = <STM32_PINMUX('Z', 2, ANALOG)>, /* SPI8_SCK */ 170 <STM32_PINMUX('Z', 0, ANALOG)>, /* SPI8_MOSI */ 171 <STM32_PINMUX('Z', 1, ANALOG)>; /* SPI8_MISO */ 172 }; 173 }; 174}; 175