Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ARM: dts: stm32: Add support for the emtrion emSBC-Argon

This patch presents the DT patches for the emtrion GmbH
Argon board series. They are available with STM32MP157
from STMicroelectronics with 512 MByte Memory.

The devicetree stm32mp157c-emstamp-argon.dtsi is the common part
providing the module components and the basic support for the SoC.
The support for the emSBC-Argon baseboard in the developer-kit
configuration is provided by the stm32mp157c-emsbc-argon.dts file.

Signed-off-by: Reinhold Mueller <reinhold.mueller@emtrion.com>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>

authored by

Reinhold Mueller and committed by
Alexandre Torgue
16e3e44c 7f25465e

+698
+1
arch/arm/boot/dts/Makefile
··· 1161 1161 stm32mp157c-dhcom-picoitx.dtb \ 1162 1162 stm32mp157c-dk2.dtb \ 1163 1163 stm32mp157c-ed1.dtb \ 1164 + stm32mp157c-emsbc-argon.dtb \ 1164 1165 stm32mp157c-ev1.dtb \ 1165 1166 stm32mp157c-lxa-mc1.dtb \ 1166 1167 stm32mp157c-odyssey.dtb
+92
arch/arm/boot/dts/stm32mp15-pinctrl.dtsi
··· 338 338 }; 339 339 }; 340 340 341 + ethernet0_rmii_pins_b: rmii-1 { 342 + pins1 { 343 + pinmux = <STM32_PINMUX('B', 5, AF0)>, /* ETH1_CLK */ 344 + <STM32_PINMUX('C', 1, AF11)>, /* ETH1_MDC */ 345 + <STM32_PINMUX('G', 13, AF11)>, /* ETH1_TXD0 */ 346 + <STM32_PINMUX('G', 14, AF11)>; /* ETH1_TXD1 */ 347 + bias-disable; 348 + drive-push-pull; 349 + slew-rate = <1>; 350 + }; 351 + pins2 { 352 + pinmux = <STM32_PINMUX('A', 2, AF11)>; /* ETH1_MDIO */ 353 + bias-disable; 354 + drive-push-pull; 355 + slew-rate = <0>; 356 + }; 357 + pins3 { 358 + pinmux = <STM32_PINMUX('A', 7, AF11)>, /* ETH1_CRS_DV */ 359 + <STM32_PINMUX('C', 4, AF11)>, /* ETH1_RXD0 */ 360 + <STM32_PINMUX('C', 5, AF11)>; /* ETH1_RXD1 */ 361 + bias-disable; 362 + }; 363 + pins4 { 364 + pinmux = <STM32_PINMUX('B', 11, AF11)>; /* ETH1_TX_EN */ 365 + }; 366 + }; 367 + 368 + ethernet0_rmii_sleep_pins_b: rmii-sleep-1 { 369 + pins1 { 370 + pinmux = <STM32_PINMUX('A', 2, ANALOG)>, /* ETH1_MDIO */ 371 + <STM32_PINMUX('A', 7, ANALOG)>, /* ETH1_CRS_DV */ 372 + <STM32_PINMUX('B', 5, ANALOG)>, /* ETH1_CLK */ 373 + <STM32_PINMUX('B', 11, ANALOG)>, /* ETH1_TX_EN */ 374 + <STM32_PINMUX('C', 1, ANALOG)>, /* ETH1_MDC */ 375 + <STM32_PINMUX('C', 4, ANALOG)>, /* ETH1_RXD0 */ 376 + <STM32_PINMUX('C', 5, ANALOG)>, /* ETH1_RXD1 */ 377 + <STM32_PINMUX('G', 13, ANALOG)>, /* ETH1_TXD0 */ 378 + <STM32_PINMUX('G', 14, ANALOG)>; /* ETH1_TXD1 */ 379 + }; 380 + }; 381 + 341 382 fmc_pins_a: fmc-0 { 342 383 pins1 { 343 384 pinmux = <STM32_PINMUX('D', 4, AF12)>, /* FMC_NOE */ ··· 965 924 pinmux = <STM32_PINMUX('E', 9, ANALOG)>, /* TIM1_CH1 */ 966 925 <STM32_PINMUX('E', 11, ANALOG)>, /* TIM1_CH2 */ 967 926 <STM32_PINMUX('E', 14, ANALOG)>; /* TIM1_CH4 */ 927 + }; 928 + }; 929 + 930 + pwm1_pins_b: pwm1-1 { 931 + pins { 932 + pinmux = <STM32_PINMUX('E', 9, AF1)>; /* TIM1_CH1 */ 933 + bias-pull-down; 934 + drive-push-pull; 935 + slew-rate = <0>; 936 + }; 937 + }; 938 + 939 + pwm1_sleep_pins_b: pwm1-sleep-1 { 940 + pins { 941 + pinmux = <STM32_PINMUX('E', 9, ANALOG)>; /* TIM1_CH1 */ 968 942 }; 969 943 }; 970 944 ··· 2095 2039 <STM32_PINMUX('G', 8, ANALOG)>, /* USART3_RTS */ 2096 2040 <STM32_PINMUX('B', 13, ANALOG)>, /* USART3_CTS_NSS */ 2097 2041 <STM32_PINMUX('B', 12, ANALOG)>; /* USART3_RX */ 2042 + }; 2043 + }; 2044 + 2045 + usart3_pins_d: usart3-3 { 2046 + pins1 { 2047 + pinmux = <STM32_PINMUX('B', 10, AF7)>, /* USART3_TX */ 2048 + <STM32_PINMUX('G', 8, AF8)>; /* USART3_RTS */ 2049 + bias-disable; 2050 + drive-push-pull; 2051 + slew-rate = <0>; 2052 + }; 2053 + pins2 { 2054 + pinmux = <STM32_PINMUX('D', 9, AF7)>, /* USART3_RX */ 2055 + <STM32_PINMUX('D', 11, AF7)>; /* USART3_CTS_NSS */ 2056 + bias-disable; 2057 + }; 2058 + }; 2059 + 2060 + usart3_idle_pins_d: usart3-idle-3 { 2061 + pins1 { 2062 + pinmux = <STM32_PINMUX('B', 10, ANALOG)>, /* USART3_TX */ 2063 + <STM32_PINMUX('G', 8, ANALOG)>, /* USART3_RTS */ 2064 + <STM32_PINMUX('D', 11, ANALOG)>; /* USART3_CTS_NSS */ 2065 + }; 2066 + pins2 { 2067 + pinmux = <STM32_PINMUX('D', 9, AF7)>; /* USART3_RX */ 2068 + bias-disable; 2069 + }; 2070 + }; 2071 + 2072 + usart3_sleep_pins_d: usart3-sleep-3 { 2073 + pins { 2074 + pinmux = <STM32_PINMUX('B', 10, ANALOG)>, /* USART3_TX */ 2075 + <STM32_PINMUX('G', 8, ANALOG)>, /* USART3_RTS */ 2076 + <STM32_PINMUX('D', 11, ANALOG)>, /* USART3_CTS_NSS */ 2077 + <STM32_PINMUX('D', 9, ANALOG)>; /* USART3_RX */ 2098 2078 }; 2099 2079 }; 2100 2080
+53
arch/arm/boot/dts/stm32mp157c-emsbc-argon.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0 or MIT) 2 + // 3 + // Copyright (c) 2021 emtrion GmbH 4 + // Author: Reinhold Müller <reinhold.mueller@emtrion.de>. 5 + // 6 + 7 + /dts-v1/; 8 + 9 + #include "stm32mp157c-emstamp-argon.dtsi" 10 + 11 + / { 12 + model = "emtrion STM32MP157C emSBC-Argon Developer Board"; 13 + compatible = "emtrion,stm32mp157c-emsbc-argon", "emtrion,stm32mp157c-emstamp-argon", 14 + "st,stm32mp157"; 15 + 16 + led: gpio_leds { 17 + compatible = "gpio-leds"; 18 + led-2 { 19 + label = "red"; 20 + gpios = <&gpiof 12 GPIO_ACTIVE_LOW>; 21 + linux,default-trigger = "none"; 22 + default-state = "off"; 23 + }; 24 + led-3 { 25 + label = "green"; 26 + gpios = <&gpioe 7 GPIO_ACTIVE_LOW>; 27 + linux,default-trigger = "none"; 28 + default-state = "off"; 29 + }; 30 + }; 31 + }; 32 + 33 + &dac { 34 + status = "okay"; 35 + }; 36 + 37 + &sdmmc1 { 38 + pinctrl-names = "default", "opendrain", "sleep"; 39 + pinctrl-0 = <&sdmmc1_b4_pins_a>; 40 + pinctrl-1 = <&sdmmc1_b4_od_pins_a>; 41 + pinctrl-2 = <&sdmmc1_b4_sleep_pins_a>; 42 + cd-gpios = <&gpiob 7 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 43 + disable-wp; 44 + st,neg-edge; 45 + bus-width = <4>; 46 + vmmc-supply = <&vdd_sd>; 47 + status = "okay"; 48 + }; 49 + 50 + &spi1 { 51 + status = "okay"; 52 + }; 53 +
+552
arch/arm/boot/dts/stm32mp157c-emstamp-argon.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0 or MIT) 2 + // 3 + // Copyright (c) 2021 emtrion GmbH 4 + // Author: Reinhold Müller <reinhold.mueller@emtrion.de>. 5 + // 6 + 7 + #include "stm32mp157.dtsi" 8 + #include "stm32mp15xc.dtsi" 9 + #include "stm32mp15-pinctrl.dtsi" 10 + #include "stm32mp15xxac-pinctrl.dtsi" 11 + #include <dt-bindings/gpio/gpio.h> 12 + #include <dt-bindings/mfd/st,stpmic1.h> 13 + 14 + / { 15 + aliases { 16 + ethernet0 = &ethernet0; 17 + serial0 = &uart4; 18 + serial1 = &usart2; 19 + serial2 = &usart3; 20 + }; 21 + 22 + chosen { 23 + stdout-path = "serial0:115200n8"; 24 + }; 25 + 26 + memory@c0000000 { 27 + device_type = "memory"; 28 + reg = <0xc0000000 0x20000000>; 29 + }; 30 + 31 + reserved-memory { 32 + #address-cells = <1>; 33 + #size-cells = <1>; 34 + ranges; 35 + 36 + mcuram2: mcuram2@10000000 { 37 + compatible = "shared-dma-pool"; 38 + reg = <0x10000000 0x40000>; 39 + no-map; 40 + }; 41 + 42 + vdev0vring0: vdev0vring0@10040000 { 43 + compatible = "shared-dma-pool"; 44 + reg = <0x10040000 0x2000>; 45 + no-map; 46 + }; 47 + 48 + vdev0vring1: vdev0vring1@10042000 { 49 + compatible = "shared-dma-pool"; 50 + reg = <0x10042000 0x2000>; 51 + no-map; 52 + }; 53 + 54 + vdev0buffer: vdev0buffer@10044000 { 55 + compatible = "shared-dma-pool"; 56 + reg = <0x10044000 0x4000>; 57 + no-map; 58 + }; 59 + 60 + mcuram: mcuram@30000000 { 61 + compatible = "shared-dma-pool"; 62 + reg = <0x30000000 0x40000>; 63 + no-map; 64 + }; 65 + 66 + retram: retram@38000000 { 67 + compatible = "shared-dma-pool"; 68 + reg = <0x38000000 0x10000>; 69 + no-map; 70 + }; 71 + 72 + gpu_reserved: gpu@dc000000 { 73 + reg = <0xdc000000 0x4000000>; 74 + no-map; 75 + }; 76 + }; 77 + 78 + led: gpio_leds { 79 + compatible = "gpio-leds"; 80 + led-0 { 81 + label = "panic"; 82 + gpios = <&gpioa 13 GPIO_ACTIVE_LOW>; 83 + linux,default-trigger = "none"; 84 + default-state = "off"; 85 + panic-indicator; 86 + }; 87 + led-1 { 88 + label = "heartbeat"; 89 + gpios = <&gpioa 14 GPIO_ACTIVE_LOW>; 90 + linux,default-trigger = "heartbeat"; 91 + default-state = "on"; 92 + }; 93 + }; 94 + }; 95 + 96 + &adc { 97 + vdd-supply = <&vdd>; 98 + vdda-supply = <&vdd>; 99 + vref-supply = <&vrefbuf>; 100 + status = "okay"; 101 + 102 + adc1: adc@0 { 103 + pinctrl-names = "default"; 104 + pinctrl-0 = <&adc1_in6_pins_a>; 105 + st,min-sample-time-nsecs = <5000>; 106 + st,adc-channels = <6>; 107 + status = "disabled"; 108 + }; 109 + 110 + adc2: adc@100 { 111 + #address-cells = <1>; 112 + #size-cells = <0>; 113 + status = "okay"; 114 + channel@12 { 115 + reg = <12>; 116 + label = "sense_temp"; 117 + st,min-sample-time-ns = <9000>; 118 + }; 119 + channel@15 { 120 + reg = <15>; 121 + label = "vbat"; 122 + st,min-sample-time-ns = <9000>; 123 + }; 124 + channel@16 { 125 + reg = <16>; 126 + label = "dac_out1"; 127 + st,min-sample-time-ns = <9000>; 128 + }; 129 + channel@17 { 130 + reg = <17>; 131 + label = "dac_out1"; 132 + st,min-sample-time-ns = <9000>; 133 + }; 134 + }; 135 + }; 136 + 137 + &crc1 { 138 + status = "okay"; 139 + }; 140 + 141 + &cryp1 { 142 + status = "okay"; 143 + }; 144 + 145 + &dac { 146 + pinctrl-names = "default"; 147 + pinctrl-0 = <&dac_ch1_pins_a &dac_ch2_pins_a>; 148 + vref-supply = <&vdda>; 149 + status = "disabled"; 150 + 151 + dac1: dac@1 { 152 + status = "okay"; 153 + }; 154 + dac2: dac@2 { 155 + status = "okay"; 156 + }; 157 + }; 158 + 159 + &dts { 160 + status = "okay"; 161 + }; 162 + 163 + &ethernet0 { 164 + status = "okay"; 165 + snps,reset-gpio = <&gpioa 1 GPIO_ACTIVE_LOW>; 166 + snps,reset-active-low; 167 + snps,reset-delays-us = <0 30000 50000>; 168 + pinctrl-0 = <&ethernet0_rmii_pins_b>; 169 + pinctrl-1 = <&ethernet0_rmii_sleep_pins_b>; 170 + pinctrl-names = "default", "sleep"; 171 + phy-mode = "rmii"; 172 + max-speed = <100>; 173 + phy-handle = <&phy0>; 174 + st,eth-ref-clk-sel; 175 + 176 + mdio0 { 177 + #address-cells = <1>; 178 + #size-cells = <0>; 179 + compatible = "snps,dwmac-mdio"; 180 + phy0: ethernet-phy@0 { 181 + reg = <0>; 182 + }; 183 + }; 184 + }; 185 + 186 + &gpu { 187 + contiguous-area = <&gpu_reserved>; 188 + }; 189 + 190 + &hash1 { 191 + status = "okay"; 192 + }; 193 + 194 + &i2c1 { 195 + pinctrl-names = "default", "sleep"; 196 + pinctrl-0 = <&i2c1_pins_a>; 197 + pinctrl-1 = <&i2c1_sleep_pins_a>; 198 + i2c-scl-rising-time-ns = <100>; 199 + i2c-scl-falling-time-ns = <7>; 200 + status = "disabled"; 201 + /delete-property/dmas; 202 + /delete-property/dma-names; 203 + }; 204 + 205 + &i2c4 { 206 + pinctrl-names = "default", "sleep"; 207 + pinctrl-0 = <&i2c4_pins_a>; 208 + pinctrl-1 = <&i2c4_sleep_pins_a>; 209 + i2c-scl-rising-time-ns = <185>; 210 + i2c-scl-falling-time-ns = <20>; 211 + status = "okay"; 212 + /delete-property/dmas; 213 + /delete-property/dma-names; 214 + 215 + pmic: stpmic@33 { 216 + compatible = "st,stpmic1"; 217 + reg = <0x33>; 218 + interrupts-extended = <&gpioa 0 IRQ_TYPE_EDGE_FALLING>; 219 + interrupt-controller; 220 + #interrupt-cells = <2>; 221 + status = "okay"; 222 + 223 + regulators { 224 + compatible = "st,stpmic1-regulators"; 225 + 226 + ldo1-supply = <&v3v3>; 227 + ldo3-supply = <&vdd_ddr>; 228 + ldo6-supply = <&v3v3>; 229 + pwr_sw1-supply = <&bst_out>; 230 + pwr_sw2-supply = <&bst_out>; 231 + 232 + vddcore: buck1 { 233 + regulator-name = "vddcore"; 234 + regulator-min-microvolt = <1200000>; 235 + regulator-max-microvolt = <1350000>; 236 + regulator-always-on; 237 + regulator-initial-mode = <0>; 238 + regulator-over-current-protection; 239 + }; 240 + 241 + vdd_ddr: buck2 { 242 + regulator-name = "vdd_ddr"; 243 + regulator-min-microvolt = <1350000>; 244 + regulator-max-microvolt = <1350000>; 245 + regulator-always-on; 246 + regulator-initial-mode = <0>; 247 + regulator-over-current-protection; 248 + }; 249 + 250 + vdd: buck3 { 251 + regulator-name = "vdd"; 252 + regulator-min-microvolt = <3300000>; 253 + regulator-max-microvolt = <3300000>; 254 + regulator-always-on; 255 + st,mask-reset; 256 + regulator-initial-mode = <0>; 257 + regulator-over-current-protection; 258 + }; 259 + 260 + v3v3: buck4 { 261 + regulator-name = "v3v3"; 262 + regulator-min-microvolt = <3300000>; 263 + regulator-max-microvolt = <3300000>; 264 + regulator-always-on; 265 + regulator-over-current-protection; 266 + regulator-initial-mode = <0>; 267 + }; 268 + 269 + v1v8_audio: ldo1 { 270 + regulator-name = "v1v8_audio"; 271 + regulator-min-microvolt = <1800000>; 272 + regulator-max-microvolt = <1800000>; 273 + regulator-always-on; 274 + interrupts = <IT_CURLIM_LDO1 0>; 275 + }; 276 + 277 + v3v3_hdmi: ldo2 { 278 + regulator-name = "v3v3_hdmi"; 279 + regulator-min-microvolt = <3300000>; 280 + regulator-max-microvolt = <3300000>; 281 + regulator-always-on; 282 + interrupts = <IT_CURLIM_LDO2 0>; 283 + }; 284 + 285 + vtt_ddr: ldo3 { 286 + regulator-name = "vtt_ddr"; 287 + regulator-min-microvolt = <500000>; 288 + regulator-max-microvolt = <750000>; 289 + regulator-always-on; 290 + regulator-over-current-protection; 291 + }; 292 + 293 + vdd_usb: ldo4 { 294 + regulator-name = "vdd_usb"; 295 + regulator-min-microvolt = <3300000>; 296 + regulator-max-microvolt = <3300000>; 297 + interrupts = <IT_CURLIM_LDO4 0>; 298 + }; 299 + 300 + vdd_sd: ldo5 { 301 + regulator-name = "vdd_sd"; 302 + regulator-min-microvolt = <3300000>; 303 + regulator-max-microvolt = <3300000>; 304 + interrupts = <IT_CURLIM_LDO5 0>; 305 + regulator-always-on; 306 + }; 307 + 308 + vdda: ldo6 { 309 + regulator-name = "vdda"; 310 + regulator-min-microvolt = <2900000>; 311 + regulator-max-microvolt = <2900000>; 312 + regulator-always-on; 313 + interrupts = <IT_CURLIM_LDO6 0>; 314 + regulator-boot-on; 315 + }; 316 + 317 + vref_ddr: vref_ddr { 318 + regulator-name = "vref_ddr"; 319 + regulator-always-on; 320 + regulator-over-current-protection; 321 + }; 322 + 323 + bst_out: boost { 324 + regulator-name = "bst_out"; 325 + interrupts = <IT_OCP_BOOST 0>; 326 + }; 327 + 328 + vbus_otg: pwr_sw1 { 329 + regulator-name = "vbus_otg"; 330 + interrupts = <IT_OCP_OTG 0>; 331 + regulator-active-discharge; 332 + }; 333 + 334 + vbus_usbh: pwr_sw2 { 335 + regulator-name = "usbh_vbus"; 336 + interrupts = <IT_OCP_SWOUT 0>; 337 + regulator-always-on; 338 + regulator-boot-on; 339 + }; 340 + }; 341 + 342 + onkey { 343 + compatible = "st,stpmic1-onkey"; 344 + interrupts = <IT_PONKEY_F 0>, <IT_PONKEY_R 1>; 345 + interrupt-names = "onkey-falling", "onkey-rising"; 346 + status = "okay"; 347 + }; 348 + 349 + watchdog { 350 + compatible = "st,stpmic1-wdt"; 351 + status = "disabled"; 352 + }; 353 + }; 354 + }; 355 + 356 + &i2c5 { 357 + pinctrl-names = "default", "sleep"; 358 + pinctrl-0 = <&i2c5_pins_a>; 359 + pinctrl-1 = <&i2c5_sleep_pins_a>; 360 + i2c-scl-rising-time-ns = <185>; 361 + i2c-scl-falling-time-ns = <20>; 362 + /delete-property/dmas; 363 + /delete-property/dma-names; 364 + }; 365 + 366 + &ipcc { 367 + status = "okay"; 368 + }; 369 + 370 + &iwdg2 { 371 + timeout-sec = <32>; 372 + status = "okay"; 373 + }; 374 + 375 + &m4_rproc { 376 + memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, 377 + <&vdev0vring1>, <&vdev0buffer>; 378 + mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; 379 + mbox-names = "vq0", "vq1", "shutdown"; 380 + interrupt-parent = <&exti>; 381 + interrupts = <68 1>; 382 + interrupt-names = "wdg"; 383 + recovery; 384 + status = "okay"; 385 + }; 386 + 387 + &pwr_regulators { 388 + vdd-supply = <&vdd>; 389 + vdd_3v3_usbfs-supply = <&vdd_usb>; 390 + }; 391 + 392 + &qspi { 393 + pinctrl-names = "default", "sleep"; 394 + pinctrl-0 = <&qspi_clk_pins_a &qspi_bk1_pins_a>; 395 + pinctrl-1 = <&qspi_clk_sleep_pins_a &qspi_bk1_sleep_pins_a>; 396 + reg = <0x58003000 0x1000>, <0x70000000 0x4000000>; 397 + #address-cells = <1>; 398 + #size-cells = <0>; 399 + status = "okay"; 400 + 401 + flash0: is25lp016d@0 { 402 + compatible = "jedec,spi-nor"; 403 + reg = <0>; 404 + spi-max-frequency = <133000000>; 405 + spi-rx-bus-width = <1>; 406 + spi-tx-bus-width = <1>; 407 + #address-cells = <1>; 408 + #size-cells = <1>; 409 + }; 410 + }; 411 + 412 + &rng1 { 413 + status = "okay"; 414 + }; 415 + 416 + &rtc { 417 + status = "okay"; 418 + }; 419 + 420 + &sdmmc2 { 421 + arm,primecell-periphid = <0x10153180>; 422 + pinctrl-names = "default", "opendrain", "sleep"; 423 + pinctrl-0 = <&sdmmc2_b4_pins_b>; 424 + pinctrl-1 = <&sdmmc2_b4_od_pins_b>; 425 + pinctrl-2 = <&sdmmc2_b4_sleep_pins_a>; 426 + non-removable; 427 + st,neg-edge; 428 + bus-width = <4>; 429 + vmmc-supply = <&v3v3>; 430 + status = "okay"; 431 + }; 432 + 433 + &spi1 { 434 + pinctrl-names = "default"; 435 + pinctrl-0 = <&spi1_pins_a>; 436 + cs-gpios = <&gpioz 3 0>; 437 + status = "disabled"; 438 + 439 + spidev@0 { 440 + compatible = "spidev"; 441 + reg = <0>; 442 + spi-max-frequency = <100000>; 443 + }; 444 + }; 445 + 446 + &timers1 { 447 + /* spare dmas for other usage */ 448 + /delete-property/dmas; 449 + /delete-property/dma-names; 450 + pwm { 451 + pinctrl-0 = <&pwm1_pins_b>; 452 + pinctrl-1 = <&pwm1_sleep_pins_b>; 453 + pinctrl-names = "default", "sleep"; 454 + status = "okay"; 455 + }; 456 + timer@0 { 457 + status = "okay"; 458 + }; 459 + }; 460 + 461 + &timers4 { 462 + /delete-property/dmas; 463 + /delete-property/dma-names; 464 + pwm { 465 + pinctrl-0 = <&pwm4_pins_b>; 466 + pinctrl-1 = <&pwm4_sleep_pins_b>; 467 + pinctrl-names = "default", "sleep"; 468 + status = "okay"; 469 + }; 470 + timer@3 { 471 + status = "okay"; 472 + }; 473 + }; 474 + 475 + &timers5 { 476 + /delete-property/dmas; 477 + /delete-property/dma-names; 478 + pwm { 479 + pinctrl-0 = <&pwm5_pins_a>; 480 + pinctrl-1 = <&pwm5_sleep_pins_a>; 481 + pinctrl-names = "default", "sleep"; 482 + status = "okay"; 483 + }; 484 + timer@4 { 485 + status = "okay"; 486 + }; 487 + }; 488 + 489 + &uart4 { 490 + pinctrl-names = "default", "sleep", "idle"; 491 + pinctrl-0 = <&uart4_pins_a>; 492 + pinctrl-1 = <&uart4_sleep_pins_a>; 493 + pinctrl-2 = <&uart4_idle_pins_a>; 494 + status = "okay"; 495 + }; 496 + 497 + &usart2 { 498 + pinctrl-names = "default", "sleep"; 499 + pinctrl-0 = <&usart2_pins_a>; 500 + pinctrl-1 = <&usart2_sleep_pins_a>; 501 + status = "okay"; 502 + }; 503 + 504 + &usart3 { 505 + pinctrl-names = "default", "sleep", "idle"; 506 + pinctrl-0 = <&usart3_pins_d>; 507 + pinctrl-1 = <&usart3_sleep_pins_d>; 508 + pinctrl-2 = <&usart3_idle_pins_d>; 509 + status = "okay"; 510 + }; 511 + 512 + &usbh_ehci { 513 + phys = <&usbphyc_port0>; 514 + phy-names = "usb"; 515 + status = "okay"; 516 + }; 517 + 518 + &usbh_ohci { 519 + phys = <&usbphyc_port0>; 520 + phy-names = "usb"; 521 + status = "okay"; 522 + }; 523 + 524 + &usbotg_hs { 525 + dr_mode = "peripheral"; 526 + pinctrl-names = "default"; 527 + pinctrl-0 = <&usbotg_hs_pins_a>; 528 + phy-names = "usb2-phy"; 529 + phys = <&usbphyc_port1 0>; 530 + vbus-supply = <&vbus_otg>; 531 + status = "okay"; 532 + }; 533 + 534 + &usbphyc { 535 + status = "okay"; 536 + }; 537 + 538 + &usbphyc_port0 { 539 + phy-supply = <&vdd_usb>; 540 + }; 541 + 542 + &usbphyc_port1 { 543 + phy-supply = <&vdd_usb>; 544 + }; 545 + 546 + &vrefbuf { 547 + regulator-min-microvolt = <2500000>; 548 + regulator-max-microvolt = <2500000>; 549 + vdda-supply = <&vdd>; 550 + status = "okay"; 551 + }; 552 +