183d290c5STom Rini// SPDX-License-Identifier: GPL-2.0 292aa0995SMarek Vasut/* 392aa0995SMarek Vasut * Device Tree Source for the Gose board 492aa0995SMarek Vasut * 592aa0995SMarek Vasut * Copyright (C) 2014-2015 Renesas Electronics Corporation 692aa0995SMarek Vasut */ 792aa0995SMarek Vasut 892aa0995SMarek Vasut/* 992aa0995SMarek Vasut * SSI-AK4643 1092aa0995SMarek Vasut * 1192aa0995SMarek Vasut * SW1: 1: AK4643 1292aa0995SMarek Vasut * 2: CN22 1392aa0995SMarek Vasut * 3: ADV7511 1492aa0995SMarek Vasut * 1592aa0995SMarek Vasut * This command is required when Playback/Capture 1692aa0995SMarek Vasut * 1792aa0995SMarek Vasut * amixer set "LINEOUT Mixer DACL" on 1892aa0995SMarek Vasut * amixer set "DVC Out" 100% 1992aa0995SMarek Vasut * amixer set "DVC In" 100% 2092aa0995SMarek Vasut * 2192aa0995SMarek Vasut * You can use Mute 2292aa0995SMarek Vasut * 2392aa0995SMarek Vasut * amixer set "DVC Out Mute" on 2492aa0995SMarek Vasut * amixer set "DVC In Mute" on 2592aa0995SMarek Vasut * 2692aa0995SMarek Vasut * You can use Volume Ramp 2792aa0995SMarek Vasut * 2892aa0995SMarek Vasut * amixer set "DVC Out Ramp Up Rate" "0.125 dB/64 steps" 2992aa0995SMarek Vasut * amixer set "DVC Out Ramp Down Rate" "0.125 dB/512 steps" 3092aa0995SMarek Vasut * amixer set "DVC Out Ramp" on 3192aa0995SMarek Vasut * aplay xxx.wav & 3292aa0995SMarek Vasut * amixer set "DVC Out" 80% // Volume Down 3392aa0995SMarek Vasut * amixer set "DVC Out" 100% // Volume Up 3492aa0995SMarek Vasut */ 3592aa0995SMarek Vasut 3692aa0995SMarek Vasut/dts-v1/; 3792aa0995SMarek Vasut#include "r8a7793.dtsi" 3892aa0995SMarek Vasut#include <dt-bindings/gpio/gpio.h> 3992aa0995SMarek Vasut#include <dt-bindings/input/input.h> 4092aa0995SMarek Vasut 4192aa0995SMarek Vasut/ { 4292aa0995SMarek Vasut model = "Gose"; 4392aa0995SMarek Vasut compatible = "renesas,gose", "renesas,r8a7793"; 4492aa0995SMarek Vasut 4592aa0995SMarek Vasut aliases { 4692aa0995SMarek Vasut serial0 = &scif0; 4792aa0995SMarek Vasut serial1 = &scif1; 48252c8b45SMarek Vasut i2c9 = &gpioi2c2; 49252c8b45SMarek Vasut i2c10 = &gpioi2c4; 50252c8b45SMarek Vasut i2c11 = &i2chdmi; 51252c8b45SMarek Vasut i2c12 = &i2cexio4; 5292aa0995SMarek Vasut }; 5392aa0995SMarek Vasut 5492aa0995SMarek Vasut chosen { 5592aa0995SMarek Vasut bootargs = "ignore_loglevel rw root=/dev/nfs ip=dhcp"; 5692aa0995SMarek Vasut stdout-path = "serial0:115200n8"; 5792aa0995SMarek Vasut }; 5892aa0995SMarek Vasut 5992aa0995SMarek Vasut memory@40000000 { 6092aa0995SMarek Vasut device_type = "memory"; 6192aa0995SMarek Vasut reg = <0 0x40000000 0 0x40000000>; 6292aa0995SMarek Vasut }; 6392aa0995SMarek Vasut 6492aa0995SMarek Vasut gpio-keys { 6592aa0995SMarek Vasut compatible = "gpio-keys"; 6692aa0995SMarek Vasut 6792aa0995SMarek Vasut key-1 { 6892aa0995SMarek Vasut gpios = <&gpio5 0 GPIO_ACTIVE_LOW>; 6992aa0995SMarek Vasut linux,code = <KEY_1>; 7092aa0995SMarek Vasut label = "SW2-1"; 7192aa0995SMarek Vasut wakeup-source; 7292aa0995SMarek Vasut debounce-interval = <20>; 7392aa0995SMarek Vasut }; 7492aa0995SMarek Vasut key-2 { 7592aa0995SMarek Vasut gpios = <&gpio5 1 GPIO_ACTIVE_LOW>; 7692aa0995SMarek Vasut linux,code = <KEY_2>; 7792aa0995SMarek Vasut label = "SW2-2"; 7892aa0995SMarek Vasut wakeup-source; 7992aa0995SMarek Vasut debounce-interval = <20>; 8092aa0995SMarek Vasut }; 8192aa0995SMarek Vasut key-3 { 8292aa0995SMarek Vasut gpios = <&gpio5 2 GPIO_ACTIVE_LOW>; 8392aa0995SMarek Vasut linux,code = <KEY_3>; 8492aa0995SMarek Vasut label = "SW2-3"; 8592aa0995SMarek Vasut wakeup-source; 8692aa0995SMarek Vasut debounce-interval = <20>; 8792aa0995SMarek Vasut }; 8892aa0995SMarek Vasut key-4 { 8992aa0995SMarek Vasut gpios = <&gpio5 3 GPIO_ACTIVE_LOW>; 9092aa0995SMarek Vasut linux,code = <KEY_4>; 9192aa0995SMarek Vasut label = "SW2-4"; 9292aa0995SMarek Vasut wakeup-source; 9392aa0995SMarek Vasut debounce-interval = <20>; 9492aa0995SMarek Vasut }; 9592aa0995SMarek Vasut key-a { 9692aa0995SMarek Vasut gpios = <&gpio7 0 GPIO_ACTIVE_LOW>; 9792aa0995SMarek Vasut linux,code = <KEY_A>; 9892aa0995SMarek Vasut label = "SW30"; 9992aa0995SMarek Vasut wakeup-source; 10092aa0995SMarek Vasut debounce-interval = <20>; 10192aa0995SMarek Vasut }; 10292aa0995SMarek Vasut key-b { 10392aa0995SMarek Vasut gpios = <&gpio7 1 GPIO_ACTIVE_LOW>; 10492aa0995SMarek Vasut linux,code = <KEY_B>; 10592aa0995SMarek Vasut label = "SW31"; 10692aa0995SMarek Vasut wakeup-source; 10792aa0995SMarek Vasut debounce-interval = <20>; 10892aa0995SMarek Vasut }; 10992aa0995SMarek Vasut key-c { 11092aa0995SMarek Vasut gpios = <&gpio7 2 GPIO_ACTIVE_LOW>; 11192aa0995SMarek Vasut linux,code = <KEY_C>; 11292aa0995SMarek Vasut label = "SW32"; 11392aa0995SMarek Vasut wakeup-source; 11492aa0995SMarek Vasut debounce-interval = <20>; 11592aa0995SMarek Vasut }; 11692aa0995SMarek Vasut key-d { 11792aa0995SMarek Vasut gpios = <&gpio7 3 GPIO_ACTIVE_LOW>; 11892aa0995SMarek Vasut linux,code = <KEY_D>; 11992aa0995SMarek Vasut label = "SW33"; 12092aa0995SMarek Vasut wakeup-source; 12192aa0995SMarek Vasut debounce-interval = <20>; 12292aa0995SMarek Vasut }; 12392aa0995SMarek Vasut key-e { 12492aa0995SMarek Vasut gpios = <&gpio7 4 GPIO_ACTIVE_LOW>; 12592aa0995SMarek Vasut linux,code = <KEY_E>; 12692aa0995SMarek Vasut label = "SW34"; 12792aa0995SMarek Vasut wakeup-source; 12892aa0995SMarek Vasut debounce-interval = <20>; 12992aa0995SMarek Vasut }; 13092aa0995SMarek Vasut key-f { 13192aa0995SMarek Vasut gpios = <&gpio7 5 GPIO_ACTIVE_LOW>; 13292aa0995SMarek Vasut linux,code = <KEY_F>; 13392aa0995SMarek Vasut label = "SW35"; 13492aa0995SMarek Vasut wakeup-source; 13592aa0995SMarek Vasut debounce-interval = <20>; 13692aa0995SMarek Vasut }; 13792aa0995SMarek Vasut key-g { 13892aa0995SMarek Vasut gpios = <&gpio7 6 GPIO_ACTIVE_LOW>; 13992aa0995SMarek Vasut linux,code = <KEY_G>; 14092aa0995SMarek Vasut label = "SW36"; 14192aa0995SMarek Vasut wakeup-source; 14292aa0995SMarek Vasut debounce-interval = <20>; 14392aa0995SMarek Vasut }; 14492aa0995SMarek Vasut }; 14592aa0995SMarek Vasut 14692aa0995SMarek Vasut leds { 14792aa0995SMarek Vasut compatible = "gpio-leds"; 14892aa0995SMarek Vasut led6 { 14992aa0995SMarek Vasut gpios = <&gpio2 19 GPIO_ACTIVE_HIGH>; 15092aa0995SMarek Vasut label = "LED6"; 15192aa0995SMarek Vasut }; 15292aa0995SMarek Vasut led7 { 15392aa0995SMarek Vasut gpios = <&gpio2 20 GPIO_ACTIVE_HIGH>; 15492aa0995SMarek Vasut label = "LED7"; 15592aa0995SMarek Vasut }; 15692aa0995SMarek Vasut led8 { 15792aa0995SMarek Vasut gpios = <&gpio2 21 GPIO_ACTIVE_HIGH>; 15892aa0995SMarek Vasut label = "LED8"; 15992aa0995SMarek Vasut }; 16092aa0995SMarek Vasut }; 16192aa0995SMarek Vasut 16292aa0995SMarek Vasut vcc_sdhi0: regulator-vcc-sdhi0 { 16392aa0995SMarek Vasut compatible = "regulator-fixed"; 16492aa0995SMarek Vasut 16592aa0995SMarek Vasut regulator-name = "SDHI0 Vcc"; 16692aa0995SMarek Vasut regulator-min-microvolt = <3300000>; 16792aa0995SMarek Vasut regulator-max-microvolt = <3300000>; 16892aa0995SMarek Vasut 16992aa0995SMarek Vasut gpio = <&gpio7 17 GPIO_ACTIVE_HIGH>; 17092aa0995SMarek Vasut enable-active-high; 17192aa0995SMarek Vasut }; 17292aa0995SMarek Vasut 17392aa0995SMarek Vasut vccq_sdhi0: regulator-vccq-sdhi0 { 17492aa0995SMarek Vasut compatible = "regulator-gpio"; 17592aa0995SMarek Vasut 17692aa0995SMarek Vasut regulator-name = "SDHI0 VccQ"; 17792aa0995SMarek Vasut regulator-min-microvolt = <1800000>; 17892aa0995SMarek Vasut regulator-max-microvolt = <3300000>; 17992aa0995SMarek Vasut 18092aa0995SMarek Vasut gpios = <&gpio2 12 GPIO_ACTIVE_HIGH>; 18192aa0995SMarek Vasut gpios-states = <1>; 18292aa0995SMarek Vasut states = <3300000 1 18392aa0995SMarek Vasut 1800000 0>; 18492aa0995SMarek Vasut }; 18592aa0995SMarek Vasut 18692aa0995SMarek Vasut vcc_sdhi1: regulator-vcc-sdhi1 { 18792aa0995SMarek Vasut compatible = "regulator-fixed"; 18892aa0995SMarek Vasut 18992aa0995SMarek Vasut regulator-name = "SDHI1 Vcc"; 19092aa0995SMarek Vasut regulator-min-microvolt = <3300000>; 19192aa0995SMarek Vasut regulator-max-microvolt = <3300000>; 19292aa0995SMarek Vasut 19392aa0995SMarek Vasut gpio = <&gpio7 18 GPIO_ACTIVE_HIGH>; 19492aa0995SMarek Vasut enable-active-high; 19592aa0995SMarek Vasut }; 19692aa0995SMarek Vasut 19792aa0995SMarek Vasut vccq_sdhi1: regulator-vccq-sdhi1 { 19892aa0995SMarek Vasut compatible = "regulator-gpio"; 19992aa0995SMarek Vasut 20092aa0995SMarek Vasut regulator-name = "SDHI1 VccQ"; 20192aa0995SMarek Vasut regulator-min-microvolt = <1800000>; 20292aa0995SMarek Vasut regulator-max-microvolt = <3300000>; 20392aa0995SMarek Vasut 20492aa0995SMarek Vasut gpios = <&gpio2 13 GPIO_ACTIVE_HIGH>; 20592aa0995SMarek Vasut gpios-states = <1>; 20692aa0995SMarek Vasut states = <3300000 1 20792aa0995SMarek Vasut 1800000 0>; 20892aa0995SMarek Vasut }; 20992aa0995SMarek Vasut 21092aa0995SMarek Vasut vcc_sdhi2: regulator-vcc-sdhi2 { 21192aa0995SMarek Vasut compatible = "regulator-fixed"; 21292aa0995SMarek Vasut 21392aa0995SMarek Vasut regulator-name = "SDHI2 Vcc"; 21492aa0995SMarek Vasut regulator-min-microvolt = <3300000>; 21592aa0995SMarek Vasut regulator-max-microvolt = <3300000>; 21692aa0995SMarek Vasut 21792aa0995SMarek Vasut gpio = <&gpio7 19 GPIO_ACTIVE_HIGH>; 21892aa0995SMarek Vasut enable-active-high; 21992aa0995SMarek Vasut }; 22092aa0995SMarek Vasut 22192aa0995SMarek Vasut vccq_sdhi2: regulator-vccq-sdhi2 { 22292aa0995SMarek Vasut compatible = "regulator-gpio"; 22392aa0995SMarek Vasut 22492aa0995SMarek Vasut regulator-name = "SDHI2 VccQ"; 22592aa0995SMarek Vasut regulator-min-microvolt = <1800000>; 22692aa0995SMarek Vasut regulator-max-microvolt = <3300000>; 22792aa0995SMarek Vasut 22892aa0995SMarek Vasut gpios = <&gpio2 26 GPIO_ACTIVE_HIGH>; 22992aa0995SMarek Vasut gpios-states = <1>; 23092aa0995SMarek Vasut states = <3300000 1 23192aa0995SMarek Vasut 1800000 0>; 23292aa0995SMarek Vasut }; 23392aa0995SMarek Vasut 23492aa0995SMarek Vasut audio_clock: audio_clock { 23592aa0995SMarek Vasut compatible = "fixed-clock"; 23692aa0995SMarek Vasut #clock-cells = <0>; 23792aa0995SMarek Vasut clock-frequency = <11289600>; 23892aa0995SMarek Vasut }; 23992aa0995SMarek Vasut 24092aa0995SMarek Vasut rsnd_ak4643: sound { 24192aa0995SMarek Vasut compatible = "simple-audio-card"; 24292aa0995SMarek Vasut 24392aa0995SMarek Vasut simple-audio-card,format = "left_j"; 24492aa0995SMarek Vasut simple-audio-card,bitclock-master = <&sndcodec>; 24592aa0995SMarek Vasut simple-audio-card,frame-master = <&sndcodec>; 24692aa0995SMarek Vasut 24792aa0995SMarek Vasut sndcpu: simple-audio-card,cpu { 24892aa0995SMarek Vasut sound-dai = <&rcar_sound>; 24992aa0995SMarek Vasut }; 25092aa0995SMarek Vasut 25192aa0995SMarek Vasut sndcodec: simple-audio-card,codec { 25292aa0995SMarek Vasut sound-dai = <&ak4643>; 25392aa0995SMarek Vasut clocks = <&audio_clock>; 25492aa0995SMarek Vasut }; 25592aa0995SMarek Vasut }; 25692aa0995SMarek Vasut 25792aa0995SMarek Vasut hdmi-in { 25892aa0995SMarek Vasut compatible = "hdmi-connector"; 25992aa0995SMarek Vasut type = "a"; 26092aa0995SMarek Vasut 26192aa0995SMarek Vasut port { 26292aa0995SMarek Vasut hdmi_con_in: endpoint { 26392aa0995SMarek Vasut remote-endpoint = <&adv7612_in>; 26492aa0995SMarek Vasut }; 26592aa0995SMarek Vasut }; 26692aa0995SMarek Vasut }; 26792aa0995SMarek Vasut 26892aa0995SMarek Vasut hdmi-out { 26992aa0995SMarek Vasut compatible = "hdmi-connector"; 27092aa0995SMarek Vasut type = "a"; 27192aa0995SMarek Vasut 27292aa0995SMarek Vasut port { 27392aa0995SMarek Vasut hdmi_con_out: endpoint { 27492aa0995SMarek Vasut remote-endpoint = <&adv7511_out>; 27592aa0995SMarek Vasut }; 27692aa0995SMarek Vasut }; 27792aa0995SMarek Vasut }; 27892aa0995SMarek Vasut 27992aa0995SMarek Vasut composite-in { 28092aa0995SMarek Vasut compatible = "composite-video-connector"; 28192aa0995SMarek Vasut 28292aa0995SMarek Vasut port { 28392aa0995SMarek Vasut composite_con_in: endpoint { 28492aa0995SMarek Vasut remote-endpoint = <&adv7180_in>; 28592aa0995SMarek Vasut }; 28692aa0995SMarek Vasut }; 28792aa0995SMarek Vasut }; 28892aa0995SMarek Vasut 28992aa0995SMarek Vasut x2_clk: x2-clock { 29092aa0995SMarek Vasut compatible = "fixed-clock"; 29192aa0995SMarek Vasut #clock-cells = <0>; 29292aa0995SMarek Vasut clock-frequency = <74250000>; 29392aa0995SMarek Vasut }; 29492aa0995SMarek Vasut 29592aa0995SMarek Vasut x13_clk: x13-clock { 29692aa0995SMarek Vasut compatible = "fixed-clock"; 29792aa0995SMarek Vasut #clock-cells = <0>; 29892aa0995SMarek Vasut clock-frequency = <148500000>; 29992aa0995SMarek Vasut }; 300252c8b45SMarek Vasut 301252c8b45SMarek Vasut gpioi2c2: i2c-9 { 302252c8b45SMarek Vasut #address-cells = <1>; 303252c8b45SMarek Vasut #size-cells = <0>; 304252c8b45SMarek Vasut compatible = "i2c-gpio"; 305252c8b45SMarek Vasut status = "disabled"; 306252c8b45SMarek Vasut scl-gpios = <&gpio2 6 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 307252c8b45SMarek Vasut sda-gpios = <&gpio2 7 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 308252c8b45SMarek Vasut i2c-gpio,delay-us = <5>; 309252c8b45SMarek Vasut }; 310252c8b45SMarek Vasut 311252c8b45SMarek Vasut gpioi2c4: i2c-10 { 312252c8b45SMarek Vasut #address-cells = <1>; 313252c8b45SMarek Vasut #size-cells = <0>; 314252c8b45SMarek Vasut compatible = "i2c-gpio"; 315252c8b45SMarek Vasut status = "disabled"; 316252c8b45SMarek Vasut scl-gpios = <&gpio7 13 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 317252c8b45SMarek Vasut sda-gpios = <&gpio7 14 (GPIO_ACTIVE_HIGH | GPIO_OPEN_DRAIN)>; 318252c8b45SMarek Vasut i2c-gpio,delay-us = <5>; 319252c8b45SMarek Vasut }; 320252c8b45SMarek Vasut 321252c8b45SMarek Vasut /* 322252c8b45SMarek Vasut * A fallback to GPIO is provided for I2C2. 323252c8b45SMarek Vasut */ 324252c8b45SMarek Vasut i2chdmi: i2c-11 { 325252c8b45SMarek Vasut compatible = "i2c-demux-pinctrl"; 326252c8b45SMarek Vasut i2c-parent = <&i2c2>, <&gpioi2c2>; 327252c8b45SMarek Vasut i2c-bus-name = "i2c-hdmi"; 328252c8b45SMarek Vasut #address-cells = <1>; 329252c8b45SMarek Vasut #size-cells = <0>; 330252c8b45SMarek Vasut 331252c8b45SMarek Vasut ak4643: codec@12 { 332252c8b45SMarek Vasut compatible = "asahi-kasei,ak4643"; 333252c8b45SMarek Vasut #sound-dai-cells = <0>; 334252c8b45SMarek Vasut reg = <0x12>; 335252c8b45SMarek Vasut }; 336252c8b45SMarek Vasut 337252c8b45SMarek Vasut composite-in@20 { 338252c8b45SMarek Vasut compatible = "adi,adv7180cp"; 339252c8b45SMarek Vasut reg = <0x20>; 340252c8b45SMarek Vasut remote = <&vin1>; 341252c8b45SMarek Vasut 342252c8b45SMarek Vasut port { 343252c8b45SMarek Vasut #address-cells = <1>; 344252c8b45SMarek Vasut #size-cells = <0>; 345252c8b45SMarek Vasut 346252c8b45SMarek Vasut port@0 { 347252c8b45SMarek Vasut reg = <0>; 348252c8b45SMarek Vasut adv7180_in: endpoint { 349252c8b45SMarek Vasut remote-endpoint = <&composite_con_in>; 350252c8b45SMarek Vasut }; 351252c8b45SMarek Vasut }; 352252c8b45SMarek Vasut 353252c8b45SMarek Vasut port@3 { 354252c8b45SMarek Vasut reg = <3>; 355252c8b45SMarek Vasut adv7180_out: endpoint { 356252c8b45SMarek Vasut bus-width = <8>; 357252c8b45SMarek Vasut remote-endpoint = <&vin1ep>; 358252c8b45SMarek Vasut }; 359252c8b45SMarek Vasut }; 360252c8b45SMarek Vasut }; 361252c8b45SMarek Vasut }; 362252c8b45SMarek Vasut 363252c8b45SMarek Vasut hdmi@39 { 364252c8b45SMarek Vasut compatible = "adi,adv7511w"; 365252c8b45SMarek Vasut reg = <0x39>; 366252c8b45SMarek Vasut interrupt-parent = <&gpio3>; 367252c8b45SMarek Vasut interrupts = <29 IRQ_TYPE_LEVEL_LOW>; 368252c8b45SMarek Vasut 369252c8b45SMarek Vasut adi,input-depth = <8>; 370252c8b45SMarek Vasut adi,input-colorspace = "rgb"; 371252c8b45SMarek Vasut adi,input-clock = "1x"; 372252c8b45SMarek Vasut adi,input-style = <1>; 373252c8b45SMarek Vasut adi,input-justification = "evenly"; 374252c8b45SMarek Vasut 375252c8b45SMarek Vasut ports { 376252c8b45SMarek Vasut #address-cells = <1>; 377252c8b45SMarek Vasut #size-cells = <0>; 378252c8b45SMarek Vasut 379252c8b45SMarek Vasut port@0 { 380252c8b45SMarek Vasut reg = <0>; 381252c8b45SMarek Vasut adv7511_in: endpoint { 382252c8b45SMarek Vasut remote-endpoint = <&du_out_rgb>; 383252c8b45SMarek Vasut }; 384252c8b45SMarek Vasut }; 385252c8b45SMarek Vasut 386252c8b45SMarek Vasut port@1 { 387252c8b45SMarek Vasut reg = <1>; 388252c8b45SMarek Vasut adv7511_out: endpoint { 389252c8b45SMarek Vasut remote-endpoint = <&hdmi_con_out>; 390252c8b45SMarek Vasut }; 391252c8b45SMarek Vasut }; 392252c8b45SMarek Vasut }; 393252c8b45SMarek Vasut }; 394252c8b45SMarek Vasut 395252c8b45SMarek Vasut hdmi-in@4c { 396252c8b45SMarek Vasut compatible = "adi,adv7612"; 397252c8b45SMarek Vasut reg = <0x4c>; 398252c8b45SMarek Vasut interrupt-parent = <&gpio4>; 399252c8b45SMarek Vasut interrupts = <2 IRQ_TYPE_LEVEL_LOW>; 400252c8b45SMarek Vasut default-input = <0>; 401252c8b45SMarek Vasut 402252c8b45SMarek Vasut port { 403252c8b45SMarek Vasut #address-cells = <1>; 404252c8b45SMarek Vasut #size-cells = <0>; 405252c8b45SMarek Vasut 406252c8b45SMarek Vasut port@0 { 407252c8b45SMarek Vasut reg = <0>; 408252c8b45SMarek Vasut adv7612_in: endpoint { 409252c8b45SMarek Vasut remote-endpoint = <&hdmi_con_in>; 410252c8b45SMarek Vasut }; 411252c8b45SMarek Vasut }; 412252c8b45SMarek Vasut 413252c8b45SMarek Vasut port@2 { 414252c8b45SMarek Vasut reg = <2>; 415252c8b45SMarek Vasut adv7612_out: endpoint { 416252c8b45SMarek Vasut remote-endpoint = <&vin0ep2>; 417252c8b45SMarek Vasut }; 418252c8b45SMarek Vasut }; 419252c8b45SMarek Vasut }; 420252c8b45SMarek Vasut }; 421252c8b45SMarek Vasut 422252c8b45SMarek Vasut eeprom@50 { 423252c8b45SMarek Vasut compatible = "renesas,r1ex24002", "atmel,24c02"; 424252c8b45SMarek Vasut reg = <0x50>; 425252c8b45SMarek Vasut pagesize = <16>; 426252c8b45SMarek Vasut }; 427252c8b45SMarek Vasut }; 428252c8b45SMarek Vasut 429252c8b45SMarek Vasut /* 430252c8b45SMarek Vasut * I2C4 is routed to EXIO connector E, pins 37 (SCL) + 39 (SDA). 431252c8b45SMarek Vasut * A fallback to GPIO is provided. 432252c8b45SMarek Vasut */ 433252c8b45SMarek Vasut i2cexio4: i2c-12 { 434252c8b45SMarek Vasut compatible = "i2c-demux-pinctrl"; 435252c8b45SMarek Vasut i2c-parent = <&i2c4>, <&gpioi2c4>; 436252c8b45SMarek Vasut i2c-bus-name = "i2c-exio4"; 437252c8b45SMarek Vasut #address-cells = <1>; 438252c8b45SMarek Vasut #size-cells = <0>; 439252c8b45SMarek Vasut }; 44092aa0995SMarek Vasut}; 44192aa0995SMarek Vasut 44292aa0995SMarek Vasut&du { 44392aa0995SMarek Vasut pinctrl-0 = <&du_pins>; 44492aa0995SMarek Vasut pinctrl-names = "default"; 44592aa0995SMarek Vasut status = "okay"; 44692aa0995SMarek Vasut 447252c8b45SMarek Vasut clocks = <&cpg CPG_MOD 724>, <&cpg CPG_MOD 723>, 44892aa0995SMarek Vasut <&x13_clk>, <&x2_clk>; 449252c8b45SMarek Vasut clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; 45092aa0995SMarek Vasut 45192aa0995SMarek Vasut ports { 45292aa0995SMarek Vasut port@0 { 45392aa0995SMarek Vasut endpoint { 45492aa0995SMarek Vasut remote-endpoint = <&adv7511_in>; 45592aa0995SMarek Vasut }; 45692aa0995SMarek Vasut }; 457252c8b45SMarek Vasut }; 458252c8b45SMarek Vasut}; 459252c8b45SMarek Vasut 460252c8b45SMarek Vasut&lvds0 { 461252c8b45SMarek Vasut ports { 46292aa0995SMarek Vasut port@1 { 46392aa0995SMarek Vasut lvds_connector: endpoint { 46492aa0995SMarek Vasut }; 46592aa0995SMarek Vasut }; 46692aa0995SMarek Vasut }; 46792aa0995SMarek Vasut}; 46892aa0995SMarek Vasut 46992aa0995SMarek Vasut&extal_clk { 47092aa0995SMarek Vasut clock-frequency = <20000000>; 47192aa0995SMarek Vasut}; 47292aa0995SMarek Vasut 47392aa0995SMarek Vasut&pfc { 47492aa0995SMarek Vasut pinctrl-0 = <&scif_clk_pins>; 47592aa0995SMarek Vasut pinctrl-names = "default"; 47692aa0995SMarek Vasut 47792aa0995SMarek Vasut i2c2_pins: i2c2 { 47892aa0995SMarek Vasut groups = "i2c2"; 47992aa0995SMarek Vasut function = "i2c2"; 48092aa0995SMarek Vasut }; 48192aa0995SMarek Vasut 482252c8b45SMarek Vasut i2c4_pins: i2c4 { 483252c8b45SMarek Vasut groups = "i2c4_c"; 484252c8b45SMarek Vasut function = "i2c4"; 485252c8b45SMarek Vasut }; 486252c8b45SMarek Vasut 48792aa0995SMarek Vasut du_pins: du { 48892aa0995SMarek Vasut groups = "du_rgb888", "du_sync", "du_disp", "du_clk_out_0"; 48992aa0995SMarek Vasut function = "du"; 49092aa0995SMarek Vasut }; 49192aa0995SMarek Vasut 49292aa0995SMarek Vasut scif0_pins: scif0 { 49392aa0995SMarek Vasut groups = "scif0_data_d"; 49492aa0995SMarek Vasut function = "scif0"; 49592aa0995SMarek Vasut }; 49692aa0995SMarek Vasut 49792aa0995SMarek Vasut scif1_pins: scif1 { 49892aa0995SMarek Vasut groups = "scif1_data_d"; 49992aa0995SMarek Vasut function = "scif1"; 50092aa0995SMarek Vasut }; 50192aa0995SMarek Vasut 50292aa0995SMarek Vasut scif_clk_pins: scif_clk { 50392aa0995SMarek Vasut groups = "scif_clk"; 50492aa0995SMarek Vasut function = "scif_clk"; 50592aa0995SMarek Vasut }; 50692aa0995SMarek Vasut 50792aa0995SMarek Vasut ether_pins: ether { 50892aa0995SMarek Vasut groups = "eth_link", "eth_mdio", "eth_rmii"; 50992aa0995SMarek Vasut function = "eth"; 51092aa0995SMarek Vasut }; 51192aa0995SMarek Vasut 51292aa0995SMarek Vasut phy1_pins: phy1 { 51392aa0995SMarek Vasut groups = "intc_irq0"; 51492aa0995SMarek Vasut function = "intc"; 51592aa0995SMarek Vasut }; 51692aa0995SMarek Vasut 51792aa0995SMarek Vasut sdhi0_pins: sd0 { 51892aa0995SMarek Vasut groups = "sdhi0_data4", "sdhi0_ctrl"; 51992aa0995SMarek Vasut function = "sdhi0"; 52092aa0995SMarek Vasut power-source = <3300>; 52192aa0995SMarek Vasut }; 52292aa0995SMarek Vasut 52392aa0995SMarek Vasut sdhi0_pins_uhs: sd0_uhs { 52492aa0995SMarek Vasut groups = "sdhi0_data4", "sdhi0_ctrl"; 52592aa0995SMarek Vasut function = "sdhi0"; 52692aa0995SMarek Vasut power-source = <1800>; 52792aa0995SMarek Vasut }; 52892aa0995SMarek Vasut 52992aa0995SMarek Vasut sdhi1_pins: sd1 { 53092aa0995SMarek Vasut groups = "sdhi1_data4", "sdhi1_ctrl"; 53192aa0995SMarek Vasut function = "sdhi1"; 53292aa0995SMarek Vasut power-source = <3300>; 53392aa0995SMarek Vasut }; 53492aa0995SMarek Vasut 53592aa0995SMarek Vasut sdhi1_pins_uhs: sd1_uhs { 53692aa0995SMarek Vasut groups = "sdhi1_data4", "sdhi1_ctrl"; 53792aa0995SMarek Vasut function = "sdhi1"; 53892aa0995SMarek Vasut power-source = <1800>; 53992aa0995SMarek Vasut }; 54092aa0995SMarek Vasut 54192aa0995SMarek Vasut sdhi2_pins: sd2 { 54292aa0995SMarek Vasut groups = "sdhi2_data4", "sdhi2_ctrl"; 54392aa0995SMarek Vasut function = "sdhi2"; 54492aa0995SMarek Vasut power-source = <3300>; 54592aa0995SMarek Vasut }; 54692aa0995SMarek Vasut 54792aa0995SMarek Vasut sdhi2_pins_uhs: sd2_uhs { 54892aa0995SMarek Vasut groups = "sdhi2_data4", "sdhi2_ctrl"; 54992aa0995SMarek Vasut function = "sdhi2"; 55092aa0995SMarek Vasut power-source = <1800>; 55192aa0995SMarek Vasut }; 55292aa0995SMarek Vasut 55392aa0995SMarek Vasut qspi_pins: qspi { 55492aa0995SMarek Vasut groups = "qspi_ctrl", "qspi_data4"; 55592aa0995SMarek Vasut function = "qspi"; 55692aa0995SMarek Vasut }; 55792aa0995SMarek Vasut 55892aa0995SMarek Vasut sound_pins: sound { 55992aa0995SMarek Vasut groups = "ssi0129_ctrl", "ssi0_data", "ssi1_data"; 56092aa0995SMarek Vasut function = "ssi"; 56192aa0995SMarek Vasut }; 56292aa0995SMarek Vasut 56392aa0995SMarek Vasut sound_clk_pins: sound_clk { 56492aa0995SMarek Vasut groups = "audio_clk_a"; 56592aa0995SMarek Vasut function = "audio_clk"; 56692aa0995SMarek Vasut }; 56792aa0995SMarek Vasut 56892aa0995SMarek Vasut vin0_pins: vin0 { 56992aa0995SMarek Vasut groups = "vin0_data24", "vin0_sync", "vin0_clkenb", "vin0_clk"; 57092aa0995SMarek Vasut function = "vin0"; 57192aa0995SMarek Vasut }; 57292aa0995SMarek Vasut 57392aa0995SMarek Vasut vin1_pins: vin1 { 57492aa0995SMarek Vasut groups = "vin1_data8", "vin1_clk"; 57592aa0995SMarek Vasut function = "vin1"; 57692aa0995SMarek Vasut }; 57792aa0995SMarek Vasut}; 57892aa0995SMarek Vasut 57992aa0995SMarek Vasutðer { 58092aa0995SMarek Vasut pinctrl-0 = <ðer_pins &phy1_pins>; 58192aa0995SMarek Vasut pinctrl-names = "default"; 58292aa0995SMarek Vasut 58392aa0995SMarek Vasut phy-handle = <&phy1>; 58492aa0995SMarek Vasut renesas,ether-link-active-low; 58592aa0995SMarek Vasut status = "okay"; 58692aa0995SMarek Vasut 58792aa0995SMarek Vasut phy1: ethernet-phy@1 { 58892aa0995SMarek Vasut reg = <1>; 58992aa0995SMarek Vasut interrupt-parent = <&irqc0>; 59092aa0995SMarek Vasut interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 59192aa0995SMarek Vasut micrel,led-mode = <1>; 59292aa0995SMarek Vasut }; 59392aa0995SMarek Vasut}; 59492aa0995SMarek Vasut 59592aa0995SMarek Vasut&cmt0 { 59692aa0995SMarek Vasut status = "okay"; 59792aa0995SMarek Vasut}; 59892aa0995SMarek Vasut 599*3b255531SMarek Vasut&rwdt { 600*3b255531SMarek Vasut timeout-sec = <60>; 601*3b255531SMarek Vasut status = "okay"; 602*3b255531SMarek Vasut}; 603*3b255531SMarek Vasut 60492aa0995SMarek Vasut&scif0 { 60592aa0995SMarek Vasut pinctrl-0 = <&scif0_pins>; 60692aa0995SMarek Vasut pinctrl-names = "default"; 60792aa0995SMarek Vasut 60892aa0995SMarek Vasut status = "okay"; 60992aa0995SMarek Vasut}; 61092aa0995SMarek Vasut 61192aa0995SMarek Vasut&scif1 { 61292aa0995SMarek Vasut pinctrl-0 = <&scif1_pins>; 61392aa0995SMarek Vasut pinctrl-names = "default"; 61492aa0995SMarek Vasut 61592aa0995SMarek Vasut status = "okay"; 61692aa0995SMarek Vasut}; 61792aa0995SMarek Vasut 61892aa0995SMarek Vasut&scif_clk { 61992aa0995SMarek Vasut clock-frequency = <14745600>; 62092aa0995SMarek Vasut}; 62192aa0995SMarek Vasut 62292aa0995SMarek Vasut&sdhi0 { 62392aa0995SMarek Vasut pinctrl-0 = <&sdhi0_pins>; 62492aa0995SMarek Vasut pinctrl-1 = <&sdhi0_pins_uhs>; 62592aa0995SMarek Vasut pinctrl-names = "default", "state_uhs"; 62692aa0995SMarek Vasut 62792aa0995SMarek Vasut vmmc-supply = <&vcc_sdhi0>; 62892aa0995SMarek Vasut vqmmc-supply = <&vccq_sdhi0>; 62992aa0995SMarek Vasut cd-gpios = <&gpio6 6 GPIO_ACTIVE_LOW>; 63092aa0995SMarek Vasut wp-gpios = <&gpio6 7 GPIO_ACTIVE_HIGH>; 63192aa0995SMarek Vasut sd-uhs-sdr50; 63292aa0995SMarek Vasut sd-uhs-sdr104; 63392aa0995SMarek Vasut status = "okay"; 63492aa0995SMarek Vasut}; 63592aa0995SMarek Vasut 63692aa0995SMarek Vasut&sdhi1 { 63792aa0995SMarek Vasut pinctrl-0 = <&sdhi1_pins>; 63892aa0995SMarek Vasut pinctrl-1 = <&sdhi1_pins_uhs>; 63992aa0995SMarek Vasut pinctrl-names = "default", "state_uhs"; 64092aa0995SMarek Vasut 64192aa0995SMarek Vasut vmmc-supply = <&vcc_sdhi1>; 64292aa0995SMarek Vasut vqmmc-supply = <&vccq_sdhi1>; 64392aa0995SMarek Vasut cd-gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; 64492aa0995SMarek Vasut wp-gpios = <&gpio6 15 GPIO_ACTIVE_HIGH>; 64592aa0995SMarek Vasut sd-uhs-sdr50; 64692aa0995SMarek Vasut status = "okay"; 64792aa0995SMarek Vasut}; 64892aa0995SMarek Vasut 64992aa0995SMarek Vasut&sdhi2 { 65092aa0995SMarek Vasut pinctrl-0 = <&sdhi2_pins>; 65192aa0995SMarek Vasut pinctrl-1 = <&sdhi2_pins_uhs>; 65292aa0995SMarek Vasut pinctrl-names = "default", "state_uhs"; 65392aa0995SMarek Vasut 65492aa0995SMarek Vasut vmmc-supply = <&vcc_sdhi2>; 65592aa0995SMarek Vasut vqmmc-supply = <&vccq_sdhi2>; 65692aa0995SMarek Vasut cd-gpios = <&gpio6 22 GPIO_ACTIVE_LOW>; 65792aa0995SMarek Vasut sd-uhs-sdr50; 65892aa0995SMarek Vasut status = "okay"; 65992aa0995SMarek Vasut}; 66092aa0995SMarek Vasut 66192aa0995SMarek Vasut&qspi { 66292aa0995SMarek Vasut pinctrl-0 = <&qspi_pins>; 66392aa0995SMarek Vasut pinctrl-names = "default"; 66492aa0995SMarek Vasut 66592aa0995SMarek Vasut status = "okay"; 66692aa0995SMarek Vasut 66792aa0995SMarek Vasut flash@0 { 66892aa0995SMarek Vasut compatible = "spansion,s25fl512s", "jedec,spi-nor"; 66992aa0995SMarek Vasut reg = <0>; 67092aa0995SMarek Vasut spi-max-frequency = <30000000>; 67192aa0995SMarek Vasut spi-tx-bus-width = <4>; 67292aa0995SMarek Vasut spi-rx-bus-width = <4>; 67392aa0995SMarek Vasut spi-cpol; 67492aa0995SMarek Vasut spi-cpha; 67592aa0995SMarek Vasut m25p,fast-read; 67692aa0995SMarek Vasut 67792aa0995SMarek Vasut partitions { 67892aa0995SMarek Vasut compatible = "fixed-partitions"; 67992aa0995SMarek Vasut #address-cells = <1>; 68092aa0995SMarek Vasut #size-cells = <1>; 68192aa0995SMarek Vasut 68292aa0995SMarek Vasut partition@0 { 68392aa0995SMarek Vasut label = "loader"; 68492aa0995SMarek Vasut reg = <0x00000000 0x00040000>; 68592aa0995SMarek Vasut read-only; 68692aa0995SMarek Vasut }; 68792aa0995SMarek Vasut partition@40000 { 68892aa0995SMarek Vasut label = "user"; 68992aa0995SMarek Vasut reg = <0x00040000 0x00400000>; 69092aa0995SMarek Vasut read-only; 69192aa0995SMarek Vasut }; 69292aa0995SMarek Vasut partition@440000 { 69392aa0995SMarek Vasut label = "flash"; 69492aa0995SMarek Vasut reg = <0x00440000 0x03bc0000>; 69592aa0995SMarek Vasut }; 69692aa0995SMarek Vasut }; 69792aa0995SMarek Vasut }; 69892aa0995SMarek Vasut}; 69992aa0995SMarek Vasut 70092aa0995SMarek Vasut&i2c2 { 70192aa0995SMarek Vasut pinctrl-0 = <&i2c2_pins>; 702252c8b45SMarek Vasut pinctrl-names = "i2c-hdmi"; 70392aa0995SMarek Vasut 70492aa0995SMarek Vasut status = "okay"; 70592aa0995SMarek Vasut clock-frequency = <100000>; 70692aa0995SMarek Vasut 70792aa0995SMarek Vasut}; 70892aa0995SMarek Vasut 70992aa0995SMarek Vasut&i2c6 { 71092aa0995SMarek Vasut status = "okay"; 71192aa0995SMarek Vasut clock-frequency = <100000>; 71292aa0995SMarek Vasut 71392aa0995SMarek Vasut pmic@58 { 71492aa0995SMarek Vasut compatible = "dlg,da9063"; 71592aa0995SMarek Vasut reg = <0x58>; 71692aa0995SMarek Vasut interrupt-parent = <&irqc0>; 71792aa0995SMarek Vasut interrupts = <2 IRQ_TYPE_LEVEL_LOW>; 71892aa0995SMarek Vasut interrupt-controller; 71992aa0995SMarek Vasut 72092aa0995SMarek Vasut rtc { 72192aa0995SMarek Vasut compatible = "dlg,da9063-rtc"; 72292aa0995SMarek Vasut }; 72392aa0995SMarek Vasut 72492aa0995SMarek Vasut wdt { 72592aa0995SMarek Vasut compatible = "dlg,da9063-watchdog"; 72692aa0995SMarek Vasut }; 72792aa0995SMarek Vasut }; 72892aa0995SMarek Vasut}; 72992aa0995SMarek Vasut 730252c8b45SMarek Vasut&i2c4 { 731252c8b45SMarek Vasut pinctrl-0 = <&i2c4_pins>; 732252c8b45SMarek Vasut pinctrl-names = "i2c-exio4"; 733252c8b45SMarek Vasut}; 734252c8b45SMarek Vasut 73592aa0995SMarek Vasut&rcar_sound { 73692aa0995SMarek Vasut pinctrl-0 = <&sound_pins &sound_clk_pins>; 73792aa0995SMarek Vasut pinctrl-names = "default"; 73892aa0995SMarek Vasut 73992aa0995SMarek Vasut /* Single DAI */ 74092aa0995SMarek Vasut #sound-dai-cells = <0>; 74192aa0995SMarek Vasut 74292aa0995SMarek Vasut status = "okay"; 74392aa0995SMarek Vasut 74492aa0995SMarek Vasut rcar_sound,dai { 74592aa0995SMarek Vasut dai0 { 74692aa0995SMarek Vasut playback = <&ssi0 &src2 &dvc0>; 74792aa0995SMarek Vasut capture = <&ssi1 &src3 &dvc1>; 74892aa0995SMarek Vasut }; 74992aa0995SMarek Vasut }; 75092aa0995SMarek Vasut}; 75192aa0995SMarek Vasut 75292aa0995SMarek Vasut&ssi1 { 75392aa0995SMarek Vasut shared-pin; 75492aa0995SMarek Vasut}; 75592aa0995SMarek Vasut 75692aa0995SMarek Vasut/* HDMI video input */ 75792aa0995SMarek Vasut&vin0 { 75892aa0995SMarek Vasut status = "okay"; 75992aa0995SMarek Vasut pinctrl-0 = <&vin0_pins>; 76092aa0995SMarek Vasut pinctrl-names = "default"; 76192aa0995SMarek Vasut 76292aa0995SMarek Vasut port { 76392aa0995SMarek Vasut vin0ep2: endpoint { 76492aa0995SMarek Vasut remote-endpoint = <&adv7612_out>; 76592aa0995SMarek Vasut bus-width = <24>; 76692aa0995SMarek Vasut hsync-active = <0>; 76792aa0995SMarek Vasut vsync-active = <0>; 76892aa0995SMarek Vasut pclk-sample = <1>; 76992aa0995SMarek Vasut data-active = <1>; 77092aa0995SMarek Vasut }; 77192aa0995SMarek Vasut }; 77292aa0995SMarek Vasut}; 77392aa0995SMarek Vasut 77492aa0995SMarek Vasut/* composite video input */ 77592aa0995SMarek Vasut&vin1 { 77692aa0995SMarek Vasut pinctrl-0 = <&vin1_pins>; 77792aa0995SMarek Vasut pinctrl-names = "default"; 77892aa0995SMarek Vasut 77992aa0995SMarek Vasut status = "okay"; 78092aa0995SMarek Vasut 78192aa0995SMarek Vasut port { 78292aa0995SMarek Vasut vin1ep: endpoint { 78392aa0995SMarek Vasut remote-endpoint = <&adv7180_out>; 78492aa0995SMarek Vasut bus-width = <8>; 78592aa0995SMarek Vasut }; 78692aa0995SMarek Vasut }; 78792aa0995SMarek Vasut}; 788