1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Device Tree Source for the HiHope RZ/G2[MN] main board common parts 4 * 5 * Copyright (C) 2019 Renesas Electronics Corp. 6 */ 7 8#include <dt-bindings/gpio/gpio.h> 9 10/ { 11 aliases { 12 serial0 = &scif2; 13 serial1 = &hscif0; 14 }; 15 16 chosen { 17 bootargs = "ignore_loglevel"; 18 stdout-path = "serial0:115200n8"; 19 }; 20 21 hdmi0-out { 22 compatible = "hdmi-connector"; 23 type = "a"; 24 25 port { 26 hdmi0_con: endpoint { 27 remote-endpoint = <&rcar_dw_hdmi0_out>; 28 }; 29 }; 30 }; 31 32 leds { 33 compatible = "gpio-leds"; 34 35 bt_active_led { 36 label = "blue:bt"; 37 gpios = <&gpio7 0 GPIO_ACTIVE_HIGH>; 38 linux,default-trigger = "hci0-power"; 39 default-state = "off"; 40 }; 41 42 led0 { 43 gpios = <&gpio6 11 GPIO_ACTIVE_HIGH>; 44 }; 45 46 led1 { 47 gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; 48 }; 49 50 led2 { 51 gpios = <&gpio6 13 GPIO_ACTIVE_HIGH>; 52 }; 53 54 led3 { 55 gpios = <&gpio0 0 GPIO_ACTIVE_HIGH>; 56 }; 57 58 wlan_active_led { 59 label = "yellow:wlan"; 60 gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>; 61 linux,default-trigger = "phy0tx"; 62 default-state = "off"; 63 }; 64 }; 65 66 reg_1p8v: regulator0 { 67 compatible = "regulator-fixed"; 68 regulator-name = "fixed-1.8V"; 69 regulator-min-microvolt = <1800000>; 70 regulator-max-microvolt = <1800000>; 71 regulator-boot-on; 72 regulator-always-on; 73 }; 74 75 reg_3p3v: regulator1 { 76 compatible = "regulator-fixed"; 77 regulator-name = "fixed-3.3V"; 78 regulator-min-microvolt = <3300000>; 79 regulator-max-microvolt = <3300000>; 80 regulator-boot-on; 81 regulator-always-on; 82 }; 83 84 sound_card: sound { 85 compatible = "audio-graph-card"; 86 87 label = "rcar-sound"; 88 89 dais = <&rsnd_port0>; 90 }; 91 92 vbus0_usb2: regulator-vbus0-usb2 { 93 compatible = "regulator-fixed"; 94 95 regulator-name = "USB20_VBUS0"; 96 regulator-min-microvolt = <5000000>; 97 regulator-max-microvolt = <5000000>; 98 99 gpio = <&gpio6 16 GPIO_ACTIVE_HIGH>; 100 enable-active-high; 101 }; 102 103 vccq_sdhi0: regulator-vccq-sdhi0 { 104 compatible = "regulator-gpio"; 105 106 regulator-name = "SDHI0 VccQ"; 107 regulator-min-microvolt = <1800000>; 108 regulator-max-microvolt = <3300000>; 109 110 gpios = <&gpio6 30 GPIO_ACTIVE_HIGH>; 111 gpios-states = <1>; 112 states = <3300000 1 113 1800000 0>; 114 }; 115 116 wlan_en_reg: regulator-wlan_en { 117 compatible = "regulator-fixed"; 118 regulator-name = "wlan-en-regulator"; 119 regulator-min-microvolt = <1800000>; 120 regulator-max-microvolt = <1800000>; 121 startup-delay-us = <70000>; 122 123 gpio = <&gpio_expander 1 GPIO_ACTIVE_HIGH>; 124 enable-active-high; 125 }; 126 127 x302_clk: x302-clock { 128 compatible = "fixed-clock"; 129 #clock-cells = <0>; 130 clock-frequency = <33000000>; 131 }; 132 133 x304_clk: x304-clock { 134 compatible = "fixed-clock"; 135 #clock-cells = <0>; 136 clock-frequency = <25000000>; 137 }; 138}; 139 140&audio_clk_a { 141 clock-frequency = <22579200>; 142}; 143 144&du { 145 clocks = <&cpg CPG_MOD 724>, 146 <&cpg CPG_MOD 723>, 147 <&cpg CPG_MOD 722>, 148 <&versaclock5 1>, 149 <&x302_clk>, 150 <&versaclock5 2>; 151 clock-names = "du.0", "du.1", "du.2", 152 "dclkin.0", "dclkin.1", "dclkin.2"; 153 status = "okay"; 154}; 155 156&ehci0 { 157 status = "okay"; 158}; 159 160&ehci1 { 161 status = "okay"; 162}; 163 164&extal_clk { 165 clock-frequency = <16666666>; 166}; 167 168&extalr_clk { 169 clock-frequency = <32768>; 170}; 171 172&gpio6 { 173 usb1-reset { 174 gpio-hog; 175 gpios = <10 GPIO_ACTIVE_LOW>; 176 output-low; 177 line-name = "usb1-reset"; 178 }; 179}; 180 181&hdmi0 { 182 status = "okay"; 183 184 ports { 185 port@1 { 186 reg = <1>; 187 rcar_dw_hdmi0_out: endpoint { 188 remote-endpoint = <&hdmi0_con>; 189 }; 190 }; 191 port@2 { 192 reg = <2>; 193 dw_hdmi0_snd_in: endpoint { 194 remote-endpoint = <&rsnd_endpoint0>; 195 }; 196 }; 197 }; 198}; 199 200&hscif0 { 201 pinctrl-0 = <&hscif0_pins>; 202 pinctrl-names = "default"; 203 204 uart-has-rtscts; 205 status = "okay"; 206 207 bluetooth { 208 compatible = "ti,wl1837-st"; 209 enable-gpios = <&gpio_expander 2 GPIO_ACTIVE_HIGH>; 210 }; 211}; 212 213&hsusb { 214 dr_mode = "otg"; 215 status = "okay"; 216}; 217 218&i2c4 { 219 clock-frequency = <400000>; 220 status = "okay"; 221 222 gpio_expander: gpio@20 { 223 compatible = "onnn,pca9654"; 224 reg = <0x20>; 225 gpio-controller; 226 #gpio-cells = <2>; 227 }; 228 229 versaclock5: clock-generator@6a { 230 compatible = "idt,5p49v5923"; 231 reg = <0x6a>; 232 #clock-cells = <1>; 233 clocks = <&x304_clk>; 234 clock-names = "xin"; 235 }; 236}; 237 238&ohci0 { 239 status = "okay"; 240}; 241 242&ohci1 { 243 status = "okay"; 244}; 245 246&pcie_bus_clk { 247 clock-frequency = <100000000>; 248}; 249 250&pfc { 251 pinctrl-0 = <&scif_clk_pins>; 252 pinctrl-names = "default"; 253 254 hscif0_pins: hscif0 { 255 groups = "hscif0_data", "hscif0_ctrl"; 256 function = "hscif0"; 257 }; 258 259 scif2_pins: scif2 { 260 groups = "scif2_data_a"; 261 function = "scif2"; 262 }; 263 264 scif_clk_pins: scif_clk { 265 groups = "scif_clk_a"; 266 function = "scif_clk"; 267 }; 268 269 sdhi0_pins: sd0 { 270 groups = "sdhi0_data4", "sdhi0_ctrl"; 271 function = "sdhi0"; 272 power-source = <3300>; 273 }; 274 275 sdhi0_pins_uhs: sd0_uhs { 276 groups = "sdhi0_data4", "sdhi0_ctrl"; 277 function = "sdhi0"; 278 power-source = <1800>; 279 }; 280 281 sdhi2_pins: sd2 { 282 groups = "sdhi2_data4", "sdhi2_ctrl"; 283 function = "sdhi2"; 284 power-source = <1800>; 285 }; 286 287 sdhi3_pins: sd3 { 288 groups = "sdhi3_data8", "sdhi3_ctrl", "sdhi3_ds"; 289 function = "sdhi3"; 290 power-source = <1800>; 291 }; 292 293 sound_clk_pins: sound_clk { 294 groups = "audio_clk_a_a"; 295 function = "audio_clk"; 296 }; 297 298 usb0_pins: usb0 { 299 groups = "usb0"; 300 function = "usb0"; 301 }; 302 303 usb1_pins: usb1 { 304 mux { 305 groups = "usb1"; 306 function = "usb1"; 307 }; 308 309 ovc { 310 pins = "GP_6_27"; 311 bias-pull-up; 312 }; 313 }; 314 315 usb30_pins: usb30 { 316 groups = "usb30"; 317 function = "usb30"; 318 }; 319}; 320 321&rcar_sound { 322 pinctrl-0 = <&sound_clk_pins>; 323 pinctrl-names = "default"; 324 325 status = "okay"; 326 327 /* Single DAI */ 328 #sound-dai-cells = <0>; 329 330 ports { 331 rsnd_port0: port@0 { 332 rsnd_endpoint0: endpoint { 333 remote-endpoint = <&dw_hdmi0_snd_in>; 334 335 dai-format = "i2s"; 336 bitclock-master = <&rsnd_endpoint0>; 337 frame-master = <&rsnd_endpoint0>; 338 339 playback = <&ssi2>; 340 }; 341 }; 342 }; 343}; 344 345&rwdt { 346 timeout-sec = <60>; 347 status = "okay"; 348}; 349 350&scif2 { 351 pinctrl-0 = <&scif2_pins>; 352 pinctrl-names = "default"; 353 354 status = "okay"; 355}; 356 357&scif_clk { 358 clock-frequency = <14745600>; 359}; 360 361&sdhi0 { 362 pinctrl-0 = <&sdhi0_pins>; 363 pinctrl-1 = <&sdhi0_pins_uhs>; 364 pinctrl-names = "default", "state_uhs"; 365 366 vmmc-supply = <®_3p3v>; 367 vqmmc-supply = <&vccq_sdhi0>; 368 cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; 369 bus-width = <4>; 370 sd-uhs-sdr50; 371 sd-uhs-sdr104; 372 status = "okay"; 373}; 374 375&sdhi2 { 376 status = "okay"; 377 pinctrl-0 = <&sdhi2_pins>; 378 pinctrl-names = "default"; 379 380 vmmc-supply = <&wlan_en_reg>; 381 bus-width = <4>; 382 non-removable; 383 cap-power-off-card; 384 keep-power-in-suspend; 385 386 #address-cells = <1>; 387 #size-cells = <0>; 388 wlcore: wlcore@2 { 389 compatible = "ti,wl1837"; 390 reg = <2>; 391 interrupt-parent = <&gpio2>; 392 interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; 393 }; 394}; 395 396&sdhi3 { 397 pinctrl-0 = <&sdhi3_pins>; 398 pinctrl-1 = <&sdhi3_pins>; 399 pinctrl-names = "default", "state_uhs"; 400 401 vmmc-supply = <®_3p3v>; 402 vqmmc-supply = <®_1p8v>; 403 bus-width = <8>; 404 mmc-hs200-1_8v; 405 non-removable; 406 fixed-emmc-driver-type = <1>; 407 status = "okay"; 408}; 409 410&usb_extal_clk { 411 clock-frequency = <50000000>; 412}; 413 414&usb2_phy0 { 415 pinctrl-0 = <&usb0_pins>; 416 pinctrl-names = "default"; 417 418 vbus-supply = <&vbus0_usb2>; 419 status = "okay"; 420}; 421 422&usb2_phy1 { 423 pinctrl-0 = <&usb1_pins>; 424 pinctrl-names = "default"; 425 426 status = "okay"; 427}; 428 429&usb3_peri0 { 430 phys = <&usb3_phy0>; 431 phy-names = "usb"; 432 433 companion = <&xhci0>; 434 435 status = "okay"; 436}; 437 438&usb3_phy0 { 439 status = "okay"; 440}; 441 442&usb3s0_clk { 443 clock-frequency = <100000000>; 444}; 445 446&xhci0 { 447 pinctrl-0 = <&usb30_pins>; 448 pinctrl-names = "default"; 449 450 status = "okay"; 451}; 452