1cba59c25SWolfram Sang// SPDX-License-Identifier: GPL-2.0 2253ed045SGeert Uytterhoeven/* 3253ed045SGeert Uytterhoeven * Device Tree Source for the R-Car Gen3 ULCB board 4253ed045SGeert Uytterhoeven * 5253ed045SGeert Uytterhoeven * Copyright (C) 2016 Renesas Electronics Corp. 6253ed045SGeert Uytterhoeven * Copyright (C) 2016 Cogent Embedded, Inc. 7253ed045SGeert Uytterhoeven */ 8253ed045SGeert Uytterhoeven 9c693b210SKuninori Morimoto/* 10c693b210SKuninori Morimoto * SSI-AK4613 11c693b210SKuninori Morimoto * aplay -D plughw:0,0 xxx.wav 12c693b210SKuninori Morimoto * arecord -D plughw:0,0 xxx.wav 13c693b210SKuninori Morimoto * SSI-HDMI 14c693b210SKuninori Morimoto * aplay -D plughw:0,1 xxx.wav 15c693b210SKuninori Morimoto */ 16c693b210SKuninori Morimoto 17253ed045SGeert Uytterhoeven#include <dt-bindings/gpio/gpio.h> 18253ed045SGeert Uytterhoeven#include <dt-bindings/input/input.h> 19253ed045SGeert Uytterhoeven 20253ed045SGeert Uytterhoeven/ { 21253ed045SGeert Uytterhoeven model = "Renesas R-Car Gen3 ULCB board"; 22253ed045SGeert Uytterhoeven 23253ed045SGeert Uytterhoeven aliases { 24253ed045SGeert Uytterhoeven serial0 = &scif2; 25253ed045SGeert Uytterhoeven ethernet0 = &avb; 26d765a4f3SYoshihiro Shimoda mmc0 = &sdhi2; 27d765a4f3SYoshihiro Shimoda mmc1 = &sdhi0; 28253ed045SGeert Uytterhoeven }; 29253ed045SGeert Uytterhoeven 30253ed045SGeert Uytterhoeven chosen { 31b31b43c9SMagnus Damm bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 32253ed045SGeert Uytterhoeven stdout-path = "serial0:115200n8"; 33253ed045SGeert Uytterhoeven }; 34253ed045SGeert Uytterhoeven 35253ed045SGeert Uytterhoeven audio_clkout: audio-clkout { 36253ed045SGeert Uytterhoeven /* 37253ed045SGeert Uytterhoeven * This is same as <&rcar_sound 0> 38253ed045SGeert Uytterhoeven * but needed to avoid cs2000/rcar_sound probe dead-lock 39253ed045SGeert Uytterhoeven */ 40253ed045SGeert Uytterhoeven compatible = "fixed-clock"; 41253ed045SGeert Uytterhoeven #clock-cells = <0>; 42822cecb1SKuninori Morimoto clock-frequency = <12288000>; 43253ed045SGeert Uytterhoeven }; 44253ed045SGeert Uytterhoeven 459f9b22e8SVladimir Barinov hdmi0-out { 469f9b22e8SVladimir Barinov compatible = "hdmi-connector"; 479f9b22e8SVladimir Barinov type = "a"; 489f9b22e8SVladimir Barinov 499f9b22e8SVladimir Barinov port { 509f9b22e8SVladimir Barinov hdmi0_con: endpoint { 519f9b22e8SVladimir Barinov }; 529f9b22e8SVladimir Barinov }; 539f9b22e8SVladimir Barinov }; 549f9b22e8SVladimir Barinov 55253ed045SGeert Uytterhoeven keyboard { 56253ed045SGeert Uytterhoeven compatible = "gpio-keys"; 57253ed045SGeert Uytterhoeven 58253ed045SGeert Uytterhoeven key-1 { 59253ed045SGeert Uytterhoeven linux,code = <KEY_1>; 60253ed045SGeert Uytterhoeven label = "SW3"; 61253ed045SGeert Uytterhoeven wakeup-source; 62253ed045SGeert Uytterhoeven debounce-interval = <20>; 63253ed045SGeert Uytterhoeven gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; 64253ed045SGeert Uytterhoeven }; 65253ed045SGeert Uytterhoeven }; 66253ed045SGeert Uytterhoeven 67253ed045SGeert Uytterhoeven leds { 68253ed045SGeert Uytterhoeven compatible = "gpio-leds"; 69253ed045SGeert Uytterhoeven 70253ed045SGeert Uytterhoeven led5 { 71253ed045SGeert Uytterhoeven gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; 72253ed045SGeert Uytterhoeven }; 73253ed045SGeert Uytterhoeven led6 { 74253ed045SGeert Uytterhoeven gpios = <&gpio6 13 GPIO_ACTIVE_HIGH>; 75253ed045SGeert Uytterhoeven }; 76253ed045SGeert Uytterhoeven }; 77253ed045SGeert Uytterhoeven 78253ed045SGeert Uytterhoeven reg_1p8v: regulator0 { 79253ed045SGeert Uytterhoeven compatible = "regulator-fixed"; 80253ed045SGeert Uytterhoeven regulator-name = "fixed-1.8V"; 81253ed045SGeert Uytterhoeven regulator-min-microvolt = <1800000>; 82253ed045SGeert Uytterhoeven regulator-max-microvolt = <1800000>; 83253ed045SGeert Uytterhoeven regulator-boot-on; 84253ed045SGeert Uytterhoeven regulator-always-on; 85253ed045SGeert Uytterhoeven }; 86253ed045SGeert Uytterhoeven 87253ed045SGeert Uytterhoeven reg_3p3v: regulator1 { 88253ed045SGeert Uytterhoeven compatible = "regulator-fixed"; 89253ed045SGeert Uytterhoeven regulator-name = "fixed-3.3V"; 90253ed045SGeert Uytterhoeven regulator-min-microvolt = <3300000>; 91253ed045SGeert Uytterhoeven regulator-max-microvolt = <3300000>; 92253ed045SGeert Uytterhoeven regulator-boot-on; 93253ed045SGeert Uytterhoeven regulator-always-on; 94253ed045SGeert Uytterhoeven }; 95253ed045SGeert Uytterhoeven 965d3b226aSKuninori Morimoto sound_card: sound { 975d3b226aSKuninori Morimoto compatible = "audio-graph-card"; 985d3b226aSKuninori Morimoto label = "rcar-sound"; 99253ed045SGeert Uytterhoeven 100c693b210SKuninori Morimoto dais = <&rsnd_port0 /* ak4613 */ 101c693b210SKuninori Morimoto &rsnd_port1 /* HDMI0 */ 102c693b210SKuninori Morimoto >; 103253ed045SGeert Uytterhoeven }; 104253ed045SGeert Uytterhoeven 105253ed045SGeert Uytterhoeven vcc_sdhi0: regulator-vcc-sdhi0 { 106253ed045SGeert Uytterhoeven compatible = "regulator-fixed"; 107253ed045SGeert Uytterhoeven 108253ed045SGeert Uytterhoeven regulator-name = "SDHI0 Vcc"; 109253ed045SGeert Uytterhoeven regulator-min-microvolt = <3300000>; 110253ed045SGeert Uytterhoeven regulator-max-microvolt = <3300000>; 111253ed045SGeert Uytterhoeven 112253ed045SGeert Uytterhoeven gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; 113253ed045SGeert Uytterhoeven enable-active-high; 114253ed045SGeert Uytterhoeven }; 115253ed045SGeert Uytterhoeven 116253ed045SGeert Uytterhoeven vccq_sdhi0: regulator-vccq-sdhi0 { 117253ed045SGeert Uytterhoeven compatible = "regulator-gpio"; 118253ed045SGeert Uytterhoeven 119253ed045SGeert Uytterhoeven regulator-name = "SDHI0 VccQ"; 120253ed045SGeert Uytterhoeven regulator-min-microvolt = <1800000>; 121253ed045SGeert Uytterhoeven regulator-max-microvolt = <3300000>; 122253ed045SGeert Uytterhoeven 123253ed045SGeert Uytterhoeven gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; 124253ed045SGeert Uytterhoeven gpios-states = <1>; 12536f06212SGeert Uytterhoeven states = <3300000 1>, <1800000 0>; 126253ed045SGeert Uytterhoeven }; 127253ed045SGeert Uytterhoeven 128253ed045SGeert Uytterhoeven x12_clk: x12 { 129253ed045SGeert Uytterhoeven compatible = "fixed-clock"; 130253ed045SGeert Uytterhoeven #clock-cells = <0>; 131253ed045SGeert Uytterhoeven clock-frequency = <24576000>; 132253ed045SGeert Uytterhoeven }; 1338cb6898cSVladimir Barinov 1348cb6898cSVladimir Barinov x23_clk: x23-clock { 1358cb6898cSVladimir Barinov compatible = "fixed-clock"; 1368cb6898cSVladimir Barinov #clock-cells = <0>; 1378cb6898cSVladimir Barinov clock-frequency = <25000000>; 1388cb6898cSVladimir Barinov }; 139253ed045SGeert Uytterhoeven}; 140253ed045SGeert Uytterhoeven 1412b35ca2fSYusuke Goda&a57_0 { 1422b35ca2fSYusuke Goda cpu-supply = <&dvfs>; 1432b35ca2fSYusuke Goda}; 1442b35ca2fSYusuke Goda 145253ed045SGeert Uytterhoeven&audio_clk_a { 146253ed045SGeert Uytterhoeven clock-frequency = <22579200>; 147253ed045SGeert Uytterhoeven}; 148253ed045SGeert Uytterhoeven 149253ed045SGeert Uytterhoeven&avb { 150253ed045SGeert Uytterhoeven pinctrl-0 = <&avb_pins>; 151253ed045SGeert Uytterhoeven pinctrl-names = "default"; 152253ed045SGeert Uytterhoeven phy-handle = <&phy0>; 1539b810181SGeert Uytterhoeven tx-internal-delay-ps = <2000>; 154253ed045SGeert Uytterhoeven status = "okay"; 155253ed045SGeert Uytterhoeven 156253ed045SGeert Uytterhoeven phy0: ethernet-phy@0 { 157*722d55f3SGeert Uytterhoeven compatible = "ethernet-phy-id0022.1622", 158*722d55f3SGeert Uytterhoeven "ethernet-phy-ieee802.3-c22"; 159253ed045SGeert Uytterhoeven rxc-skew-ps = <1500>; 160253ed045SGeert Uytterhoeven reg = <0>; 161253ed045SGeert Uytterhoeven interrupt-parent = <&gpio2>; 162253ed045SGeert Uytterhoeven interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 163ef4a3bc8SGeert Uytterhoeven reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>; 164253ed045SGeert Uytterhoeven }; 165253ed045SGeert Uytterhoeven}; 166253ed045SGeert Uytterhoeven 1677da2ed12SLaurent Pinchart&du { 1687da2ed12SLaurent Pinchart status = "okay"; 1697da2ed12SLaurent Pinchart}; 1707da2ed12SLaurent Pinchart 171253ed045SGeert Uytterhoeven&ehci1 { 172253ed045SGeert Uytterhoeven status = "okay"; 173253ed045SGeert Uytterhoeven}; 174253ed045SGeert Uytterhoeven 175253ed045SGeert Uytterhoeven&extal_clk { 176253ed045SGeert Uytterhoeven clock-frequency = <16666666>; 177253ed045SGeert Uytterhoeven}; 178253ed045SGeert Uytterhoeven 179253ed045SGeert Uytterhoeven&extalr_clk { 180253ed045SGeert Uytterhoeven clock-frequency = <32768>; 181253ed045SGeert Uytterhoeven}; 182253ed045SGeert Uytterhoeven 1832a50b40fSVladimir Barinov&hdmi0 { 1842a50b40fSVladimir Barinov status = "okay"; 1852a50b40fSVladimir Barinov 1862a50b40fSVladimir Barinov ports { 1872a50b40fSVladimir Barinov port@1 { 1882a50b40fSVladimir Barinov reg = <1>; 1892a50b40fSVladimir Barinov rcar_dw_hdmi0_out: endpoint { 1902a50b40fSVladimir Barinov remote-endpoint = <&hdmi0_con>; 1912a50b40fSVladimir Barinov }; 1922a50b40fSVladimir Barinov }; 193c693b210SKuninori Morimoto port@2 { 194c693b210SKuninori Morimoto reg = <2>; 195c693b210SKuninori Morimoto dw_hdmi0_snd_in: endpoint { 196c693b210SKuninori Morimoto remote-endpoint = <&rsnd_for_hdmi>; 197c693b210SKuninori Morimoto }; 198c693b210SKuninori Morimoto }; 1992a50b40fSVladimir Barinov }; 2002a50b40fSVladimir Barinov}; 2012a50b40fSVladimir Barinov 2022a50b40fSVladimir Barinov&hdmi0_con { 2032a50b40fSVladimir Barinov remote-endpoint = <&rcar_dw_hdmi0_out>; 2042a50b40fSVladimir Barinov}; 2052a50b40fSVladimir Barinov 206253ed045SGeert Uytterhoeven&i2c2 { 207253ed045SGeert Uytterhoeven pinctrl-0 = <&i2c2_pins>; 208253ed045SGeert Uytterhoeven pinctrl-names = "default"; 209253ed045SGeert Uytterhoeven 210253ed045SGeert Uytterhoeven status = "okay"; 211253ed045SGeert Uytterhoeven 212253ed045SGeert Uytterhoeven clock-frequency = <100000>; 213253ed045SGeert Uytterhoeven 214253ed045SGeert Uytterhoeven ak4613: codec@10 { 215253ed045SGeert Uytterhoeven compatible = "asahi-kasei,ak4613"; 216253ed045SGeert Uytterhoeven #sound-dai-cells = <0>; 217253ed045SGeert Uytterhoeven reg = <0x10>; 218253ed045SGeert Uytterhoeven clocks = <&rcar_sound 3>; 219253ed045SGeert Uytterhoeven 220253ed045SGeert Uytterhoeven asahi-kasei,in1-single-end; 221253ed045SGeert Uytterhoeven asahi-kasei,in2-single-end; 222253ed045SGeert Uytterhoeven asahi-kasei,out1-single-end; 223253ed045SGeert Uytterhoeven asahi-kasei,out2-single-end; 224253ed045SGeert Uytterhoeven asahi-kasei,out3-single-end; 225253ed045SGeert Uytterhoeven asahi-kasei,out4-single-end; 226253ed045SGeert Uytterhoeven asahi-kasei,out5-single-end; 227253ed045SGeert Uytterhoeven asahi-kasei,out6-single-end; 2285d3b226aSKuninori Morimoto 2295d3b226aSKuninori Morimoto port { 2305d3b226aSKuninori Morimoto ak4613_endpoint: endpoint { 2315d3b226aSKuninori Morimoto remote-endpoint = <&rsnd_for_ak4613>; 2325d3b226aSKuninori Morimoto }; 2335d3b226aSKuninori Morimoto }; 234253ed045SGeert Uytterhoeven }; 235253ed045SGeert Uytterhoeven 236253ed045SGeert Uytterhoeven cs2000: clk-multiplier@4f { 237253ed045SGeert Uytterhoeven #clock-cells = <0>; 238253ed045SGeert Uytterhoeven compatible = "cirrus,cs2000-cp"; 239253ed045SGeert Uytterhoeven reg = <0x4f>; 240253ed045SGeert Uytterhoeven clocks = <&audio_clkout>, <&x12_clk>; 241253ed045SGeert Uytterhoeven clock-names = "clk_in", "ref_clk"; 242253ed045SGeert Uytterhoeven 243253ed045SGeert Uytterhoeven assigned-clocks = <&cs2000>; 244253ed045SGeert Uytterhoeven assigned-clock-rates = <24576000>; /* 1/1 divide */ 245253ed045SGeert Uytterhoeven }; 246253ed045SGeert Uytterhoeven}; 247253ed045SGeert Uytterhoeven 248476b2e4fSVladimir Barinov&i2c4 { 249476b2e4fSVladimir Barinov status = "okay"; 250476b2e4fSVladimir Barinov 251476b2e4fSVladimir Barinov clock-frequency = <400000>; 2528cb6898cSVladimir Barinov 2538cb6898cSVladimir Barinov versaclock5: clock-generator@6a { 2548cb6898cSVladimir Barinov compatible = "idt,5p49v5925"; 2558cb6898cSVladimir Barinov reg = <0x6a>; 2568cb6898cSVladimir Barinov #clock-cells = <1>; 2578cb6898cSVladimir Barinov clocks = <&x23_clk>; 2588cb6898cSVladimir Barinov clock-names = "xin"; 2598cb6898cSVladimir Barinov }; 260476b2e4fSVladimir Barinov}; 261476b2e4fSVladimir Barinov 262a4fedb3aSVladimir Barinov&i2c_dvfs { 263a4fedb3aSVladimir Barinov status = "okay"; 264786f3cc0SGeert Uytterhoeven 26511a33f81SWolfram Sang clock-frequency = <400000>; 26611a33f81SWolfram Sang 267786f3cc0SGeert Uytterhoeven pmic: pmic@30 { 268786f3cc0SGeert Uytterhoeven pinctrl-0 = <&irq0_pins>; 269786f3cc0SGeert Uytterhoeven pinctrl-names = "default"; 270786f3cc0SGeert Uytterhoeven 271786f3cc0SGeert Uytterhoeven compatible = "rohm,bd9571mwv"; 272786f3cc0SGeert Uytterhoeven reg = <0x30>; 273786f3cc0SGeert Uytterhoeven interrupt-parent = <&intc_ex>; 274786f3cc0SGeert Uytterhoeven interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 275786f3cc0SGeert Uytterhoeven interrupt-controller; 276786f3cc0SGeert Uytterhoeven #interrupt-cells = <2>; 277786f3cc0SGeert Uytterhoeven gpio-controller; 278786f3cc0SGeert Uytterhoeven #gpio-cells = <2>; 2791c81a633SGeert Uytterhoeven rohm,ddr-backup-power = <0xf>; 2801c81a633SGeert Uytterhoeven rohm,rstbmode-pulse; 281786f3cc0SGeert Uytterhoeven 282786f3cc0SGeert Uytterhoeven regulators { 283786f3cc0SGeert Uytterhoeven dvfs: dvfs { 284786f3cc0SGeert Uytterhoeven regulator-name = "dvfs"; 285786f3cc0SGeert Uytterhoeven regulator-min-microvolt = <750000>; 286786f3cc0SGeert Uytterhoeven regulator-max-microvolt = <1030000>; 287786f3cc0SGeert Uytterhoeven regulator-boot-on; 288786f3cc0SGeert Uytterhoeven regulator-always-on; 289786f3cc0SGeert Uytterhoeven }; 290786f3cc0SGeert Uytterhoeven }; 291786f3cc0SGeert Uytterhoeven }; 292a4fedb3aSVladimir Barinov}; 293a4fedb3aSVladimir Barinov 294253ed045SGeert Uytterhoeven&ohci1 { 295253ed045SGeert Uytterhoeven status = "okay"; 296253ed045SGeert Uytterhoeven}; 297253ed045SGeert Uytterhoeven 298253ed045SGeert Uytterhoeven&pfc { 299253ed045SGeert Uytterhoeven pinctrl-0 = <&scif_clk_pins>; 300253ed045SGeert Uytterhoeven pinctrl-names = "default"; 301253ed045SGeert Uytterhoeven 302253ed045SGeert Uytterhoeven avb_pins: avb { 303133ace3fSSimon Horman mux { 3041518ad14SGeert Uytterhoeven groups = "avb_link", "avb_mdio", "avb_mii"; 305253ed045SGeert Uytterhoeven function = "avb"; 306253ed045SGeert Uytterhoeven }; 307253ed045SGeert Uytterhoeven 3081518ad14SGeert Uytterhoeven pins_mdio { 3091518ad14SGeert Uytterhoeven groups = "avb_mdio"; 310133ace3fSSimon Horman drive-strength = <24>; 311133ace3fSSimon Horman }; 312133ace3fSSimon Horman 313133ace3fSSimon Horman pins_mii_tx { 314133ace3fSSimon Horman pins = "PIN_AVB_TX_CTL", "PIN_AVB_TXC", "PIN_AVB_TD0", 315133ace3fSSimon Horman "PIN_AVB_TD1", "PIN_AVB_TD2", "PIN_AVB_TD3"; 316133ace3fSSimon Horman drive-strength = <12>; 317133ace3fSSimon Horman }; 318133ace3fSSimon Horman }; 319133ace3fSSimon Horman 320253ed045SGeert Uytterhoeven i2c2_pins: i2c2 { 321253ed045SGeert Uytterhoeven groups = "i2c2_a"; 322253ed045SGeert Uytterhoeven function = "i2c2"; 323253ed045SGeert Uytterhoeven }; 324253ed045SGeert Uytterhoeven 325786f3cc0SGeert Uytterhoeven irq0_pins: irq0 { 326786f3cc0SGeert Uytterhoeven groups = "intc_ex_irq0"; 327786f3cc0SGeert Uytterhoeven function = "intc_ex"; 328786f3cc0SGeert Uytterhoeven }; 329786f3cc0SGeert Uytterhoeven 330253ed045SGeert Uytterhoeven scif2_pins: scif2 { 331253ed045SGeert Uytterhoeven groups = "scif2_data_a"; 332253ed045SGeert Uytterhoeven function = "scif2"; 333253ed045SGeert Uytterhoeven }; 334253ed045SGeert Uytterhoeven 335253ed045SGeert Uytterhoeven scif_clk_pins: scif_clk { 336253ed045SGeert Uytterhoeven groups = "scif_clk_a"; 337253ed045SGeert Uytterhoeven function = "scif_clk"; 338253ed045SGeert Uytterhoeven }; 339253ed045SGeert Uytterhoeven 340253ed045SGeert Uytterhoeven sdhi0_pins: sd0 { 341253ed045SGeert Uytterhoeven groups = "sdhi0_data4", "sdhi0_ctrl"; 342253ed045SGeert Uytterhoeven function = "sdhi0"; 343253ed045SGeert Uytterhoeven power-source = <3300>; 344253ed045SGeert Uytterhoeven }; 345253ed045SGeert Uytterhoeven 346253ed045SGeert Uytterhoeven sdhi0_pins_uhs: sd0_uhs { 347253ed045SGeert Uytterhoeven groups = "sdhi0_data4", "sdhi0_ctrl"; 348253ed045SGeert Uytterhoeven function = "sdhi0"; 349253ed045SGeert Uytterhoeven power-source = <1800>; 350253ed045SGeert Uytterhoeven }; 351253ed045SGeert Uytterhoeven 352253ed045SGeert Uytterhoeven sdhi2_pins: sd2 { 353c5dd01aaSMasaharu Hayakawa groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds"; 354253ed045SGeert Uytterhoeven function = "sdhi2"; 355253ed045SGeert Uytterhoeven power-source = <1800>; 356253ed045SGeert Uytterhoeven }; 357253ed045SGeert Uytterhoeven 358253ed045SGeert Uytterhoeven sound_pins: sound { 359253ed045SGeert Uytterhoeven groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a"; 360253ed045SGeert Uytterhoeven function = "ssi"; 361253ed045SGeert Uytterhoeven }; 362253ed045SGeert Uytterhoeven 363253ed045SGeert Uytterhoeven sound_clk_pins: sound-clk { 364253ed045SGeert Uytterhoeven groups = "audio_clk_a_a", "audio_clk_b_a", "audio_clk_c_a", 365253ed045SGeert Uytterhoeven "audio_clkout_a", "audio_clkout3_a"; 366253ed045SGeert Uytterhoeven function = "audio_clk"; 367253ed045SGeert Uytterhoeven }; 368253ed045SGeert Uytterhoeven 369253ed045SGeert Uytterhoeven usb1_pins: usb1 { 370253ed045SGeert Uytterhoeven groups = "usb1"; 371253ed045SGeert Uytterhoeven function = "usb1"; 372253ed045SGeert Uytterhoeven }; 373253ed045SGeert Uytterhoeven}; 374253ed045SGeert Uytterhoeven 375253ed045SGeert Uytterhoeven&rcar_sound { 3763ebf49c0SGeert Uytterhoeven pinctrl-0 = <&sound_pins>, <&sound_clk_pins>; 377253ed045SGeert Uytterhoeven pinctrl-names = "default"; 378253ed045SGeert Uytterhoeven 379253ed045SGeert Uytterhoeven /* Single DAI */ 380253ed045SGeert Uytterhoeven #sound-dai-cells = <0>; 381253ed045SGeert Uytterhoeven 382253ed045SGeert Uytterhoeven /* audio_clkout0/1/2/3 */ 383253ed045SGeert Uytterhoeven #clock-cells = <1>; 3842752660aSVladimir Barinov clock-frequency = <12288000 11289600>; 385253ed045SGeert Uytterhoeven 386253ed045SGeert Uytterhoeven status = "okay"; 387253ed045SGeert Uytterhoeven 388253ed045SGeert Uytterhoeven /* update <audio_clk_b> to <cs2000> */ 389253ed045SGeert Uytterhoeven clocks = <&cpg CPG_MOD 1005>, 390253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>, 391253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>, 392253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>, 393253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>, 394253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>, 395253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>, 396253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>, 397253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>, 398253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>, 399253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>, 400253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, 401253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, 402253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>, 403253ed045SGeert Uytterhoeven <&audio_clk_a>, <&cs2000>, 404253ed045SGeert Uytterhoeven <&audio_clk_c>, 405253ed045SGeert Uytterhoeven <&cpg CPG_CORE CPG_AUDIO_CLK_I>; 406253ed045SGeert Uytterhoeven 4075d3b226aSKuninori Morimoto ports { 408c693b210SKuninori Morimoto #address-cells = <1>; 409c693b210SKuninori Morimoto #size-cells = <0>; 410c693b210SKuninori Morimoto rsnd_port0: port@0 { 411c693b210SKuninori Morimoto reg = <0>; 4125d3b226aSKuninori Morimoto rsnd_for_ak4613: endpoint { 4135d3b226aSKuninori Morimoto remote-endpoint = <&ak4613_endpoint>; 4145d3b226aSKuninori Morimoto 4155d3b226aSKuninori Morimoto dai-format = "left_j"; 4165d3b226aSKuninori Morimoto bitclock-master = <&rsnd_for_ak4613>; 4175d3b226aSKuninori Morimoto frame-master = <&rsnd_for_ak4613>; 4185d3b226aSKuninori Morimoto 41986a5feadSGeert Uytterhoeven playback = <&ssi0>, <&src0>, <&dvc0>; 42086a5feadSGeert Uytterhoeven capture = <&ssi1>, <&src1>, <&dvc1>; 421253ed045SGeert Uytterhoeven }; 422253ed045SGeert Uytterhoeven }; 423c693b210SKuninori Morimoto rsnd_port1: port@1 { 424c693b210SKuninori Morimoto reg = <1>; 425c693b210SKuninori Morimoto rsnd_for_hdmi: endpoint { 426c693b210SKuninori Morimoto remote-endpoint = <&dw_hdmi0_snd_in>; 427c693b210SKuninori Morimoto 428c693b210SKuninori Morimoto dai-format = "i2s"; 429c693b210SKuninori Morimoto bitclock-master = <&rsnd_for_hdmi>; 430c693b210SKuninori Morimoto frame-master = <&rsnd_for_hdmi>; 431c693b210SKuninori Morimoto 432c693b210SKuninori Morimoto playback = <&ssi2>; 433c693b210SKuninori Morimoto }; 434c693b210SKuninori Morimoto }; 435253ed045SGeert Uytterhoeven }; 4365d3b226aSKuninori Morimoto}; 437253ed045SGeert Uytterhoeven 4380a05b3d7SYoshihiro Kaneko&rwdt { 4390a05b3d7SYoshihiro Kaneko timeout-sec = <60>; 4400a05b3d7SYoshihiro Kaneko status = "okay"; 4410a05b3d7SYoshihiro Kaneko}; 4420a05b3d7SYoshihiro Kaneko 443253ed045SGeert Uytterhoeven&scif2 { 444253ed045SGeert Uytterhoeven pinctrl-0 = <&scif2_pins>; 445253ed045SGeert Uytterhoeven pinctrl-names = "default"; 446253ed045SGeert Uytterhoeven 447253ed045SGeert Uytterhoeven status = "okay"; 448253ed045SGeert Uytterhoeven}; 449253ed045SGeert Uytterhoeven 450253ed045SGeert Uytterhoeven&scif_clk { 451253ed045SGeert Uytterhoeven clock-frequency = <14745600>; 452253ed045SGeert Uytterhoeven}; 453253ed045SGeert Uytterhoeven 454253ed045SGeert Uytterhoeven&sdhi0 { 455253ed045SGeert Uytterhoeven pinctrl-0 = <&sdhi0_pins>; 456253ed045SGeert Uytterhoeven pinctrl-1 = <&sdhi0_pins_uhs>; 457253ed045SGeert Uytterhoeven pinctrl-names = "default", "state_uhs"; 458253ed045SGeert Uytterhoeven 459253ed045SGeert Uytterhoeven vmmc-supply = <&vcc_sdhi0>; 460253ed045SGeert Uytterhoeven vqmmc-supply = <&vccq_sdhi0>; 461253ed045SGeert Uytterhoeven cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; 462253ed045SGeert Uytterhoeven bus-width = <4>; 463253ed045SGeert Uytterhoeven sd-uhs-sdr50; 4649bc03b57SWolfram Sang sd-uhs-sdr104; 465253ed045SGeert Uytterhoeven status = "okay"; 466253ed045SGeert Uytterhoeven}; 467253ed045SGeert Uytterhoeven 468253ed045SGeert Uytterhoeven&sdhi2 { 469253ed045SGeert Uytterhoeven /* used for on-board 8bit eMMC */ 470253ed045SGeert Uytterhoeven pinctrl-0 = <&sdhi2_pins>; 4715f65328dSMarek Vasut pinctrl-1 = <&sdhi2_pins>; 472253ed045SGeert Uytterhoeven pinctrl-names = "default", "state_uhs"; 473253ed045SGeert Uytterhoeven 474253ed045SGeert Uytterhoeven vmmc-supply = <®_3p3v>; 475253ed045SGeert Uytterhoeven vqmmc-supply = <®_1p8v>; 476253ed045SGeert Uytterhoeven bus-width = <8>; 477253ed045SGeert Uytterhoeven mmc-hs200-1_8v; 478e536d27eSNiklas Söderlund mmc-hs400-1_8v; 479d68c9edfSWolfram Sang no-sd; 480d68c9edfSWolfram Sang no-sdio; 481253ed045SGeert Uytterhoeven non-removable; 482992d7a8bSYoshihiro Shimoda full-pwr-cycle-in-suspend; 483253ed045SGeert Uytterhoeven status = "okay"; 484253ed045SGeert Uytterhoeven}; 485253ed045SGeert Uytterhoeven 486253ed045SGeert Uytterhoeven&ssi1 { 487253ed045SGeert Uytterhoeven shared-pin; 488253ed045SGeert Uytterhoeven}; 489253ed045SGeert Uytterhoeven 490253ed045SGeert Uytterhoeven&usb2_phy1 { 491253ed045SGeert Uytterhoeven pinctrl-0 = <&usb1_pins>; 492253ed045SGeert Uytterhoeven pinctrl-names = "default"; 493253ed045SGeert Uytterhoeven 494253ed045SGeert Uytterhoeven status = "okay"; 495253ed045SGeert Uytterhoeven}; 496