1// SPDX-License-Identifier: GPL-2.0 2/* 3 * Device Tree Source for the iWave-RZ/G1M/G1N Qseven carrier board 4 * 5 * Copyright (C) 2017 Renesas Electronics Corp. 6 */ 7 8/* 9 * SSI-SGTL5000 10 * 11 * This command is required when Playback/Capture 12 * 13 * amixer set "DVC Out" 100% 14 * amixer set "DVC In" 100% 15 * 16 * You can use Mute 17 * 18 * amixer set "DVC Out Mute" on 19 * amixer set "DVC In Mute" on 20 * 21 * You can use Volume Ramp 22 * 23 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps" 24 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps" 25 * amixer set "DVC Out Ramp" on 26 * aplay xxx.wav & 27 * amixer set "DVC Out" 80% // Volume Down 28 * amixer set "DVC Out" 100% // Volume Up 29 */ 30 31/ { 32 aliases { 33 serial0 = &scif0; 34 serial3 = &scifb1; 35 ethernet0 = &avb; 36 }; 37 38 chosen { 39 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp"; 40 stdout-path = "serial0:115200n8"; 41 }; 42 43 audio_clock: audio_clock { 44 compatible = "fixed-clock"; 45 #clock-cells = <0>; 46 clock-frequency = <26000000>; 47 }; 48 49 lcd_backlight: backlight { 50 compatible = "pwm-backlight"; 51 52 pwms = <&pwm3 0 5000000>; 53 brightness-levels = <0 4 8 16 32 64 128 255>; 54 default-brightness-level = <7>; 55 enable-gpios = <&gpio5 14 GPIO_ACTIVE_HIGH>; 56 }; 57 58 lvds-receiver { 59 compatible = "ti,ds90cf384a", "lvds-decoder"; 60 power-supply = <&vcc_3v3_tft1>; 61 62 ports { 63 #address-cells = <1>; 64 #size-cells = <0>; 65 66 port@0 { 67 reg = <0>; 68 lvds_receiver_in: endpoint { 69 remote-endpoint = <&lvds0_out>; 70 }; 71 }; 72 port@1 { 73 reg = <1>; 74 lvds_receiver_out: endpoint { 75 remote-endpoint = <&panel_in>; 76 }; 77 }; 78 }; 79 }; 80 81 panel { 82 compatible = "edt,etm0700g0dh6"; 83 backlight = <&lcd_backlight>; 84 power-supply = <&vcc_3v3_tft1>; 85 86 port { 87 panel_in: endpoint { 88 remote-endpoint = <&lvds_receiver_out>; 89 }; 90 }; 91 }; 92 93 reg_1p5v: 1p5v { 94 compatible = "regulator-fixed"; 95 regulator-name = "1P5V"; 96 regulator-min-microvolt = <1500000>; 97 regulator-max-microvolt = <1500000>; 98 regulator-always-on; 99 }; 100 101 rsnd_sgtl5000: sound { 102 compatible = "simple-audio-card"; 103 104 simple-audio-card,format = "i2s"; 105 simple-audio-card,bitclock-master = <&sndcodec>; 106 simple-audio-card,frame-master = <&sndcodec>; 107 108 sndcpu: simple-audio-card,cpu { 109 sound-dai = <&rcar_sound>; 110 }; 111 112 sndcodec: simple-audio-card,codec { 113 sound-dai = <&sgtl5000>; 114 }; 115 }; 116 117 vcc_3v3_tft1: regulator-panel { 118 compatible = "regulator-fixed"; 119 120 regulator-name = "vcc-3v3-tft1"; 121 regulator-min-microvolt = <3300000>; 122 regulator-max-microvolt = <3300000>; 123 enable-active-high; 124 startup-delay-us = <500>; 125 gpio = <&gpio7 25 GPIO_ACTIVE_HIGH>; 126 }; 127 128 vcc_sdhi1: regulator-vcc-sdhi1 { 129 compatible = "regulator-fixed"; 130 131 regulator-name = "SDHI1 Vcc"; 132 regulator-min-microvolt = <3300000>; 133 regulator-max-microvolt = <3300000>; 134 135 gpio = <&gpio1 16 GPIO_ACTIVE_LOW>; 136 }; 137 138 vccq_sdhi1: regulator-vccq-sdhi1 { 139 compatible = "regulator-gpio"; 140 141 regulator-name = "SDHI1 VccQ"; 142 regulator-min-microvolt = <1800000>; 143 regulator-max-microvolt = <3300000>; 144 145 gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>; 146 gpios-states = <1>; 147 states = <3300000 1>, <1800000 0>; 148 }; 149}; 150 151&avb { 152 pinctrl-0 = <&avb_pins>; 153 pinctrl-names = "default"; 154 155 phy-handle = <&phy3>; 156 phy-mode = "gmii"; 157 renesas,no-ether-link; 158 status = "okay"; 159 160 phy3: ethernet-phy@3 { 161 compatible = "ethernet-phy-id0022.1622", 162 "ethernet-phy-ieee802.3-c22"; 163 reg = <3>; 164 micrel,led-mode = <1>; 165 }; 166}; 167 168&can0 { 169 pinctrl-0 = <&can0_pins>; 170 pinctrl-names = "default"; 171 172 status = "okay"; 173}; 174 175&cmt0 { 176 status = "okay"; 177}; 178 179&du { 180 status = "okay"; 181}; 182 183&gpio2 { 184 touch-interrupt-hog { 185 gpio-hog; 186 gpios = <12 GPIO_ACTIVE_LOW>; 187 input; 188 }; 189}; 190 191&hsusb { 192 status = "okay"; 193 pinctrl-0 = <&usb0_pins>; 194 pinctrl-names = "default"; 195}; 196 197&i2c2 { 198 pinctrl-0 = <&i2c2_pins>; 199 pinctrl-names = "default"; 200 201 status = "okay"; 202 clock-frequency = <400000>; 203 204 rtc@68 { 205 compatible = "ti,bq32000"; 206 reg = <0x68>; 207 }; 208 209 sgtl5000: codec@a { 210 compatible = "fsl,sgtl5000"; 211 #sound-dai-cells = <0>; 212 reg = <0x0a>; 213 clocks = <&audio_clock>; 214 VDDA-supply = <®_3p3v>; 215 VDDIO-supply = <®_3p3v>; 216 VDDD-supply = <®_1p5v>; 217 }; 218 219 touch: touchpanel@38 { 220 compatible = "edt,edt-ft5406"; 221 reg = <0x38>; 222 interrupts-extended = <&gpio2 12 IRQ_TYPE_EDGE_FALLING>; 223 vcc-supply = <&vcc_3v3_tft1>; 224 }; 225}; 226 227&lvds0 { 228 status = "okay"; 229 230 ports { 231 port@1 { 232 lvds0_out: endpoint { 233 remote-endpoint = <&lvds_receiver_in>; 234 }; 235 }; 236 }; 237}; 238 239&pci0 { 240 pinctrl-0 = <&usb0_pins>; 241 pinctrl-names = "default"; 242}; 243 244&pci1 { 245 status = "okay"; 246 pinctrl-0 = <&usb1_pins>; 247 pinctrl-names = "default"; 248}; 249 250&pcie_bus_clk { 251 clock-frequency = <100000000>; 252}; 253 254&pfc { 255 can0_pins: can0 { 256 groups = "can0_data_d"; 257 function = "can0"; 258 }; 259 260 avb_pins: avb { 261 groups = "avb_mdio", "avb_gmii"; 262 function = "avb"; 263 }; 264 265 i2c2_pins: i2c2 { 266 groups = "i2c2"; 267 function = "i2c2"; 268 }; 269 270 pwm3_pins: pwm3 { 271 groups = "pwm3"; 272 function = "pwm3"; 273 }; 274 275 scif0_pins: scif0 { 276 groups = "scif0_data_d"; 277 function = "scif0"; 278 }; 279 280 scifb1_pins: scifb1 { 281 groups = "scifb1_data_d", "scifb1_ctrl"; 282 function = "scifb1"; 283 }; 284 285 sdhi1_pins: sd1 { 286 groups = "sdhi1_data4", "sdhi1_ctrl"; 287 function = "sdhi1"; 288 power-source = <3300>; 289 }; 290 291 sdhi1_pins_uhs: sd1_uhs { 292 groups = "sdhi1_data4", "sdhi1_ctrl"; 293 function = "sdhi1"; 294 power-source = <1800>; 295 }; 296 297 sound_pins: sound { 298 groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data"; 299 function = "ssi"; 300 }; 301 302 usb0_pins: usb0 { 303 groups = "usb0"; 304 function = "usb0"; 305 }; 306 307 usb1_pins: usb1 { 308 groups = "usb1"; 309 function = "usb1"; 310 }; 311}; 312 313&pwm3 { 314 pinctrl-0 = <&pwm3_pins>; 315 pinctrl-names = "default"; 316 status = "okay"; 317}; 318 319&rcar_sound { 320 pinctrl-0 = <&sound_pins>; 321 pinctrl-names = "default"; 322 status = "okay"; 323 324 /* Single DAI */ 325 #sound-dai-cells = <0>; 326 327 rcar_sound,dai { 328 dai0 { 329 playback = <&ssi1>, <&src3>, <&dvc1>; 330 capture = <&ssi0>, <&src2>, <&dvc0>; 331 }; 332 }; 333}; 334 335&rwdt { 336 timeout-sec = <60>; 337 status = "okay"; 338}; 339 340&scif0 { 341 pinctrl-0 = <&scif0_pins>; 342 pinctrl-names = "default"; 343 344 status = "okay"; 345}; 346 347&scifb1 { 348 pinctrl-0 = <&scifb1_pins>; 349 pinctrl-names = "default"; 350 351 uart-has-rtscts; 352 status = "okay"; 353}; 354 355&sdhi1 { 356 pinctrl-0 = <&sdhi1_pins>; 357 pinctrl-1 = <&sdhi1_pins_uhs>; 358 pinctrl-names = "default", "state_uhs"; 359 360 vmmc-supply = <&vcc_sdhi1>; 361 vqmmc-supply = <&vccq_sdhi1>; 362 cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; 363 wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>; 364 sd-uhs-sdr50; 365 status = "okay"; 366}; 367 368&ssi1 { 369 shared-pin; 370}; 371 372&usbphy { 373 status = "okay"; 374}; 375