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

Configure Feed

Select the types of activity you want to include in your feed.

ARM: dts: stm32: lxa-fairytux2: add Linux Automation GmbH FairyTux 2

The Linux Automation GmbH FairyTux2 is a small Linux device based on
an Octavo Systems OSD32MP153c SiP, that occupies just two slots on a
DIN rail.

The device contains an eMMC for storage, a gigabit Ethernet
connection, a CAN bus and a RS485 transceiver.

Add support for the lxa-fairytux2 generation 1 and 2 boards based on
the STM32MP153c.

Signed-off-by: Leonard Göhrs <l.goehrs@pengutronix.de>
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Alexandre Torgue <alexandre.torgue@foss.st.com>

authored by

Leonard Göhrs and committed by
Alexandre Torgue
8c6d469f 30eba8c4

+649
+2
arch/arm/boot/dts/st/Makefile
··· 39 39 stm32mp151c-mect1s.dtb \ 40 40 stm32mp153c-dhcom-drc02.dtb \ 41 41 stm32mp153c-dhcor-drc-compact.dtb \ 42 + stm32mp153c-lxa-fairytux2-gen1.dtb \ 43 + stm32mp153c-lxa-fairytux2-gen2.dtb \ 42 44 stm32mp153c-lxa-tac-gen3.dtb \ 43 45 stm32mp153c-mecio1r1.dtb \ 44 46 stm32mp157a-avenger96.dtb \
+103
arch/arm/boot/dts/st/stm32mp153c-lxa-fairytux2-gen1.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) 2 + /* 3 + * Copyright (C) 2024 Leonard Göhrs, Pengutronix 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "stm32mp153c-lxa-fairytux2.dtsi" 9 + 10 + / { 11 + model = "Linux Automation GmbH FairyTux 2 Gen 1"; 12 + compatible = "lxa,stm32mp153c-fairytux2-gen1", "oct,stm32mp153x-osd32", "st,stm32mp153"; 13 + 14 + gpio-keys { 15 + compatible = "gpio-keys"; 16 + 17 + button-left { 18 + label = "USER_BTN1"; 19 + linux,code = <KEY_ESC>; 20 + gpios = <&gpioi 11 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 21 + }; 22 + 23 + button-right { 24 + label = "USER_BTN2"; 25 + linux,code = <KEY_HOME>; 26 + gpios = <&gpioe 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 27 + }; 28 + }; 29 + }; 30 + 31 + &gpiof { 32 + gpio-line-names = "GPIO1", "GPIO2", "", "", "", /* 0 */ 33 + "", "", "", "", "", /* 5 */ 34 + "", "", "", "", "", /* 10 */ 35 + ""; /* 15 */ 36 + }; 37 + 38 + &gpioh { 39 + gpio-line-names = "", "", "", "", "LCD_RESET", /* 0 */ 40 + "", "", "", "", "", /* 5 */ 41 + "", "", "", "GPIO3", "", /* 10 */ 42 + ""; /* 15 */ 43 + }; 44 + 45 + &gpioi { 46 + gpio-line-names = "", "", "", "", "", /* 0 */ 47 + "", "", "", "ETH_", "", /* 5 */ 48 + "", "USER_BTN1"; /* 10 */ 49 + }; 50 + 51 + &i2c1 { 52 + pinctrl-names = "default", "sleep"; 53 + pinctrl-0 = <&i2c1_pins_b>; 54 + pinctrl-1 = <&i2c1_sleep_pins_b>; 55 + status = "okay"; 56 + 57 + io_board_gpio: gpio@20 { 58 + compatible = "ti,tca6408"; 59 + reg = <0x20>; 60 + gpio-controller; 61 + #gpio-cells = <2>; 62 + vcc-supply = <&v3v3_hdmi>; 63 + gpio-line-names = "LED1_GA_YK", "LED2_GA_YK", "LED1_GK_YA", "LED2_GK_YA", 64 + "RS485_EN", "RS485_120R", "", "CAN_120R"; 65 + }; 66 + }; 67 + 68 + &led_controller_io { 69 + /* 70 + * led-2 and led-3 are internally connected antiparallel to one 71 + * another inside the ethernet jack like this: 72 + * GPIO1 ---+---|led-2|>--+--- GPIO3 73 + * +--<|led-3|---+ 74 + * E.g. only one of the LEDs can be illuminated at a time while 75 + * the other output must be driven low. 76 + * This should likely be implemented using a multi color LED 77 + * driver for antiparallel LEDs. 78 + */ 79 + led-2 { 80 + color = <LED_COLOR_ID_GREEN>; 81 + function = LED_FUNCTION_ACTIVITY; 82 + gpios = <&io_board_gpio 1 GPIO_ACTIVE_HIGH>; 83 + }; 84 + 85 + led-3 { 86 + color = <LED_COLOR_ID_ORANGE>; 87 + function = LED_FUNCTION_ACTIVITY; 88 + gpios = <&io_board_gpio 3 GPIO_ACTIVE_HIGH>; 89 + }; 90 + }; 91 + 92 + &usart3 { 93 + /* 94 + * On Gen 1 FairyTux 2 only RTS can be used and not CTS as well, 95 + * Because pins PD11 (CTS) and PI11 (USER_BTN1) share the same 96 + * interrupt and only one of them can be used at a time. 97 + */ 98 + rts-gpios = <&gpiod 12 GPIO_ACTIVE_LOW>; 99 + }; 100 + 101 + &usbotg_hs { 102 + dr_mode = "peripheral"; 103 + };
+147
arch/arm/boot/dts/st/stm32mp153c-lxa-fairytux2-gen2.dts
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) 2 + /* 3 + * Copyright (C) 2024 Leonard Göhrs, Pengutronix 4 + */ 5 + 6 + /dts-v1/; 7 + 8 + #include "stm32mp153c-lxa-fairytux2.dtsi" 9 + 10 + / { 11 + model = "Linux Automation GmbH FairyTux 2 Gen 2"; 12 + compatible = "lxa,stm32mp153c-fairytux2-gen2", "oct,stm32mp153x-osd32", "st,stm32mp153"; 13 + 14 + gpio-keys { 15 + compatible = "gpio-keys"; 16 + 17 + button-left { 18 + label = "USER_BTN1"; 19 + linux,code = <KEY_ESC>; 20 + gpios = <&gpioi 10 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 21 + }; 22 + 23 + button-right { 24 + label = "USER_BTN2"; 25 + linux,code = <KEY_HOME>; 26 + gpios = <&gpioe 9 (GPIO_ACTIVE_LOW | GPIO_PULL_UP)>; 27 + }; 28 + }; 29 + }; 30 + 31 + &gpiof { 32 + gpio-line-names = "", "", "", "", "", /* 0 */ 33 + "", "", "", "", "", /* 5 */ 34 + "", "", "", "", "", /* 10 */ 35 + ""; /* 15 */ 36 + }; 37 + 38 + &gpioh { 39 + gpio-line-names = "", "", "", "", "LCD_RESET", /* 0 */ 40 + "", "", "", "", "", /* 5 */ 41 + "", "", "GPIO1", "GPIO_INT", "", /* 10 */ 42 + ""; /* 15 */ 43 + }; 44 + 45 + &gpioi { 46 + gpio-line-names = "GPIO2", "", "", "", "", /* 0 */ 47 + "", "", "", "ETH_", "", /* 5 */ 48 + "", "USER_BTN1"; /* 10 */ 49 + }; 50 + 51 + &i2c1 { 52 + pinctrl-names = "default", "sleep"; 53 + pinctrl-0 = <&i2c1_pins_b>; 54 + pinctrl-1 = <&i2c1_sleep_pins_b>; 55 + status = "okay"; 56 + 57 + io_board_gpio: gpio@20 { 58 + compatible = "ti,tca6408"; 59 + reg = <0x20>; 60 + gpio-controller; 61 + #gpio-cells = <2>; 62 + interrupt-parent = <&gpioh>; 63 + interrupts = <13 IRQ_TYPE_LEVEL_LOW>; 64 + interrupt-controller; 65 + pinctrl-names = "default"; 66 + pinctrl-0 = <&board_tca6408_pins>; 67 + #interrupt-cells = <2>; 68 + vcc-supply = <&v3v3_hdmi>; 69 + gpio-line-names = "LED1_GA_YK", "LED2_GA_YK", "LED1_GK_YA", "USB_CC_ALERT", 70 + "RS485_EN", "RS485_120R", "USB_CC_RESET", "CAN_120R"; 71 + }; 72 + 73 + usb_c: typec@28 { 74 + compatible = "st,stusb1600"; 75 + reg = <0x28>; 76 + interrupt-parent = <&io_board_gpio>; 77 + interrupts = <3 IRQ_TYPE_EDGE_FALLING>; 78 + vdd-supply = <&reg_5v>; 79 + vsys-supply = <&v3v3_hdmi>; 80 + 81 + connector { 82 + compatible = "usb-c-connector"; 83 + label = "USB-C"; 84 + power-role = "dual"; 85 + typec-power-opmode = "default"; 86 + 87 + port { 88 + con_usbotg_hs_ep: endpoint { 89 + remote-endpoint = <&usbotg_hs_ep>; 90 + }; 91 + }; 92 + }; 93 + }; 94 + 95 + temperature-sensor@48 { 96 + compatible = "national,lm75a"; 97 + reg = <0x48>; 98 + /* 99 + * The sensor itself is powered by a voltage divider from the 100 + * always-on 5V supply. 101 + * The required pull-up resistors however are on v3v3_hdmi. 102 + */ 103 + vs-supply = <&v3v3_hdmi>; 104 + }; 105 + 106 + io_board_eeprom: eeprom@56 { 107 + compatible = "atmel,24c04"; 108 + reg = <0x56>; 109 + vcc-supply = <&v3v3_hdmi>; 110 + }; 111 + }; 112 + 113 + &rtc { 114 + status = "okay"; 115 + }; 116 + 117 + &led_controller_io { 118 + led-2 { 119 + color = <LED_COLOR_ID_ORANGE>; 120 + function = LED_FUNCTION_ACTIVITY; 121 + gpios = <&io_board_gpio 1 GPIO_ACTIVE_LOW>; 122 + }; 123 + }; 124 + 125 + &usart3 { 126 + rts-gpios = <&gpiod 12 GPIO_ACTIVE_LOW>; 127 + cts-gpios = <&gpiod 11 GPIO_ACTIVE_LOW>; 128 + }; 129 + 130 + &usbotg_hs { 131 + usb-role-switch; 132 + 133 + port { 134 + usbotg_hs_ep: endpoint { 135 + remote-endpoint = <&con_usbotg_hs_ep>; 136 + }; 137 + }; 138 + }; 139 + 140 + &pinctrl { 141 + board_tca6408_pins: stusb1600-0 { 142 + pins { 143 + pinmux = <STM32_PINMUX('H', 13, GPIO)>; 144 + bias-pull-up; 145 + }; 146 + }; 147 + };
+397
arch/arm/boot/dts/st/stm32mp153c-lxa-fairytux2.dtsi
··· 1 + // SPDX-License-Identifier: (GPL-2.0-or-later OR BSD-3-Clause) 2 + /* 3 + * Copyright (C) 2020 STMicroelectronics - All Rights Reserved 4 + * Copyright (C) 2021 Rouven Czerwinski, Pengutronix 5 + * Copyright (C) 2023, 2024 Leonard Göhrs, Pengutronix 6 + */ 7 + 8 + #include "stm32mp153.dtsi" 9 + #include "stm32mp15xc.dtsi" 10 + #include "stm32mp15xx-osd32.dtsi" 11 + #include "stm32mp15xxac-pinctrl.dtsi" 12 + 13 + #include <dt-bindings/gpio/gpio.h> 14 + #include <dt-bindings/input/input.h> 15 + #include <dt-bindings/leds/common.h> 16 + #include <dt-bindings/pwm/pwm.h> 17 + 18 + / { 19 + aliases { 20 + can0 = &m_can1; 21 + ethernet0 = &ethernet0; 22 + i2c0 = &i2c1; 23 + i2c1 = &i2c4; 24 + mmc1 = &sdmmc2; 25 + serial0 = &uart4; 26 + serial1 = &usart3; 27 + spi0 = &spi4; 28 + }; 29 + 30 + chosen { 31 + stdout-path = &uart4; 32 + }; 33 + 34 + backlight: backlight { 35 + compatible = "pwm-backlight"; 36 + power-supply = <&v3v3>; 37 + 38 + brightness-levels = <0 31 63 95 127 159 191 223 255>; 39 + default-brightness-level = <7>; 40 + pwms = <&led_pwm 3 1000000 0>; 41 + }; 42 + 43 + led-controller-cpu { 44 + compatible = "gpio-leds"; 45 + 46 + led-0 { 47 + color = <LED_COLOR_ID_GREEN>; 48 + function = LED_FUNCTION_HEARTBEAT; 49 + gpios = <&gpioa 13 GPIO_ACTIVE_HIGH>; 50 + linux,default-trigger = "heartbeat"; 51 + }; 52 + }; 53 + 54 + led_controller_io: led-controller-io { 55 + compatible = "gpio-leds"; 56 + 57 + /* 58 + * led-0 and led-1 are internally connected antiparallel to one 59 + * another inside the ethernet jack like this: 60 + * GPIO0 ---+---|led-0|>--+--- GPIO2 61 + * +--<|led-1|---+ 62 + * E.g. only one of the LEDs can be illuminated at a time while 63 + * the other output must be driven low. 64 + * This should likely be implemented using a multi color LED 65 + * driver for antiparallel LEDs. 66 + */ 67 + led-0 { 68 + color = <LED_COLOR_ID_GREEN>; 69 + function = LED_FUNCTION_LAN; 70 + gpios = <&io_board_gpio 0 GPIO_ACTIVE_HIGH>; 71 + }; 72 + 73 + led-1 { 74 + color = <LED_COLOR_ID_ORANGE>; 75 + function = LED_FUNCTION_LAN; 76 + gpios = <&io_board_gpio 2 GPIO_ACTIVE_HIGH>; 77 + }; 78 + }; 79 + 80 + reg_5v: regulator-5v { 81 + compatible = "regulator-fixed"; 82 + regulator-name = "5V"; 83 + regulator-min-microvolt = <5000000>; 84 + regulator-max-microvolt = <5000000>; 85 + regulator-always-on; 86 + }; 87 + 88 + reg_1v2: regulator-1v2 { 89 + compatible = "regulator-fixed"; 90 + regulator-name = "1V2"; 91 + regulator-min-microvolt = <1200000>; 92 + regulator-max-microvolt = <1200000>; 93 + regulator-always-on; 94 + vin-supply = <&reg_5v>; 95 + }; 96 + }; 97 + 98 + baseboard_eeprom: &sip_eeprom { 99 + }; 100 + 101 + &crc1 { 102 + status = "okay"; 103 + }; 104 + 105 + &cryp1 { 106 + status = "okay"; 107 + }; 108 + 109 + &dts { 110 + status = "okay"; 111 + }; 112 + 113 + &ethernet0 { 114 + assigned-clocks = <&rcc ETHCK_K>, <&rcc PLL4_P>; 115 + assigned-clock-parents = <&rcc PLL4_P>; 116 + assigned-clock-rates = <125000000>; /* Clock PLL4 to 750Mhz in ATF */ 117 + 118 + pinctrl-names = "default", "sleep"; 119 + pinctrl-0 = <&ethernet0_rgmii_pins_b>; 120 + pinctrl-1 = <&ethernet0_rgmii_sleep_pins_b>; 121 + 122 + st,eth-clk-sel; 123 + phy-mode = "rgmii-id"; 124 + phy-handle = <&ethphy>; 125 + status = "okay"; 126 + 127 + mdio { 128 + compatible = "snps,dwmac-mdio"; 129 + #address-cells = <1>; 130 + #size-cells = <0>; 131 + 132 + ethphy: ethernet-phy@3 { /* KSZ9031RN */ 133 + reg = <3>; 134 + reset-gpios = <&gpioe 11 GPIO_ACTIVE_LOW>; /* ETH_RST# */ 135 + interrupt-parent = <&gpioa>; 136 + interrupts = <6 IRQ_TYPE_EDGE_FALLING>; /* ETH_MDINT# */ 137 + reset-assert-us = <10000>; 138 + reset-deassert-us = <300>; 139 + micrel,force-master; 140 + }; 141 + }; 142 + }; 143 + 144 + &gpioa { 145 + gpio-line-names = "", "", "", "", "", /* 0 */ 146 + "", "ETH_INT", "", "", "", /* 5 */ 147 + "", "", "", "BOOTROM_LED", "", /* 10 */ 148 + ""; /* 15 */ 149 + }; 150 + 151 + &gpiob { 152 + gpio-line-names = "", "", "", "", "", /* 0 */ 153 + "", "", "", "", "", /* 5 */ 154 + "", "", "", "", "", /* 10 */ 155 + ""; /* 15 */ 156 + }; 157 + 158 + &gpioc { 159 + gpio-line-names = "", "", "", "", "", /* 0 */ 160 + "", "", "", "", "", /* 5 */ 161 + "", ""; /* 10 */ 162 + }; 163 + 164 + &gpiod { 165 + gpio-line-names = "", "", "", "", "", /* 0 */ 166 + "", "", "LCD_TE", "", "", /* 5 */ 167 + "LCD_DC", "", "", "", "", /* 10 */ 168 + ""; /* 15 */ 169 + }; 170 + 171 + &gpioe { 172 + gpio-line-names = "LCD_CS", "", "", "", "", /* 0 */ 173 + "", "", "", "", "", /* 5 */ 174 + "", "", "", "", "", /* 10 */ 175 + ""; /* 15 */ 176 + }; 177 + 178 + &gpiof { 179 + gpio-line-names = "GPIO1", "GPIO2", "", "", "", /* 0 */ 180 + "", "", "", "", "", /* 5 */ 181 + "", "", "", "", "", /* 10 */ 182 + ""; /* 15 */ 183 + }; 184 + 185 + &gpiog { 186 + gpio-line-names = "", "", "", "", "", /* 0 */ 187 + "", "", "", "", "", /* 5 */ 188 + "", "", "", "", "", /* 10 */ 189 + ""; /* 15 */ 190 + }; 191 + 192 + &gpioz { 193 + gpio-line-names = "HWID0", "HWID1", "HWID2", "HWID3", "", /* 0 */ 194 + "", "HWID4", "HWID5"; /* 5 */ 195 + }; 196 + 197 + &hash1 { 198 + status = "okay"; 199 + }; 200 + 201 + &iwdg2 { 202 + timeout-sec = <8>; 203 + status = "okay"; 204 + }; 205 + 206 + &m_can1 { 207 + pinctrl-names = "default", "sleep"; 208 + pinctrl-0 = <&m_can1_pins_b>; 209 + pinctrl-1 = <&m_can1_sleep_pins_b>; 210 + status = "okay"; 211 + termination-gpios = <&io_board_gpio 7 GPIO_ACTIVE_HIGH>; 212 + termination-ohms = <120>; 213 + }; 214 + 215 + &pmic { 216 + regulators { 217 + buck1-supply = <&reg_5v>; /* VIN */ 218 + buck2-supply = <&reg_5v>; /* VIN */ 219 + buck3-supply = <&reg_5v>; /* VIN */ 220 + buck4-supply = <&reg_5v>; /* VIN */ 221 + ldo2-supply = <&reg_5v>; /* PMIC_LDO25IN */ 222 + ldo4-supply = <&reg_5v>; /* VIN */ 223 + ldo5-supply = <&reg_5v>; /* PMIC_LDO25IN */ 224 + vref_ddr-supply = <&reg_5v>; /* VIN */ 225 + boost-supply = <&reg_5v>; /* PMIC_BSTIN */ 226 + pwr_sw2-supply = <&bst_out>; /* PMIC_SWIN */ 227 + }; 228 + }; 229 + 230 + &pwr_regulators { 231 + vdd-supply = <&vdd>; 232 + vdd_3v3_usbfs-supply = <&vdd_usb>; 233 + }; 234 + 235 + &sdmmc2 { 236 + pinctrl-names = "default", "opendrain", "sleep"; 237 + pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_b>; 238 + pinctrl-1 = <&sdmmc2_b4_od_pins_a &sdmmc2_d47_pins_b>; 239 + pinctrl-2 = <&sdmmc2_b4_sleep_pins_a &sdmmc2_d47_sleep_pins_b>; 240 + vmmc-supply = <&v3v3>; 241 + 242 + bus-width = <8>; 243 + mmc-ddr-3_3v; 244 + no-1-8-v; 245 + non-removable; 246 + no-sd; 247 + no-sdio; 248 + st,neg-edge; 249 + 250 + status = "okay"; 251 + }; 252 + 253 + &spi4 { 254 + pinctrl-names = "default"; 255 + pinctrl-0 = <&spi4_pins_a>; 256 + cs-gpios = <&gpioe 0 GPIO_ACTIVE_LOW>; 257 + status = "okay"; 258 + 259 + lcd: display@0 { 260 + compatible = "shineworld,lh133k", "panel-mipi-dbi-spi"; 261 + reg = <0>; 262 + power-supply = <&v3v3>; 263 + io-supply = <&v3v3>; 264 + backlight = <&backlight>; 265 + dc-gpios = <&gpiod 10 GPIO_ACTIVE_HIGH>; 266 + reset-gpios = <&gpioh 4 GPIO_ACTIVE_HIGH>; 267 + spi-3wire; 268 + spi-max-frequency = <32000000>; 269 + 270 + width-mm = <23>; 271 + height-mm = <23>; 272 + rotation = <180>; 273 + 274 + panel-timing { 275 + hactive = <240>; 276 + vactive = <240>; 277 + hback-porch = <0>; 278 + vback-porch = <0>; 279 + 280 + clock-frequency = <0>; 281 + hfront-porch = <0>; 282 + hsync-len = <0>; 283 + vfront-porch = <0>; 284 + vsync-len = <0>; 285 + }; 286 + }; 287 + }; 288 + 289 + &timers2 { 290 + /* spare dmas for other usage */ 291 + /delete-property/dmas; 292 + /delete-property/dma-names; 293 + 294 + status = "okay"; 295 + 296 + timer@1 { 297 + status = "okay"; 298 + }; 299 + }; 300 + 301 + &timers3 { 302 + /* spare dmas for other usage */ 303 + /delete-property/dmas; 304 + /delete-property/dma-names; 305 + 306 + status = "okay"; 307 + 308 + timer@2 { 309 + status = "okay"; 310 + }; 311 + }; 312 + 313 + &timers4 { 314 + /* spare dmas for other usage */ 315 + /delete-property/dmas; 316 + /delete-property/dma-names; 317 + 318 + status = "okay"; 319 + 320 + timer@3 { 321 + status = "okay"; 322 + }; 323 + }; 324 + 325 + &timers8 { 326 + /* spare dmas for other usage */ 327 + /delete-property/dmas; 328 + /delete-property/dma-names; 329 + 330 + status = "okay"; 331 + 332 + led_pwm: pwm { 333 + pinctrl-names = "default", "sleep"; 334 + pinctrl-0 = <&pwm8_pins_b>; 335 + pinctrl-1 = <&pwm8_sleep_pins_b>; 336 + status = "okay"; 337 + }; 338 + }; 339 + 340 + &uart4 { 341 + label = "debug"; 342 + 343 + pinctrl-names = "default"; 344 + pinctrl-0 = <&uart4_pins_a>; 345 + 346 + /* spare dmas for other usage */ 347 + /delete-property/dmas; 348 + /delete-property/dma-names; 349 + 350 + status = "okay"; 351 + }; 352 + 353 + &usart3 { 354 + label = "external"; 355 + 356 + pinctrl-names = "default"; 357 + pinctrl-0 = <&usart3_pins_a>; 358 + 359 + /* spare dmas for other usage */ 360 + /delete-property/dmas; 361 + /delete-property/dma-names; 362 + 363 + status = "okay"; 364 + }; 365 + 366 + &usbh_ehci { 367 + phys = <&usbphyc_port0>; 368 + phy-names = "usb"; 369 + 370 + status = "okay"; 371 + }; 372 + 373 + &usbotg_hs { 374 + phys = <&usbphyc_port1 0>; 375 + phy-names = "usb2-phy"; 376 + 377 + vusb_d-supply = <&vdd_usb>; 378 + vusb_a-supply = <&reg18>; 379 + 380 + status = "okay"; 381 + }; 382 + 383 + &usbphyc { 384 + status = "okay"; 385 + }; 386 + 387 + &usbphyc_port0 { 388 + phy-supply = <&vdd_usb>; 389 + }; 390 + 391 + &usbphyc_port1 { 392 + phy-supply = <&vdd_usb>; 393 + }; 394 + 395 + &v3v3_hdmi { 396 + regulator-enable-ramp-delay = <1000>; 397 + };