r8a7790-lager.dts revision 284090
1/* 2 * Device Tree Source for the Lager board 3 * 4 * Copyright (C) 2013-2014 Renesas Solutions Corp. 5 * Copyright (C) 2014 Cogent Embedded, Inc. 6 * 7 * This file is licensed under the terms of the GNU General Public License 8 * version 2. This program is licensed "as is" without any warranty of any 9 * kind, whether express or implied. 10 */ 11 12/* 13 * SSI-AK4643 14 * 15 * SW1: 1: AK4643 16 * 2: CN22 17 * 3: ADV7511 18 * 19 * This command is required when Playback/Capture 20 * 21 * amixer set "LINEOUT Mixer DACL" on 22 * amixer set "DVC Out" 100% 23 * amixer set "DVC In" 100% 24 * 25 * You can use Mute 26 * 27 * amixer set "DVC Out Mute" on 28 * amixer set "DVC In Mute" on 29 * 30 * You can use Volume Ramp 31 * 32 * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps" 33 * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps" 34 * amixer set "DVC Out Ramp" on 35 * aplay xxx.wav & 36 * amixer set "DVC Out" 80% // Volume Down 37 * amixer set "DVC Out" 100% // Volume Up 38 */ 39 40/dts-v1/; 41#include "r8a7790.dtsi" 42#include <dt-bindings/gpio/gpio.h> 43#include <dt-bindings/input/input.h> 44 45/ { 46 model = "Lager"; 47 compatible = "renesas,lager", "renesas,r8a7790"; 48 49 aliases { 50 serial0 = &scifa0; 51 serial1 = &scifa1; 52 }; 53 54 chosen { 55 bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp"; 56 stdout-path = &scifa0; 57 }; 58 59 memory@40000000 { 60 device_type = "memory"; 61 reg = <0 0x40000000 0 0x40000000>; 62 }; 63 64 memory@140000000 { 65 device_type = "memory"; 66 reg = <1 0x40000000 0 0xc0000000>; 67 }; 68 69 lbsc { 70 #address-cells = <1>; 71 #size-cells = <1>; 72 }; 73 74 keyboard { 75 compatible = "gpio-keys"; 76 77 button@1 { 78 linux,code = <KEY_1>; 79 label = "SW2-1"; 80 gpio-key,wakeup; 81 debounce-interval = <20>; 82 gpios = <&gpio1 14 GPIO_ACTIVE_LOW>; 83 }; 84 button@2 { 85 linux,code = <KEY_2>; 86 label = "SW2-2"; 87 gpio-key,wakeup; 88 debounce-interval = <20>; 89 gpios = <&gpio1 24 GPIO_ACTIVE_LOW>; 90 }; 91 button@3 { 92 linux,code = <KEY_3>; 93 label = "SW2-3"; 94 gpio-key,wakeup; 95 debounce-interval = <20>; 96 gpios = <&gpio1 26 GPIO_ACTIVE_LOW>; 97 }; 98 button@4 { 99 linux,code = <KEY_4>; 100 label = "SW2-4"; 101 gpio-key,wakeup; 102 debounce-interval = <20>; 103 gpios = <&gpio1 28 GPIO_ACTIVE_LOW>; 104 }; 105 }; 106 107 leds { 108 compatible = "gpio-leds"; 109 led6 { 110 gpios = <&gpio4 22 GPIO_ACTIVE_HIGH>; 111 }; 112 led7 { 113 gpios = <&gpio4 23 GPIO_ACTIVE_HIGH>; 114 }; 115 led8 { 116 gpios = <&gpio5 17 GPIO_ACTIVE_HIGH>; 117 }; 118 }; 119 120 fixedregulator3v3: fixedregulator@0 { 121 compatible = "regulator-fixed"; 122 regulator-name = "fixed-3.3V"; 123 regulator-min-microvolt = <3300000>; 124 regulator-max-microvolt = <3300000>; 125 regulator-boot-on; 126 regulator-always-on; 127 }; 128 129 vcc_sdhi0: regulator@1 { 130 compatible = "regulator-fixed"; 131 132 regulator-name = "SDHI0 Vcc"; 133 regulator-min-microvolt = <3300000>; 134 regulator-max-microvolt = <3300000>; 135 136 gpio = <&gpio5 24 GPIO_ACTIVE_HIGH>; 137 enable-active-high; 138 }; 139 140 vccq_sdhi0: regulator@2 { 141 compatible = "regulator-gpio"; 142 143 regulator-name = "SDHI0 VccQ"; 144 regulator-min-microvolt = <1800000>; 145 regulator-max-microvolt = <3300000>; 146 147 gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>; 148 gpios-states = <1>; 149 states = <3300000 1 150 1800000 0>; 151 }; 152 153 vcc_sdhi2: regulator@3 { 154 compatible = "regulator-fixed"; 155 156 regulator-name = "SDHI2 Vcc"; 157 regulator-min-microvolt = <3300000>; 158 regulator-max-microvolt = <3300000>; 159 160 gpio = <&gpio5 25 GPIO_ACTIVE_HIGH>; 161 enable-active-high; 162 }; 163 164 vccq_sdhi2: regulator@4 { 165 compatible = "regulator-gpio"; 166 167 regulator-name = "SDHI2 VccQ"; 168 regulator-min-microvolt = <1800000>; 169 regulator-max-microvolt = <3300000>; 170 171 gpios = <&gpio5 30 GPIO_ACTIVE_HIGH>; 172 gpios-states = <1>; 173 states = <3300000 1 174 1800000 0>; 175 }; 176 177 sound { 178 compatible = "simple-audio-card"; 179 180 simple-audio-card,format = "left_j"; 181 simple-audio-card,bitclock-master = <&sndcodec>; 182 simple-audio-card,frame-master = <&sndcodec>; 183 184 sndcpu: simple-audio-card,cpu { 185 sound-dai = <&rcar_sound>; 186 }; 187 188 sndcodec: simple-audio-card,codec { 189 sound-dai = <&ak4643>; 190 system-clock-frequency = <11289600>; 191 }; 192 }; 193 194 vga-encoder { 195 compatible = "adi,adv7123"; 196 197 ports { 198 #address-cells = <1>; 199 #size-cells = <0>; 200 201 port@0 { 202 reg = <0>; 203 adv7123_in: endpoint { 204 remote-endpoint = <&du_out_rgb>; 205 }; 206 }; 207 port@1 { 208 reg = <1>; 209 adv7123_out: endpoint { 210 remote-endpoint = <&vga_in>; 211 }; 212 }; 213 }; 214 }; 215 216 vga { 217 compatible = "vga-connector"; 218 219 port { 220 vga_in: endpoint { 221 remote-endpoint = <&adv7123_out>; 222 }; 223 }; 224 }; 225}; 226 227&du { 228 pinctrl-0 = <&du_pins>; 229 pinctrl-names = "default"; 230 status = "okay"; 231 232 ports { 233 port@0 { 234 endpoint { 235 remote-endpoint = <&adv7123_in>; 236 }; 237 }; 238 port@2 { 239 lvds_connector: endpoint { 240 }; 241 }; 242 }; 243}; 244 245&extal_clk { 246 clock-frequency = <20000000>; 247}; 248 249&pfc { 250 du_pins: du { 251 renesas,groups = "du_rgb666", "du_sync_1", "du_clk_out_0"; 252 renesas,function = "du"; 253 }; 254 255 scifa0_pins: serial0 { 256 renesas,groups = "scifa0_data"; 257 renesas,function = "scifa0"; 258 }; 259 260 ether_pins: ether { 261 renesas,groups = "eth_link", "eth_mdio", "eth_rmii"; 262 renesas,function = "eth"; 263 }; 264 265 phy1_pins: phy1 { 266 renesas,groups = "intc_irq0"; 267 renesas,function = "intc"; 268 }; 269 270 scifa1_pins: serial1 { 271 renesas,groups = "scifa1_data"; 272 renesas,function = "scifa1"; 273 }; 274 275 sdhi0_pins: sd0 { 276 renesas,groups = "sdhi0_data4", "sdhi0_ctrl"; 277 renesas,function = "sdhi0"; 278 }; 279 280 sdhi2_pins: sd2 { 281 renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; 282 renesas,function = "sdhi2"; 283 }; 284 285 mmc1_pins: mmc1 { 286 renesas,groups = "mmc1_data8", "mmc1_ctrl"; 287 renesas,function = "mmc1"; 288 }; 289 290 qspi_pins: spi0 { 291 renesas,groups = "qspi_ctrl", "qspi_data4"; 292 renesas,function = "qspi"; 293 }; 294 295 msiof1_pins: spi2 { 296 renesas,groups = "msiof1_clk", "msiof1_sync", "msiof1_rx", 297 "msiof1_tx"; 298 renesas,function = "msiof1"; 299 }; 300 301 iic1_pins: iic1 { 302 renesas,groups = "iic1"; 303 renesas,function = "iic1"; 304 }; 305 306 iic2_pins: iic2 { 307 renesas,groups = "iic2"; 308 renesas,function = "iic2"; 309 }; 310 311 iic3_pins: iic3 { 312 renesas,groups = "iic3"; 313 renesas,function = "iic3"; 314 }; 315 316 hsusb_pins: hsusb { 317 renesas,groups = "usb0_ovc_vbus"; 318 renesas,function = "usb0"; 319 }; 320 321 usb0_pins: usb0 { 322 renesas,groups = "usb0"; 323 renesas,function = "usb0"; 324 }; 325 326 usb1_pins: usb1 { 327 renesas,groups = "usb1"; 328 renesas,function = "usb1"; 329 }; 330 331 usb2_pins: usb2 { 332 renesas,groups = "usb2"; 333 renesas,function = "usb2"; 334 }; 335 336 vin1_pins: vin { 337 renesas,groups = "vin1_data8", "vin1_clk"; 338 renesas,function = "vin1"; 339 }; 340 341 sound_pins: sound { 342 renesas,groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data"; 343 renesas,function = "ssi"; 344 }; 345 346 sound_clk_pins: sound_clk { 347 renesas,groups = "audio_clk_a"; 348 renesas,function = "audio_clk"; 349 }; 350}; 351 352ðer { 353 pinctrl-0 = <ðer_pins &phy1_pins>; 354 pinctrl-names = "default"; 355 356 phy-handle = <&phy1>; 357 renesas,ether-link-active-low; 358 status = "okay"; 359 360 phy1: ethernet-phy@1 { 361 reg = <1>; 362 interrupt-parent = <&irqc0>; 363 interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 364 micrel,led-mode = <1>; 365 }; 366}; 367 368&cmt0 { 369 status = "okay"; 370}; 371 372&mmcif1 { 373 pinctrl-0 = <&mmc1_pins>; 374 pinctrl-names = "default"; 375 376 vmmc-supply = <&fixedregulator3v3>; 377 bus-width = <8>; 378 non-removable; 379 status = "okay"; 380}; 381 382&sata1 { 383 status = "okay"; 384}; 385 386&qspi { 387 pinctrl-0 = <&qspi_pins>; 388 pinctrl-names = "default"; 389 390 status = "okay"; 391 392 flash: flash@0 { 393 #address-cells = <1>; 394 #size-cells = <1>; 395 compatible = "spansion,s25fl512s"; 396 reg = <0>; 397 spi-max-frequency = <30000000>; 398 spi-tx-bus-width = <4>; 399 spi-rx-bus-width = <4>; 400 spi-cpha; 401 spi-cpol; 402 m25p,fast-read; 403 404 partition@0 { 405 label = "loader"; 406 reg = <0x00000000 0x00040000>; 407 read-only; 408 }; 409 partition@40000 { 410 label = "user"; 411 reg = <0x00040000 0x00400000>; 412 read-only; 413 }; 414 partition@440000 { 415 label = "flash"; 416 reg = <0x00440000 0x03bc0000>; 417 }; 418 }; 419}; 420 421&scifa0 { 422 pinctrl-0 = <&scifa0_pins>; 423 pinctrl-names = "default"; 424 425 status = "okay"; 426}; 427 428&scifa1 { 429 pinctrl-0 = <&scifa1_pins>; 430 pinctrl-names = "default"; 431 432 status = "okay"; 433}; 434 435&msiof1 { 436 pinctrl-0 = <&msiof1_pins>; 437 pinctrl-names = "default"; 438 439 status = "okay"; 440 441 pmic: pmic@0 { 442 compatible = "renesas,r2a11302ft"; 443 reg = <0>; 444 spi-max-frequency = <6000000>; 445 spi-cpol; 446 spi-cpha; 447 }; 448}; 449 450&sdhi0 { 451 pinctrl-0 = <&sdhi0_pins>; 452 pinctrl-names = "default"; 453 454 vmmc-supply = <&vcc_sdhi0>; 455 vqmmc-supply = <&vccq_sdhi0>; 456 cd-gpios = <&gpio3 6 GPIO_ACTIVE_LOW>; 457 status = "okay"; 458}; 459 460&sdhi2 { 461 pinctrl-0 = <&sdhi2_pins>; 462 pinctrl-names = "default"; 463 464 vmmc-supply = <&vcc_sdhi2>; 465 vqmmc-supply = <&vccq_sdhi2>; 466 cd-gpios = <&gpio3 22 GPIO_ACTIVE_LOW>; 467 status = "okay"; 468}; 469 470&cpu0 { 471 cpu0-supply = <&vdd_dvfs>; 472}; 473 474&iic0 { 475 status = "okay"; 476}; 477 478&iic1 { 479 status = "okay"; 480 pinctrl-0 = <&iic1_pins>; 481 pinctrl-names = "default"; 482}; 483 484&iic2 { 485 status = "okay"; 486 pinctrl-0 = <&iic2_pins>; 487 pinctrl-names = "default"; 488 489 clock-frequency = <100000>; 490 491 ak4643: sound-codec@12 { 492 compatible = "asahi-kasei,ak4643"; 493 #sound-dai-cells = <0>; 494 reg = <0x12>; 495 }; 496 497 composite-in@20 { 498 compatible = "adi,adv7180"; 499 reg = <0x20>; 500 remote = <&vin1>; 501 502 port { 503 adv7180: endpoint { 504 bus-width = <8>; 505 remote-endpoint = <&vin1ep0>; 506 }; 507 }; 508 }; 509}; 510 511&iic3 { 512 pinctrl-names = "default"; 513 pinctrl-0 = <&iic3_pins>; 514 status = "okay"; 515 516 vdd_dvfs: regulator@68 { 517 compatible = "dlg,da9210"; 518 reg = <0x68>; 519 520 regulator-min-microvolt = <1000000>; 521 regulator-max-microvolt = <1000000>; 522 regulator-boot-on; 523 regulator-always-on; 524 }; 525}; 526 527&pci0 { 528 status = "okay"; 529 pinctrl-0 = <&usb0_pins>; 530 pinctrl-names = "default"; 531}; 532 533&pci1 { 534 status = "okay"; 535 pinctrl-0 = <&usb1_pins>; 536 pinctrl-names = "default"; 537}; 538 539&xhci { 540 status = "okay"; 541 pinctrl-0 = <&usb2_pins>; 542 pinctrl-names = "default"; 543}; 544 545&pci2 { 546 status = "okay"; 547 pinctrl-0 = <&usb2_pins>; 548 pinctrl-names = "default"; 549}; 550 551&hsusb { 552 status = "okay"; 553 pinctrl-0 = <&hsusb_pins>; 554 pinctrl-names = "default"; 555 renesas,enable-gpio = <&gpio5 18 GPIO_ACTIVE_HIGH>; 556}; 557 558&usbphy { 559 status = "okay"; 560}; 561 562/* composite video input */ 563&vin1 { 564 pinctrl-0 = <&vin1_pins>; 565 pinctrl-names = "default"; 566 567 status = "okay"; 568 569 port { 570 #address-cells = <1>; 571 #size-cells = <0>; 572 573 vin1ep0: endpoint { 574 remote-endpoint = <&adv7180>; 575 bus-width = <8>; 576 }; 577 }; 578}; 579 580&rcar_sound { 581 pinctrl-0 = <&sound_pins &sound_clk_pins>; 582 pinctrl-names = "default"; 583 584 /* Single DAI */ 585 #sound-dai-cells = <0>; 586 587 status = "okay"; 588 589 rcar_sound,dai { 590 dai0 { 591 playback = <&ssi0 &src2 &dvc0>; 592 capture = <&ssi1 &src3 &dvc1>; 593 }; 594 }; 595}; 596 597&ssi1 { 598 shared-pin; 599}; 600