18c2ecf20Sopenharmony_ci/* 28c2ecf20Sopenharmony_ci * Copyright 2017 - Alexandre Torgue <alexandre.torgue@st.com> 38c2ecf20Sopenharmony_ci * 48c2ecf20Sopenharmony_ci * This file is dual-licensed: you can use it either under the terms 58c2ecf20Sopenharmony_ci * of the GPL or the X11 license, at your option. Note that this dual 68c2ecf20Sopenharmony_ci * licensing only applies to this file, and not this project as a 78c2ecf20Sopenharmony_ci * whole. 88c2ecf20Sopenharmony_ci * 98c2ecf20Sopenharmony_ci * a) This file is free software; you can redistribute it and/or 108c2ecf20Sopenharmony_ci * modify it under the terms of the GNU General Public License as 118c2ecf20Sopenharmony_ci * published by the Free Software Foundation; either version 2 of the 128c2ecf20Sopenharmony_ci * License, or (at your option) any later version. 138c2ecf20Sopenharmony_ci * 148c2ecf20Sopenharmony_ci * This file is distributed in the hope that it will be useful, 158c2ecf20Sopenharmony_ci * but WITHOUT ANY WARRANTY; without even the implied warranty of 168c2ecf20Sopenharmony_ci * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 178c2ecf20Sopenharmony_ci * GNU General Public License for more details. 188c2ecf20Sopenharmony_ci * 198c2ecf20Sopenharmony_ci * Or, alternatively, 208c2ecf20Sopenharmony_ci * 218c2ecf20Sopenharmony_ci * b) Permission is hereby granted, free of charge, to any person 228c2ecf20Sopenharmony_ci * obtaining a copy of this software and associated documentation 238c2ecf20Sopenharmony_ci * files (the "Software"), to deal in the Software without 248c2ecf20Sopenharmony_ci * restriction, including without limitation the rights to use, 258c2ecf20Sopenharmony_ci * copy, modify, merge, publish, distribute, sublicense, and/or 268c2ecf20Sopenharmony_ci * sell copies of the Software, and to permit persons to whom the 278c2ecf20Sopenharmony_ci * Software is furnished to do so, subject to the following 288c2ecf20Sopenharmony_ci * conditions: 298c2ecf20Sopenharmony_ci * 308c2ecf20Sopenharmony_ci * The above copyright notice and this permission notice shall be 318c2ecf20Sopenharmony_ci * included in all copies or substantial portions of the Software. 328c2ecf20Sopenharmony_ci * 338c2ecf20Sopenharmony_ci * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 348c2ecf20Sopenharmony_ci * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 358c2ecf20Sopenharmony_ci * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 368c2ecf20Sopenharmony_ci * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 378c2ecf20Sopenharmony_ci * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 388c2ecf20Sopenharmony_ci * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 398c2ecf20Sopenharmony_ci * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 408c2ecf20Sopenharmony_ci * OTHER DEALINGS IN THE SOFTWARE. 418c2ecf20Sopenharmony_ci */ 428c2ecf20Sopenharmony_ci 438c2ecf20Sopenharmony_ci#include <dt-bindings/pinctrl/stm32-pinfunc.h> 448c2ecf20Sopenharmony_ci#include <dt-bindings/mfd/stm32f4-rcc.h> 458c2ecf20Sopenharmony_ci 468c2ecf20Sopenharmony_ci/ { 478c2ecf20Sopenharmony_ci soc { 488c2ecf20Sopenharmony_ci pinctrl: pin-controller { 498c2ecf20Sopenharmony_ci #address-cells = <1>; 508c2ecf20Sopenharmony_ci #size-cells = <1>; 518c2ecf20Sopenharmony_ci ranges = <0 0x40020000 0x3000>; 528c2ecf20Sopenharmony_ci interrupt-parent = <&exti>; 538c2ecf20Sopenharmony_ci st,syscfg = <&syscfg 0x8>; 548c2ecf20Sopenharmony_ci pins-are-numbered; 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci gpioa: gpio@40020000 { 578c2ecf20Sopenharmony_ci gpio-controller; 588c2ecf20Sopenharmony_ci #gpio-cells = <2>; 598c2ecf20Sopenharmony_ci interrupt-controller; 608c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 618c2ecf20Sopenharmony_ci reg = <0x0 0x400>; 628c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOA)>; 638c2ecf20Sopenharmony_ci st,bank-name = "GPIOA"; 648c2ecf20Sopenharmony_ci }; 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ci gpiob: gpio@40020400 { 678c2ecf20Sopenharmony_ci gpio-controller; 688c2ecf20Sopenharmony_ci #gpio-cells = <2>; 698c2ecf20Sopenharmony_ci interrupt-controller; 708c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 718c2ecf20Sopenharmony_ci reg = <0x400 0x400>; 728c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOB)>; 738c2ecf20Sopenharmony_ci st,bank-name = "GPIOB"; 748c2ecf20Sopenharmony_ci }; 758c2ecf20Sopenharmony_ci 768c2ecf20Sopenharmony_ci gpioc: gpio@40020800 { 778c2ecf20Sopenharmony_ci gpio-controller; 788c2ecf20Sopenharmony_ci #gpio-cells = <2>; 798c2ecf20Sopenharmony_ci interrupt-controller; 808c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 818c2ecf20Sopenharmony_ci reg = <0x800 0x400>; 828c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOC)>; 838c2ecf20Sopenharmony_ci st,bank-name = "GPIOC"; 848c2ecf20Sopenharmony_ci }; 858c2ecf20Sopenharmony_ci 868c2ecf20Sopenharmony_ci gpiod: gpio@40020c00 { 878c2ecf20Sopenharmony_ci gpio-controller; 888c2ecf20Sopenharmony_ci #gpio-cells = <2>; 898c2ecf20Sopenharmony_ci interrupt-controller; 908c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 918c2ecf20Sopenharmony_ci reg = <0xc00 0x400>; 928c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOD)>; 938c2ecf20Sopenharmony_ci st,bank-name = "GPIOD"; 948c2ecf20Sopenharmony_ci }; 958c2ecf20Sopenharmony_ci 968c2ecf20Sopenharmony_ci gpioe: gpio@40021000 { 978c2ecf20Sopenharmony_ci gpio-controller; 988c2ecf20Sopenharmony_ci #gpio-cells = <2>; 998c2ecf20Sopenharmony_ci interrupt-controller; 1008c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1018c2ecf20Sopenharmony_ci reg = <0x1000 0x400>; 1028c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOE)>; 1038c2ecf20Sopenharmony_ci st,bank-name = "GPIOE"; 1048c2ecf20Sopenharmony_ci }; 1058c2ecf20Sopenharmony_ci 1068c2ecf20Sopenharmony_ci gpiof: gpio@40021400 { 1078c2ecf20Sopenharmony_ci gpio-controller; 1088c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1098c2ecf20Sopenharmony_ci interrupt-controller; 1108c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1118c2ecf20Sopenharmony_ci reg = <0x1400 0x400>; 1128c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOF)>; 1138c2ecf20Sopenharmony_ci st,bank-name = "GPIOF"; 1148c2ecf20Sopenharmony_ci }; 1158c2ecf20Sopenharmony_ci 1168c2ecf20Sopenharmony_ci gpiog: gpio@40021800 { 1178c2ecf20Sopenharmony_ci gpio-controller; 1188c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1198c2ecf20Sopenharmony_ci interrupt-controller; 1208c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1218c2ecf20Sopenharmony_ci reg = <0x1800 0x400>; 1228c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOG)>; 1238c2ecf20Sopenharmony_ci st,bank-name = "GPIOG"; 1248c2ecf20Sopenharmony_ci }; 1258c2ecf20Sopenharmony_ci 1268c2ecf20Sopenharmony_ci gpioh: gpio@40021c00 { 1278c2ecf20Sopenharmony_ci gpio-controller; 1288c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1298c2ecf20Sopenharmony_ci interrupt-controller; 1308c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1318c2ecf20Sopenharmony_ci reg = <0x1c00 0x400>; 1328c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOH)>; 1338c2ecf20Sopenharmony_ci st,bank-name = "GPIOH"; 1348c2ecf20Sopenharmony_ci }; 1358c2ecf20Sopenharmony_ci 1368c2ecf20Sopenharmony_ci gpioi: gpio@40022000 { 1378c2ecf20Sopenharmony_ci gpio-controller; 1388c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1398c2ecf20Sopenharmony_ci interrupt-controller; 1408c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1418c2ecf20Sopenharmony_ci reg = <0x2000 0x400>; 1428c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOI)>; 1438c2ecf20Sopenharmony_ci st,bank-name = "GPIOI"; 1448c2ecf20Sopenharmony_ci }; 1458c2ecf20Sopenharmony_ci 1468c2ecf20Sopenharmony_ci gpioj: gpio@40022400 { 1478c2ecf20Sopenharmony_ci gpio-controller; 1488c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1498c2ecf20Sopenharmony_ci interrupt-controller; 1508c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1518c2ecf20Sopenharmony_ci reg = <0x2400 0x400>; 1528c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOJ)>; 1538c2ecf20Sopenharmony_ci st,bank-name = "GPIOJ"; 1548c2ecf20Sopenharmony_ci }; 1558c2ecf20Sopenharmony_ci 1568c2ecf20Sopenharmony_ci gpiok: gpio@40022800 { 1578c2ecf20Sopenharmony_ci gpio-controller; 1588c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1598c2ecf20Sopenharmony_ci interrupt-controller; 1608c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1618c2ecf20Sopenharmony_ci reg = <0x2800 0x400>; 1628c2ecf20Sopenharmony_ci clocks = <&rcc 0 STM32F4_AHB1_CLOCK(GPIOK)>; 1638c2ecf20Sopenharmony_ci st,bank-name = "GPIOK"; 1648c2ecf20Sopenharmony_ci }; 1658c2ecf20Sopenharmony_ci 1668c2ecf20Sopenharmony_ci usart1_pins_a: usart1-0 { 1678c2ecf20Sopenharmony_ci pins1 { 1688c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('A', 9, AF7)>; /* USART1_TX */ 1698c2ecf20Sopenharmony_ci bias-disable; 1708c2ecf20Sopenharmony_ci drive-push-pull; 1718c2ecf20Sopenharmony_ci slew-rate = <0>; 1728c2ecf20Sopenharmony_ci }; 1738c2ecf20Sopenharmony_ci pins2 { 1748c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('A', 10, AF7)>; /* USART1_RX */ 1758c2ecf20Sopenharmony_ci bias-disable; 1768c2ecf20Sopenharmony_ci }; 1778c2ecf20Sopenharmony_ci }; 1788c2ecf20Sopenharmony_ci 1798c2ecf20Sopenharmony_ci usart3_pins_a: usart3-0 { 1808c2ecf20Sopenharmony_ci pins1 { 1818c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('B', 10, AF7)>; /* USART3_TX */ 1828c2ecf20Sopenharmony_ci bias-disable; 1838c2ecf20Sopenharmony_ci drive-push-pull; 1848c2ecf20Sopenharmony_ci slew-rate = <0>; 1858c2ecf20Sopenharmony_ci }; 1868c2ecf20Sopenharmony_ci pins2 { 1878c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('B', 11, AF7)>; /* USART3_RX */ 1888c2ecf20Sopenharmony_ci bias-disable; 1898c2ecf20Sopenharmony_ci }; 1908c2ecf20Sopenharmony_ci }; 1918c2ecf20Sopenharmony_ci 1928c2ecf20Sopenharmony_ci usbotg_fs_pins_a: usbotg-fs-0 { 1938c2ecf20Sopenharmony_ci pins { 1948c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('A', 10, AF10)>, /* OTG_FS_ID */ 1958c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 11, AF10)>, /* OTG_FS_DM */ 1968c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 12, AF10)>; /* OTG_FS_DP */ 1978c2ecf20Sopenharmony_ci bias-disable; 1988c2ecf20Sopenharmony_ci drive-push-pull; 1998c2ecf20Sopenharmony_ci slew-rate = <2>; 2008c2ecf20Sopenharmony_ci }; 2018c2ecf20Sopenharmony_ci }; 2028c2ecf20Sopenharmony_ci 2038c2ecf20Sopenharmony_ci usbotg_fs_pins_b: usbotg-fs-1 { 2048c2ecf20Sopenharmony_ci pins { 2058c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('B', 12, AF12)>, /* OTG_HS_ID */ 2068c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 14, AF12)>, /* OTG_HS_DM */ 2078c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 15, AF12)>; /* OTG_HS_DP */ 2088c2ecf20Sopenharmony_ci bias-disable; 2098c2ecf20Sopenharmony_ci drive-push-pull; 2108c2ecf20Sopenharmony_ci slew-rate = <2>; 2118c2ecf20Sopenharmony_ci }; 2128c2ecf20Sopenharmony_ci }; 2138c2ecf20Sopenharmony_ci 2148c2ecf20Sopenharmony_ci usbotg_hs_pins_a: usbotg-hs-0 { 2158c2ecf20Sopenharmony_ci pins { 2168c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('H', 4, AF10)>, /* OTG_HS_ULPI_NXT*/ 2178c2ecf20Sopenharmony_ci <STM32_PINMUX('I', 11, AF10)>, /* OTG_HS_ULPI_DIR */ 2188c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 0, AF10)>, /* OTG_HS_ULPI_STP */ 2198c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 5, AF10)>, /* OTG_HS_ULPI_CK */ 2208c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 3, AF10)>, /* OTG_HS_ULPI_D0 */ 2218c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 0, AF10)>, /* OTG_HS_ULPI_D1 */ 2228c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 1, AF10)>, /* OTG_HS_ULPI_D2 */ 2238c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 10, AF10)>, /* OTG_HS_ULPI_D3 */ 2248c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 11, AF10)>, /* OTG_HS_ULPI_D4 */ 2258c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 12, AF10)>, /* OTG_HS_ULPI_D5 */ 2268c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 13, AF10)>, /* OTG_HS_ULPI_D6 */ 2278c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 5, AF10)>; /* OTG_HS_ULPI_D7 */ 2288c2ecf20Sopenharmony_ci bias-disable; 2298c2ecf20Sopenharmony_ci drive-push-pull; 2308c2ecf20Sopenharmony_ci slew-rate = <2>; 2318c2ecf20Sopenharmony_ci }; 2328c2ecf20Sopenharmony_ci }; 2338c2ecf20Sopenharmony_ci 2348c2ecf20Sopenharmony_ci ethernet_mii: mii-0 { 2358c2ecf20Sopenharmony_ci pins { 2368c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('G', 13, AF11)>, /* ETH_MII_TXD0_ETH_RMII_TXD0 */ 2378c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 14, AF11)>, /* ETH_MII_TXD1_ETH_RMII_TXD1 */ 2388c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 2, AF11)>, /* ETH_MII_TXD2 */ 2398c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 8, AF11)>, /* ETH_MII_TXD3 */ 2408c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 3, AF11)>, /* ETH_MII_TX_CLK */ 2418c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 11,AF11)>, /* ETH_MII_TX_EN_ETH_RMII_TX_EN */ 2428c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 2, AF11)>, /* ETH_MDIO */ 2438c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 1, AF11)>, /* ETH_MDC */ 2448c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 1, AF11)>, /* ETH_MII_RX_CLK_ETH_RMII_REF_CLK */ 2458c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 7, AF11)>, /* ETH_MII_RX_DV_ETH_RMII_CRS_DV */ 2468c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 4, AF11)>, /* ETH_MII_RXD0_ETH_RMII_RXD0 */ 2478c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 5, AF11)>, /* ETH_MII_RXD1_ETH_RMII_RXD1 */ 2488c2ecf20Sopenharmony_ci <STM32_PINMUX('H', 6, AF11)>, /* ETH_MII_RXD2 */ 2498c2ecf20Sopenharmony_ci <STM32_PINMUX('H', 7, AF11)>; /* ETH_MII_RXD3 */ 2508c2ecf20Sopenharmony_ci slew-rate = <2>; 2518c2ecf20Sopenharmony_ci }; 2528c2ecf20Sopenharmony_ci }; 2538c2ecf20Sopenharmony_ci 2548c2ecf20Sopenharmony_ci adc3_in8_pin: adc-200 { 2558c2ecf20Sopenharmony_ci pins { 2568c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('F', 10, ANALOG)>; 2578c2ecf20Sopenharmony_ci }; 2588c2ecf20Sopenharmony_ci }; 2598c2ecf20Sopenharmony_ci 2608c2ecf20Sopenharmony_ci pwm1_pins: pwm1-0 { 2618c2ecf20Sopenharmony_ci pins { 2628c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('A', 8, AF1)>, /* TIM1_CH1 */ 2638c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 13, AF1)>, /* TIM1_CH1N */ 2648c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 12, AF1)>; /* TIM1_BKIN */ 2658c2ecf20Sopenharmony_ci }; 2668c2ecf20Sopenharmony_ci }; 2678c2ecf20Sopenharmony_ci 2688c2ecf20Sopenharmony_ci pwm3_pins: pwm3-0 { 2698c2ecf20Sopenharmony_ci pins { 2708c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('B', 4, AF2)>, /* TIM3_CH1 */ 2718c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 5, AF2)>; /* TIM3_CH2 */ 2728c2ecf20Sopenharmony_ci }; 2738c2ecf20Sopenharmony_ci }; 2748c2ecf20Sopenharmony_ci 2758c2ecf20Sopenharmony_ci i2c1_pins: i2c1-0 { 2768c2ecf20Sopenharmony_ci pins { 2778c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('B', 9, AF4)>, /* I2C1_SDA */ 2788c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 6, AF4)>; /* I2C1_SCL */ 2798c2ecf20Sopenharmony_ci bias-disable; 2808c2ecf20Sopenharmony_ci drive-open-drain; 2818c2ecf20Sopenharmony_ci slew-rate = <3>; 2828c2ecf20Sopenharmony_ci }; 2838c2ecf20Sopenharmony_ci }; 2848c2ecf20Sopenharmony_ci 2858c2ecf20Sopenharmony_ci ltdc_pins_a: ltdc-0 { 2868c2ecf20Sopenharmony_ci pins { 2878c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('I', 12, AF14)>, /* LCD_HSYNC */ 2888c2ecf20Sopenharmony_ci <STM32_PINMUX('I', 13, AF14)>, /* LCD_VSYNC */ 2898c2ecf20Sopenharmony_ci <STM32_PINMUX('I', 14, AF14)>, /* LCD_CLK */ 2908c2ecf20Sopenharmony_ci <STM32_PINMUX('I', 15, AF14)>, /* LCD_R0 */ 2918c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 0, AF14)>, /* LCD_R1 */ 2928c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 1, AF14)>, /* LCD_R2 */ 2938c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 2, AF14)>, /* LCD_R3 */ 2948c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 3, AF14)>, /* LCD_R4 */ 2958c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 4, AF14)>, /* LCD_R5 */ 2968c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 5, AF14)>, /* LCD_R6*/ 2978c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 6, AF14)>, /* LCD_R7 */ 2988c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 7, AF14)>, /* LCD_G0 */ 2998c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 8, AF14)>, /* LCD_G1 */ 3008c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 9, AF14)>, /* LCD_G2 */ 3018c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 10, AF14)>, /* LCD_G3 */ 3028c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 11, AF14)>, /* LCD_G4 */ 3038c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 12, AF14)>, /* LCD_B0 */ 3048c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 13, AF14)>, /* LCD_B1 */ 3058c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 14, AF14)>, /* LCD_B2 */ 3068c2ecf20Sopenharmony_ci <STM32_PINMUX('J', 15, AF14)>, /* LCD_B3*/ 3078c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 0, AF14)>, /* LCD_G5 */ 3088c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 1, AF14)>, /* LCD_G6 */ 3098c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 2, AF14)>, /* LCD_G7 */ 3108c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 3, AF14)>, /* LCD_B4 */ 3118c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 4, AF14)>, /* LCD_B5 */ 3128c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 5, AF14)>, /* LCD_B6 */ 3138c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 6, AF14)>, /* LCD_B7 */ 3148c2ecf20Sopenharmony_ci <STM32_PINMUX('K', 7, AF14)>; /* LCD_DE */ 3158c2ecf20Sopenharmony_ci slew-rate = <2>; 3168c2ecf20Sopenharmony_ci }; 3178c2ecf20Sopenharmony_ci }; 3188c2ecf20Sopenharmony_ci 3198c2ecf20Sopenharmony_ci ltdc_pins_b: ltdc-1 { 3208c2ecf20Sopenharmony_ci pins { 3218c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('C', 6, AF14)>, 3228c2ecf20Sopenharmony_ci /* LCD_HSYNC */ 3238c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 4, AF14)>, 3248c2ecf20Sopenharmony_ci /* LCD_VSYNC */ 3258c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 7, AF14)>, 3268c2ecf20Sopenharmony_ci /* LCD_CLK */ 3278c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 10, AF14)>, 3288c2ecf20Sopenharmony_ci /* LCD_R2 */ 3298c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 0, AF9)>, 3308c2ecf20Sopenharmony_ci /* LCD_R3 */ 3318c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 11, AF14)>, 3328c2ecf20Sopenharmony_ci /* LCD_R4 */ 3338c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 12, AF14)>, 3348c2ecf20Sopenharmony_ci /* LCD_R5 */ 3358c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 1, AF9)>, 3368c2ecf20Sopenharmony_ci /* LCD_R6*/ 3378c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 6, AF14)>, 3388c2ecf20Sopenharmony_ci /* LCD_R7 */ 3398c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 6, AF14)>, 3408c2ecf20Sopenharmony_ci /* LCD_G2 */ 3418c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 10, AF9)>, 3428c2ecf20Sopenharmony_ci /* LCD_G3 */ 3438c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 10, AF14)>, 3448c2ecf20Sopenharmony_ci /* LCD_G4 */ 3458c2ecf20Sopenharmony_ci <STM32_PINMUX('D', 6, AF14)>, 3468c2ecf20Sopenharmony_ci /* LCD_B2 */ 3478c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 11, AF14)>, 3488c2ecf20Sopenharmony_ci /* LCD_B3*/ 3498c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 11, AF14)>, 3508c2ecf20Sopenharmony_ci /* LCD_G5 */ 3518c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 7, AF14)>, 3528c2ecf20Sopenharmony_ci /* LCD_G6 */ 3538c2ecf20Sopenharmony_ci <STM32_PINMUX('D', 3, AF14)>, 3548c2ecf20Sopenharmony_ci /* LCD_G7 */ 3558c2ecf20Sopenharmony_ci <STM32_PINMUX('G', 12, AF9)>, 3568c2ecf20Sopenharmony_ci /* LCD_B4 */ 3578c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 3, AF14)>, 3588c2ecf20Sopenharmony_ci /* LCD_B5 */ 3598c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 8, AF14)>, 3608c2ecf20Sopenharmony_ci /* LCD_B6 */ 3618c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 9, AF14)>, 3628c2ecf20Sopenharmony_ci /* LCD_B7 */ 3638c2ecf20Sopenharmony_ci <STM32_PINMUX('F', 10, AF14)>; 3648c2ecf20Sopenharmony_ci /* LCD_DE */ 3658c2ecf20Sopenharmony_ci slew-rate = <2>; 3668c2ecf20Sopenharmony_ci }; 3678c2ecf20Sopenharmony_ci }; 3688c2ecf20Sopenharmony_ci 3698c2ecf20Sopenharmony_ci spi5_pins: spi5-0 { 3708c2ecf20Sopenharmony_ci pins1 { 3718c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('F', 7, AF5)>, 3728c2ecf20Sopenharmony_ci /* SPI5_CLK */ 3738c2ecf20Sopenharmony_ci <STM32_PINMUX('F', 9, AF5)>; 3748c2ecf20Sopenharmony_ci /* SPI5_MOSI */ 3758c2ecf20Sopenharmony_ci bias-disable; 3768c2ecf20Sopenharmony_ci drive-push-pull; 3778c2ecf20Sopenharmony_ci slew-rate = <0>; 3788c2ecf20Sopenharmony_ci }; 3798c2ecf20Sopenharmony_ci pins2 { 3808c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('F', 8, AF5)>; 3818c2ecf20Sopenharmony_ci /* SPI5_MISO */ 3828c2ecf20Sopenharmony_ci bias-disable; 3838c2ecf20Sopenharmony_ci }; 3848c2ecf20Sopenharmony_ci }; 3858c2ecf20Sopenharmony_ci 3868c2ecf20Sopenharmony_ci i2c3_pins: i2c3-0 { 3878c2ecf20Sopenharmony_ci pins { 3888c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('C', 9, AF4)>, 3898c2ecf20Sopenharmony_ci /* I2C3_SDA */ 3908c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 8, AF4)>; 3918c2ecf20Sopenharmony_ci /* I2C3_SCL */ 3928c2ecf20Sopenharmony_ci bias-disable; 3938c2ecf20Sopenharmony_ci drive-open-drain; 3948c2ecf20Sopenharmony_ci slew-rate = <3>; 3958c2ecf20Sopenharmony_ci }; 3968c2ecf20Sopenharmony_ci }; 3978c2ecf20Sopenharmony_ci 3988c2ecf20Sopenharmony_ci dcmi_pins: dcmi-0 { 3998c2ecf20Sopenharmony_ci pins { 4008c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('A', 4, AF13)>, /* DCMI_HSYNC */ 4018c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 7, AF13)>, /* DCMI_VSYNC */ 4028c2ecf20Sopenharmony_ci <STM32_PINMUX('A', 6, AF13)>, /* DCMI_PIXCLK */ 4038c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 6, AF13)>, /* DCMI_D0 */ 4048c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 7, AF13)>, /* DCMI_D1 */ 4058c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 8, AF13)>, /* DCMI_D2 */ 4068c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 9, AF13)>, /* DCMI_D3 */ 4078c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 11, AF13)>, /*DCMI_D4 */ 4088c2ecf20Sopenharmony_ci <STM32_PINMUX('D', 3, AF13)>, /* DCMI_D5 */ 4098c2ecf20Sopenharmony_ci <STM32_PINMUX('B', 8, AF13)>, /* DCMI_D6 */ 4108c2ecf20Sopenharmony_ci <STM32_PINMUX('E', 6, AF13)>, /* DCMI_D7 */ 4118c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 10, AF13)>, /* DCMI_D8 */ 4128c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 12, AF13)>, /* DCMI_D9 */ 4138c2ecf20Sopenharmony_ci <STM32_PINMUX('D', 6, AF13)>, /* DCMI_D10 */ 4148c2ecf20Sopenharmony_ci <STM32_PINMUX('D', 2, AF13)>; /* DCMI_D11 */ 4158c2ecf20Sopenharmony_ci bias-disable; 4168c2ecf20Sopenharmony_ci drive-push-pull; 4178c2ecf20Sopenharmony_ci slew-rate = <3>; 4188c2ecf20Sopenharmony_ci }; 4198c2ecf20Sopenharmony_ci }; 4208c2ecf20Sopenharmony_ci 4218c2ecf20Sopenharmony_ci sdio_pins: sdio-pins-0 { 4228c2ecf20Sopenharmony_ci pins { 4238c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDIO_D0 */ 4248c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 9, AF12)>, /* SDIO_D1 */ 4258c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 10, AF12)>, /* SDIO_D2 */ 4268c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 11, AF12)>, /* SDIO_D3 */ 4278c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 12, AF12)>, /* SDIO_CK */ 4288c2ecf20Sopenharmony_ci <STM32_PINMUX('D', 2, AF12)>; /* SDIO_CMD */ 4298c2ecf20Sopenharmony_ci drive-push-pull; 4308c2ecf20Sopenharmony_ci slew-rate = <2>; 4318c2ecf20Sopenharmony_ci }; 4328c2ecf20Sopenharmony_ci }; 4338c2ecf20Sopenharmony_ci 4348c2ecf20Sopenharmony_ci sdio_pins_od: sdio-pins-od-0 { 4358c2ecf20Sopenharmony_ci pins1 { 4368c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('C', 8, AF12)>, /* SDIO_D0 */ 4378c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 9, AF12)>, /* SDIO_D1 */ 4388c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 10, AF12)>, /* SDIO_D2 */ 4398c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 11, AF12)>, /* SDIO_D3 */ 4408c2ecf20Sopenharmony_ci <STM32_PINMUX('C', 12, AF12)>; /* SDIO_CK */ 4418c2ecf20Sopenharmony_ci drive-push-pull; 4428c2ecf20Sopenharmony_ci slew-rate = <2>; 4438c2ecf20Sopenharmony_ci }; 4448c2ecf20Sopenharmony_ci 4458c2ecf20Sopenharmony_ci pins2 { 4468c2ecf20Sopenharmony_ci pinmux = <STM32_PINMUX('D', 2, AF12)>; /* SDIO_CMD */ 4478c2ecf20Sopenharmony_ci drive-open-drain; 4488c2ecf20Sopenharmony_ci slew-rate = <2>; 4498c2ecf20Sopenharmony_ci }; 4508c2ecf20Sopenharmony_ci }; 4518c2ecf20Sopenharmony_ci }; 4528c2ecf20Sopenharmony_ci }; 4538c2ecf20Sopenharmony_ci}; 454