1// SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause) 2/* 3 * Copyright (C) STMicroelectronics 2025 - All Rights Reserved 4 * Author: Amelie Delaunay <amelie.delaunay@foss.st.com> for STMicroelectronics. 5 */ 6 7/dts-v1/; 8 9#include "stm32mp157.dtsi" 10#include "stm32mp15xf.dtsi" 11#include "stm32mp15-pinctrl.dtsi" 12#include "stm32mp15xxac-pinctrl.dtsi" 13#include "stm32mp15xx-dkx.dtsi" 14#include "stm32mp157f-dk2-scmi.dtsi" 15 16/ { 17 model = "STMicroelectronics STM32MP157F-DK2 Discovery Board"; 18 compatible = "st,stm32mp157f-dk2", "st,stm32mp157"; 19 20 aliases { 21 ethernet0 = ðernet0; 22 serial3 = &usart2; 23 }; 24 25 chosen { 26 stdout-path = "serial0:115200n8"; 27 }; 28 29 wifi_pwrseq: wifi-pwrseq { 30 compatible = "mmc-pwrseq-simple"; 31 reset-gpios = <&gpioh 4 GPIO_ACTIVE_LOW>; 32 }; 33}; 34 35&arm_wdt { 36 timeout-sec = <32>; 37 status = "okay"; 38}; 39 40&cryp1 { 41 status = "okay"; 42}; 43 44&dsi { 45 #address-cells = <1>; 46 #size-cells = <0>; 47 status = "okay"; 48 49 panel@0 { 50 compatible = "orisetech,otm8009a"; 51 reg = <0>; 52 reset-gpios = <&gpioe 4 GPIO_ACTIVE_LOW>; 53 power-supply = <&scmi_v3v3>; 54 status = "okay"; 55 56 port { 57 panel_in: endpoint { 58 remote-endpoint = <&dsi_out>; 59 }; 60 }; 61 }; 62}; 63 64&dsi_in { 65 remote-endpoint = <<dc_ep1_out>; 66}; 67 68&dsi_out { 69 remote-endpoint = <&panel_in>; 70}; 71 72&i2c1 { 73 touchscreen@38 { 74 compatible = "focaltech,ft6236"; 75 reg = <0x38>; 76 interrupts = <2 IRQ_TYPE_EDGE_FALLING>; 77 interrupt-parent = <&gpiof>; 78 touchscreen-size-x = <480>; 79 touchscreen-size-y = <800>; 80 status = "okay"; 81 }; 82}; 83 84/* I2C4 is managed by OP-TEE */ 85&i2c4 { 86 status = "disabled"; 87 88 /* i2c4 subnodes, which won't be managed by Linux */ 89 typec@28 { 90 status = "disabled"; 91 connector { 92 status = "disabled"; 93 }; 94 }; 95 96 stpmic@33 { 97 status = "disabled"; 98 }; 99}; 100 101<dc { 102 status = "okay"; 103 104 port { 105 #address-cells = <1>; 106 #size-cells = <0>; 107 108 ltdc_ep1_out: endpoint@1 { 109 reg = <1>; 110 remote-endpoint = <&dsi_in>; 111 }; 112 }; 113}; 114 115&rtc { 116 pinctrl-names = "default"; 117 pinctrl-0 = <&rtc_rsvd_pins_a>; 118 119 rtc_lsco_pins_a: rtc-lsco-0 { 120 pins = "out2_rmp"; 121 function = "lsco"; 122 }; 123}; 124 125/* Wifi */ 126&sdmmc2 { 127 pinctrl-names = "default", "opendrain", "sleep"; 128 pinctrl-0 = <&sdmmc2_b4_pins_a>; 129 pinctrl-1 = <&sdmmc2_b4_od_pins_a>; 130 pinctrl-2 = <&sdmmc2_b4_sleep_pins_a>; 131 non-removable; 132 cap-sdio-irq; 133 st,neg-edge; 134 bus-width = <4>; 135 vmmc-supply = <&scmi_v3v3>; 136 mmc-pwrseq = <&wifi_pwrseq>; 137 #address-cells = <1>; 138 #size-cells = <0>; 139 status = "okay"; 140 141 brcmf: wifi@1 { 142 reg = <1>; 143 compatible = "brcm,bcm4329-fmac"; 144 pinctrl-names = "default"; 145 pinctrl-0 = <&rtc_lsco_pins_a>; 146 }; 147}; 148 149/* Bluetooth */ 150&usart2 { 151 pinctrl-names = "default", "sleep", "idle"; 152 pinctrl-0 = <&usart2_pins_c>; 153 pinctrl-1 = <&usart2_sleep_pins_c>; 154 pinctrl-2 = <&usart2_idle_pins_c>; 155 uart-has-rtscts; 156 status = "okay"; 157 158 bluetooth { 159 shutdown-gpios = <&gpioz 6 GPIO_ACTIVE_HIGH>; 160 compatible = "brcm,bcm43438-bt"; 161 max-speed = <3000000>; 162 vbat-supply = <&scmi_v3v3>; 163 vddio-supply = <&scmi_v3v3>; 164 }; 165}; 166 167/* Since I2C4 is disabled, STUSB1600 is also disabled so there is no Type-C support */ 168&usbotg_hs { 169 dr_mode = "peripheral"; 170 role-switch-default-mode = "peripheral"; 171 /* 172 * Forcing dr_mode = "peripheral"/"role-switch-default-mode = "peripheral"; 173 * will cause the pull-up on D+/D- to be raised as soon as the OTG is configured at runtime, 174 * regardless of the presence of VBUS. Notice that on self-powered devices like 175 * stm32mp157f-dk2, this isn't compliant with the USB standard. That's why usbotg_hs is kept 176 * disabled here. 177 */ 178 status = "disabled"; 179}; 180