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; 26253ed045SGeert Uytterhoeven }; 27253ed045SGeert Uytterhoeven 28253ed045SGeert Uytterhoeven chosen { 29b31b43c9SMagnus Damm bootargs = "ignore_loglevel rw root=/dev/nfs ip=on"; 30253ed045SGeert Uytterhoeven stdout-path = "serial0:115200n8"; 31253ed045SGeert Uytterhoeven }; 32253ed045SGeert Uytterhoeven 33253ed045SGeert Uytterhoeven audio_clkout: audio-clkout { 34253ed045SGeert Uytterhoeven /* 35253ed045SGeert Uytterhoeven * This is same as <&rcar_sound 0> 36253ed045SGeert Uytterhoeven * but needed to avoid cs2000/rcar_sound probe dead-lock 37253ed045SGeert Uytterhoeven */ 38253ed045SGeert Uytterhoeven compatible = "fixed-clock"; 39253ed045SGeert Uytterhoeven #clock-cells = <0>; 40822cecb1SKuninori Morimoto clock-frequency = <12288000>; 41253ed045SGeert Uytterhoeven }; 42253ed045SGeert Uytterhoeven 439f9b22e8SVladimir Barinov hdmi0-out { 449f9b22e8SVladimir Barinov compatible = "hdmi-connector"; 459f9b22e8SVladimir Barinov type = "a"; 469f9b22e8SVladimir Barinov 479f9b22e8SVladimir Barinov port { 489f9b22e8SVladimir Barinov hdmi0_con: endpoint { 499f9b22e8SVladimir Barinov }; 509f9b22e8SVladimir Barinov }; 519f9b22e8SVladimir Barinov }; 529f9b22e8SVladimir Barinov 53253ed045SGeert Uytterhoeven keyboard { 54253ed045SGeert Uytterhoeven compatible = "gpio-keys"; 55253ed045SGeert Uytterhoeven 56253ed045SGeert Uytterhoeven key-1 { 57253ed045SGeert Uytterhoeven linux,code = <KEY_1>; 58253ed045SGeert Uytterhoeven label = "SW3"; 59253ed045SGeert Uytterhoeven wakeup-source; 60253ed045SGeert Uytterhoeven debounce-interval = <20>; 61253ed045SGeert Uytterhoeven gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; 62253ed045SGeert Uytterhoeven }; 63253ed045SGeert Uytterhoeven }; 64253ed045SGeert Uytterhoeven 65253ed045SGeert Uytterhoeven leds { 66253ed045SGeert Uytterhoeven compatible = "gpio-leds"; 67253ed045SGeert Uytterhoeven 68253ed045SGeert Uytterhoeven led5 { 69253ed045SGeert Uytterhoeven gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; 70253ed045SGeert Uytterhoeven }; 71253ed045SGeert Uytterhoeven led6 { 72253ed045SGeert Uytterhoeven gpios = <&gpio6 13 GPIO_ACTIVE_HIGH>; 73253ed045SGeert Uytterhoeven }; 74253ed045SGeert Uytterhoeven }; 75253ed045SGeert Uytterhoeven 76253ed045SGeert Uytterhoeven reg_1p8v: regulator0 { 77253ed045SGeert Uytterhoeven compatible = "regulator-fixed"; 78253ed045SGeert Uytterhoeven regulator-name = "fixed-1.8V"; 79253ed045SGeert Uytterhoeven regulator-min-microvolt = <1800000>; 80253ed045SGeert Uytterhoeven regulator-max-microvolt = <1800000>; 81253ed045SGeert Uytterhoeven regulator-boot-on; 82253ed045SGeert Uytterhoeven regulator-always-on; 83253ed045SGeert Uytterhoeven }; 84253ed045SGeert Uytterhoeven 85253ed045SGeert Uytterhoeven reg_3p3v: regulator1 { 86253ed045SGeert Uytterhoeven compatible = "regulator-fixed"; 87253ed045SGeert Uytterhoeven regulator-name = "fixed-3.3V"; 88253ed045SGeert Uytterhoeven regulator-min-microvolt = <3300000>; 89253ed045SGeert Uytterhoeven regulator-max-microvolt = <3300000>; 90253ed045SGeert Uytterhoeven regulator-boot-on; 91253ed045SGeert Uytterhoeven regulator-always-on; 92253ed045SGeert Uytterhoeven }; 93253ed045SGeert Uytterhoeven 945d3b226aSKuninori Morimoto sound_card: sound { 955d3b226aSKuninori Morimoto compatible = "audio-graph-card"; 965d3b226aSKuninori Morimoto label = "rcar-sound"; 97253ed045SGeert Uytterhoeven 98c693b210SKuninori Morimoto dais = <&rsnd_port0 /* ak4613 */ 99c693b210SKuninori Morimoto &rsnd_port1 /* HDMI0 */ 100c693b210SKuninori Morimoto >; 101253ed045SGeert Uytterhoeven }; 102253ed045SGeert Uytterhoeven 103253ed045SGeert Uytterhoeven vcc_sdhi0: regulator-vcc-sdhi0 { 104253ed045SGeert Uytterhoeven compatible = "regulator-fixed"; 105253ed045SGeert Uytterhoeven 106253ed045SGeert Uytterhoeven regulator-name = "SDHI0 Vcc"; 107253ed045SGeert Uytterhoeven regulator-min-microvolt = <3300000>; 108253ed045SGeert Uytterhoeven regulator-max-microvolt = <3300000>; 109253ed045SGeert Uytterhoeven 110253ed045SGeert Uytterhoeven gpio = <&gpio5 2 GPIO_ACTIVE_HIGH>; 111253ed045SGeert Uytterhoeven enable-active-high; 112253ed045SGeert Uytterhoeven }; 113253ed045SGeert Uytterhoeven 114253ed045SGeert Uytterhoeven vccq_sdhi0: regulator-vccq-sdhi0 { 115253ed045SGeert Uytterhoeven compatible = "regulator-gpio"; 116253ed045SGeert Uytterhoeven 117253ed045SGeert Uytterhoeven regulator-name = "SDHI0 VccQ"; 118253ed045SGeert Uytterhoeven regulator-min-microvolt = <1800000>; 119253ed045SGeert Uytterhoeven regulator-max-microvolt = <3300000>; 120253ed045SGeert Uytterhoeven 121253ed045SGeert Uytterhoeven gpios = <&gpio5 1 GPIO_ACTIVE_HIGH>; 122253ed045SGeert Uytterhoeven gpios-states = <1>; 12336f06212SGeert Uytterhoeven states = <3300000 1>, <1800000 0>; 124253ed045SGeert Uytterhoeven }; 125253ed045SGeert Uytterhoeven 126253ed045SGeert Uytterhoeven x12_clk: x12 { 127253ed045SGeert Uytterhoeven compatible = "fixed-clock"; 128253ed045SGeert Uytterhoeven #clock-cells = <0>; 129253ed045SGeert Uytterhoeven clock-frequency = <24576000>; 130253ed045SGeert Uytterhoeven }; 1318cb6898cSVladimir Barinov 1328cb6898cSVladimir Barinov x23_clk: x23-clock { 1338cb6898cSVladimir Barinov compatible = "fixed-clock"; 1348cb6898cSVladimir Barinov #clock-cells = <0>; 1358cb6898cSVladimir Barinov clock-frequency = <25000000>; 1368cb6898cSVladimir Barinov }; 137253ed045SGeert Uytterhoeven}; 138253ed045SGeert Uytterhoeven 139253ed045SGeert Uytterhoeven&audio_clk_a { 140253ed045SGeert Uytterhoeven clock-frequency = <22579200>; 141253ed045SGeert Uytterhoeven}; 142253ed045SGeert Uytterhoeven 143253ed045SGeert Uytterhoeven&avb { 144253ed045SGeert Uytterhoeven pinctrl-0 = <&avb_pins>; 145253ed045SGeert Uytterhoeven pinctrl-names = "default"; 146253ed045SGeert Uytterhoeven phy-handle = <&phy0>; 1479b810181SGeert Uytterhoeven tx-internal-delay-ps = <2000>; 148253ed045SGeert Uytterhoeven status = "okay"; 149253ed045SGeert Uytterhoeven 150253ed045SGeert Uytterhoeven phy0: ethernet-phy@0 { 151253ed045SGeert Uytterhoeven rxc-skew-ps = <1500>; 152253ed045SGeert Uytterhoeven reg = <0>; 153253ed045SGeert Uytterhoeven interrupt-parent = <&gpio2>; 154253ed045SGeert Uytterhoeven interrupts = <11 IRQ_TYPE_LEVEL_LOW>; 155ef4a3bc8SGeert Uytterhoeven reset-gpios = <&gpio2 10 GPIO_ACTIVE_LOW>; 156253ed045SGeert Uytterhoeven }; 157253ed045SGeert Uytterhoeven}; 158253ed045SGeert Uytterhoeven 1597da2ed12SLaurent Pinchart&du { 1607da2ed12SLaurent Pinchart status = "okay"; 1617da2ed12SLaurent Pinchart}; 1627da2ed12SLaurent Pinchart 163253ed045SGeert Uytterhoeven&ehci1 { 164253ed045SGeert Uytterhoeven status = "okay"; 165253ed045SGeert Uytterhoeven}; 166253ed045SGeert Uytterhoeven 167253ed045SGeert Uytterhoeven&extal_clk { 168253ed045SGeert Uytterhoeven clock-frequency = <16666666>; 169253ed045SGeert Uytterhoeven}; 170253ed045SGeert Uytterhoeven 171253ed045SGeert Uytterhoeven&extalr_clk { 172253ed045SGeert Uytterhoeven clock-frequency = <32768>; 173253ed045SGeert Uytterhoeven}; 174253ed045SGeert Uytterhoeven 1752a50b40fSVladimir Barinov&hdmi0 { 1762a50b40fSVladimir Barinov status = "okay"; 1772a50b40fSVladimir Barinov 1782a50b40fSVladimir Barinov ports { 1792a50b40fSVladimir Barinov port@1 { 1802a50b40fSVladimir Barinov reg = <1>; 1812a50b40fSVladimir Barinov rcar_dw_hdmi0_out: endpoint { 1822a50b40fSVladimir Barinov remote-endpoint = <&hdmi0_con>; 1832a50b40fSVladimir Barinov }; 1842a50b40fSVladimir Barinov }; 185c693b210SKuninori Morimoto port@2 { 186c693b210SKuninori Morimoto reg = <2>; 187c693b210SKuninori Morimoto dw_hdmi0_snd_in: endpoint { 188c693b210SKuninori Morimoto remote-endpoint = <&rsnd_for_hdmi>; 189c693b210SKuninori Morimoto }; 190c693b210SKuninori Morimoto }; 1912a50b40fSVladimir Barinov }; 1922a50b40fSVladimir Barinov}; 1932a50b40fSVladimir Barinov 1942a50b40fSVladimir Barinov&hdmi0_con { 1952a50b40fSVladimir Barinov remote-endpoint = <&rcar_dw_hdmi0_out>; 1962a50b40fSVladimir Barinov}; 1972a50b40fSVladimir Barinov 198253ed045SGeert Uytterhoeven&i2c2 { 199253ed045SGeert Uytterhoeven pinctrl-0 = <&i2c2_pins>; 200253ed045SGeert Uytterhoeven pinctrl-names = "default"; 201253ed045SGeert Uytterhoeven 202253ed045SGeert Uytterhoeven status = "okay"; 203253ed045SGeert Uytterhoeven 204253ed045SGeert Uytterhoeven clock-frequency = <100000>; 205253ed045SGeert Uytterhoeven 206253ed045SGeert Uytterhoeven ak4613: codec@10 { 207253ed045SGeert Uytterhoeven compatible = "asahi-kasei,ak4613"; 208253ed045SGeert Uytterhoeven #sound-dai-cells = <0>; 209253ed045SGeert Uytterhoeven reg = <0x10>; 210253ed045SGeert Uytterhoeven clocks = <&rcar_sound 3>; 211253ed045SGeert Uytterhoeven 212253ed045SGeert Uytterhoeven asahi-kasei,in1-single-end; 213253ed045SGeert Uytterhoeven asahi-kasei,in2-single-end; 214253ed045SGeert Uytterhoeven asahi-kasei,out1-single-end; 215253ed045SGeert Uytterhoeven asahi-kasei,out2-single-end; 216253ed045SGeert Uytterhoeven asahi-kasei,out3-single-end; 217253ed045SGeert Uytterhoeven asahi-kasei,out4-single-end; 218253ed045SGeert Uytterhoeven asahi-kasei,out5-single-end; 219253ed045SGeert Uytterhoeven asahi-kasei,out6-single-end; 2205d3b226aSKuninori Morimoto 2215d3b226aSKuninori Morimoto port { 2225d3b226aSKuninori Morimoto ak4613_endpoint: endpoint { 2235d3b226aSKuninori Morimoto remote-endpoint = <&rsnd_for_ak4613>; 2245d3b226aSKuninori Morimoto }; 2255d3b226aSKuninori Morimoto }; 226253ed045SGeert Uytterhoeven }; 227253ed045SGeert Uytterhoeven 228253ed045SGeert Uytterhoeven cs2000: clk-multiplier@4f { 229253ed045SGeert Uytterhoeven #clock-cells = <0>; 230253ed045SGeert Uytterhoeven compatible = "cirrus,cs2000-cp"; 231253ed045SGeert Uytterhoeven reg = <0x4f>; 232253ed045SGeert Uytterhoeven clocks = <&audio_clkout>, <&x12_clk>; 233253ed045SGeert Uytterhoeven clock-names = "clk_in", "ref_clk"; 234253ed045SGeert Uytterhoeven 235253ed045SGeert Uytterhoeven assigned-clocks = <&cs2000>; 236253ed045SGeert Uytterhoeven assigned-clock-rates = <24576000>; /* 1/1 divide */ 237253ed045SGeert Uytterhoeven }; 238253ed045SGeert Uytterhoeven}; 239253ed045SGeert Uytterhoeven 240476b2e4fSVladimir Barinov&i2c4 { 241476b2e4fSVladimir Barinov status = "okay"; 242476b2e4fSVladimir Barinov 243476b2e4fSVladimir Barinov clock-frequency = <400000>; 2448cb6898cSVladimir Barinov 2458cb6898cSVladimir Barinov versaclock5: clock-generator@6a { 2468cb6898cSVladimir Barinov compatible = "idt,5p49v5925"; 2478cb6898cSVladimir Barinov reg = <0x6a>; 2488cb6898cSVladimir Barinov #clock-cells = <1>; 2498cb6898cSVladimir Barinov clocks = <&x23_clk>; 2508cb6898cSVladimir Barinov clock-names = "xin"; 2518cb6898cSVladimir Barinov }; 252476b2e4fSVladimir Barinov}; 253476b2e4fSVladimir Barinov 254a4fedb3aSVladimir Barinov&i2c_dvfs { 255a4fedb3aSVladimir Barinov status = "okay"; 256786f3cc0SGeert Uytterhoeven 25711a33f81SWolfram Sang clock-frequency = <400000>; 25811a33f81SWolfram Sang 259786f3cc0SGeert Uytterhoeven pmic: pmic@30 { 260786f3cc0SGeert Uytterhoeven pinctrl-0 = <&irq0_pins>; 261786f3cc0SGeert Uytterhoeven pinctrl-names = "default"; 262786f3cc0SGeert Uytterhoeven 263786f3cc0SGeert Uytterhoeven compatible = "rohm,bd9571mwv"; 264786f3cc0SGeert Uytterhoeven reg = <0x30>; 265786f3cc0SGeert Uytterhoeven interrupt-parent = <&intc_ex>; 266786f3cc0SGeert Uytterhoeven interrupts = <0 IRQ_TYPE_LEVEL_LOW>; 267786f3cc0SGeert Uytterhoeven interrupt-controller; 268786f3cc0SGeert Uytterhoeven #interrupt-cells = <2>; 269786f3cc0SGeert Uytterhoeven gpio-controller; 270786f3cc0SGeert Uytterhoeven #gpio-cells = <2>; 2711c81a633SGeert Uytterhoeven rohm,ddr-backup-power = <0xf>; 2721c81a633SGeert Uytterhoeven rohm,rstbmode-pulse; 273786f3cc0SGeert Uytterhoeven 274786f3cc0SGeert Uytterhoeven regulators { 275786f3cc0SGeert Uytterhoeven dvfs: dvfs { 276786f3cc0SGeert Uytterhoeven regulator-name = "dvfs"; 277786f3cc0SGeert Uytterhoeven regulator-min-microvolt = <750000>; 278786f3cc0SGeert Uytterhoeven regulator-max-microvolt = <1030000>; 279786f3cc0SGeert Uytterhoeven regulator-boot-on; 280786f3cc0SGeert Uytterhoeven regulator-always-on; 281786f3cc0SGeert Uytterhoeven }; 282786f3cc0SGeert Uytterhoeven }; 283786f3cc0SGeert Uytterhoeven }; 284a4fedb3aSVladimir Barinov}; 285a4fedb3aSVladimir Barinov 286253ed045SGeert Uytterhoeven&ohci1 { 287253ed045SGeert Uytterhoeven status = "okay"; 288253ed045SGeert Uytterhoeven}; 289253ed045SGeert Uytterhoeven 290253ed045SGeert Uytterhoeven&pfc { 291253ed045SGeert Uytterhoeven pinctrl-0 = <&scif_clk_pins>; 292253ed045SGeert Uytterhoeven pinctrl-names = "default"; 293253ed045SGeert Uytterhoeven 294253ed045SGeert Uytterhoeven avb_pins: avb { 295133ace3fSSimon Horman mux { 2961518ad14SGeert Uytterhoeven groups = "avb_link", "avb_mdio", "avb_mii"; 297253ed045SGeert Uytterhoeven function = "avb"; 298253ed045SGeert Uytterhoeven }; 299253ed045SGeert Uytterhoeven 3001518ad14SGeert Uytterhoeven pins_mdio { 3011518ad14SGeert Uytterhoeven groups = "avb_mdio"; 302133ace3fSSimon Horman drive-strength = <24>; 303133ace3fSSimon Horman }; 304133ace3fSSimon Horman 305133ace3fSSimon Horman pins_mii_tx { 306133ace3fSSimon Horman pins = "PIN_AVB_TX_CTL", "PIN_AVB_TXC", "PIN_AVB_TD0", 307133ace3fSSimon Horman "PIN_AVB_TD1", "PIN_AVB_TD2", "PIN_AVB_TD3"; 308133ace3fSSimon Horman drive-strength = <12>; 309133ace3fSSimon Horman }; 310133ace3fSSimon Horman }; 311133ace3fSSimon Horman 312253ed045SGeert Uytterhoeven i2c2_pins: i2c2 { 313253ed045SGeert Uytterhoeven groups = "i2c2_a"; 314253ed045SGeert Uytterhoeven function = "i2c2"; 315253ed045SGeert Uytterhoeven }; 316253ed045SGeert Uytterhoeven 317786f3cc0SGeert Uytterhoeven irq0_pins: irq0 { 318786f3cc0SGeert Uytterhoeven groups = "intc_ex_irq0"; 319786f3cc0SGeert Uytterhoeven function = "intc_ex"; 320786f3cc0SGeert Uytterhoeven }; 321786f3cc0SGeert Uytterhoeven 322253ed045SGeert Uytterhoeven scif2_pins: scif2 { 323253ed045SGeert Uytterhoeven groups = "scif2_data_a"; 324253ed045SGeert Uytterhoeven function = "scif2"; 325253ed045SGeert Uytterhoeven }; 326253ed045SGeert Uytterhoeven 327253ed045SGeert Uytterhoeven scif_clk_pins: scif_clk { 328253ed045SGeert Uytterhoeven groups = "scif_clk_a"; 329253ed045SGeert Uytterhoeven function = "scif_clk"; 330253ed045SGeert Uytterhoeven }; 331253ed045SGeert Uytterhoeven 332253ed045SGeert Uytterhoeven sdhi0_pins: sd0 { 333253ed045SGeert Uytterhoeven groups = "sdhi0_data4", "sdhi0_ctrl"; 334253ed045SGeert Uytterhoeven function = "sdhi0"; 335253ed045SGeert Uytterhoeven power-source = <3300>; 336253ed045SGeert Uytterhoeven }; 337253ed045SGeert Uytterhoeven 338253ed045SGeert Uytterhoeven sdhi0_pins_uhs: sd0_uhs { 339253ed045SGeert Uytterhoeven groups = "sdhi0_data4", "sdhi0_ctrl"; 340253ed045SGeert Uytterhoeven function = "sdhi0"; 341253ed045SGeert Uytterhoeven power-source = <1800>; 342253ed045SGeert Uytterhoeven }; 343253ed045SGeert Uytterhoeven 344253ed045SGeert Uytterhoeven sdhi2_pins: sd2 { 345c5dd01aaSMasaharu Hayakawa groups = "sdhi2_data8", "sdhi2_ctrl", "sdhi2_ds"; 346253ed045SGeert Uytterhoeven function = "sdhi2"; 347253ed045SGeert Uytterhoeven power-source = <1800>; 348253ed045SGeert Uytterhoeven }; 349253ed045SGeert Uytterhoeven 350253ed045SGeert Uytterhoeven sound_pins: sound { 351253ed045SGeert Uytterhoeven groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a"; 352253ed045SGeert Uytterhoeven function = "ssi"; 353253ed045SGeert Uytterhoeven }; 354253ed045SGeert Uytterhoeven 355253ed045SGeert Uytterhoeven sound_clk_pins: sound-clk { 356253ed045SGeert Uytterhoeven groups = "audio_clk_a_a", "audio_clk_b_a", "audio_clk_c_a", 357253ed045SGeert Uytterhoeven "audio_clkout_a", "audio_clkout3_a"; 358253ed045SGeert Uytterhoeven function = "audio_clk"; 359253ed045SGeert Uytterhoeven }; 360253ed045SGeert Uytterhoeven 361253ed045SGeert Uytterhoeven usb1_pins: usb1 { 362253ed045SGeert Uytterhoeven groups = "usb1"; 363253ed045SGeert Uytterhoeven function = "usb1"; 364253ed045SGeert Uytterhoeven }; 365253ed045SGeert Uytterhoeven}; 366253ed045SGeert Uytterhoeven 367253ed045SGeert Uytterhoeven&rcar_sound { 368*3ebf49c0SGeert Uytterhoeven pinctrl-0 = <&sound_pins>, <&sound_clk_pins>; 369253ed045SGeert Uytterhoeven pinctrl-names = "default"; 370253ed045SGeert Uytterhoeven 371253ed045SGeert Uytterhoeven /* Single DAI */ 372253ed045SGeert Uytterhoeven #sound-dai-cells = <0>; 373253ed045SGeert Uytterhoeven 374253ed045SGeert Uytterhoeven /* audio_clkout0/1/2/3 */ 375253ed045SGeert Uytterhoeven #clock-cells = <1>; 3762752660aSVladimir Barinov clock-frequency = <12288000 11289600>; 377253ed045SGeert Uytterhoeven 378253ed045SGeert Uytterhoeven status = "okay"; 379253ed045SGeert Uytterhoeven 380253ed045SGeert Uytterhoeven /* update <audio_clk_b> to <cs2000> */ 381253ed045SGeert Uytterhoeven clocks = <&cpg CPG_MOD 1005>, 382253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>, 383253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>, 384253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>, 385253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>, 386253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>, 387253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>, 388253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>, 389253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>, 390253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>, 391253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>, 392253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, 393253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>, 394253ed045SGeert Uytterhoeven <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>, 395253ed045SGeert Uytterhoeven <&audio_clk_a>, <&cs2000>, 396253ed045SGeert Uytterhoeven <&audio_clk_c>, 397253ed045SGeert Uytterhoeven <&cpg CPG_CORE CPG_AUDIO_CLK_I>; 398253ed045SGeert Uytterhoeven 3995d3b226aSKuninori Morimoto ports { 400c693b210SKuninori Morimoto #address-cells = <1>; 401c693b210SKuninori Morimoto #size-cells = <0>; 402c693b210SKuninori Morimoto rsnd_port0: port@0 { 403c693b210SKuninori Morimoto reg = <0>; 4045d3b226aSKuninori Morimoto rsnd_for_ak4613: endpoint { 4055d3b226aSKuninori Morimoto remote-endpoint = <&ak4613_endpoint>; 4065d3b226aSKuninori Morimoto 4075d3b226aSKuninori Morimoto dai-format = "left_j"; 4085d3b226aSKuninori Morimoto bitclock-master = <&rsnd_for_ak4613>; 4095d3b226aSKuninori Morimoto frame-master = <&rsnd_for_ak4613>; 4105d3b226aSKuninori Morimoto 41186a5feadSGeert Uytterhoeven playback = <&ssi0>, <&src0>, <&dvc0>; 41286a5feadSGeert Uytterhoeven capture = <&ssi1>, <&src1>, <&dvc1>; 413253ed045SGeert Uytterhoeven }; 414253ed045SGeert Uytterhoeven }; 415c693b210SKuninori Morimoto rsnd_port1: port@1 { 416c693b210SKuninori Morimoto reg = <1>; 417c693b210SKuninori Morimoto rsnd_for_hdmi: endpoint { 418c693b210SKuninori Morimoto remote-endpoint = <&dw_hdmi0_snd_in>; 419c693b210SKuninori Morimoto 420c693b210SKuninori Morimoto dai-format = "i2s"; 421c693b210SKuninori Morimoto bitclock-master = <&rsnd_for_hdmi>; 422c693b210SKuninori Morimoto frame-master = <&rsnd_for_hdmi>; 423c693b210SKuninori Morimoto 424c693b210SKuninori Morimoto playback = <&ssi2>; 425c693b210SKuninori Morimoto }; 426c693b210SKuninori Morimoto }; 427253ed045SGeert Uytterhoeven }; 4285d3b226aSKuninori Morimoto}; 429253ed045SGeert Uytterhoeven 4300a05b3d7SYoshihiro Kaneko&rwdt { 4310a05b3d7SYoshihiro Kaneko timeout-sec = <60>; 4320a05b3d7SYoshihiro Kaneko status = "okay"; 4330a05b3d7SYoshihiro Kaneko}; 4340a05b3d7SYoshihiro Kaneko 435253ed045SGeert Uytterhoeven&scif2 { 436253ed045SGeert Uytterhoeven pinctrl-0 = <&scif2_pins>; 437253ed045SGeert Uytterhoeven pinctrl-names = "default"; 438253ed045SGeert Uytterhoeven 439253ed045SGeert Uytterhoeven status = "okay"; 440253ed045SGeert Uytterhoeven}; 441253ed045SGeert Uytterhoeven 442253ed045SGeert Uytterhoeven&scif_clk { 443253ed045SGeert Uytterhoeven clock-frequency = <14745600>; 444253ed045SGeert Uytterhoeven}; 445253ed045SGeert Uytterhoeven 446253ed045SGeert Uytterhoeven&sdhi0 { 447253ed045SGeert Uytterhoeven pinctrl-0 = <&sdhi0_pins>; 448253ed045SGeert Uytterhoeven pinctrl-1 = <&sdhi0_pins_uhs>; 449253ed045SGeert Uytterhoeven pinctrl-names = "default", "state_uhs"; 450253ed045SGeert Uytterhoeven 451253ed045SGeert Uytterhoeven vmmc-supply = <&vcc_sdhi0>; 452253ed045SGeert Uytterhoeven vqmmc-supply = <&vccq_sdhi0>; 453253ed045SGeert Uytterhoeven cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>; 454253ed045SGeert Uytterhoeven bus-width = <4>; 455253ed045SGeert Uytterhoeven sd-uhs-sdr50; 4569bc03b57SWolfram Sang sd-uhs-sdr104; 457253ed045SGeert Uytterhoeven status = "okay"; 458253ed045SGeert Uytterhoeven}; 459253ed045SGeert Uytterhoeven 460253ed045SGeert Uytterhoeven&sdhi2 { 461253ed045SGeert Uytterhoeven /* used for on-board 8bit eMMC */ 462253ed045SGeert Uytterhoeven pinctrl-0 = <&sdhi2_pins>; 4635f65328dSMarek Vasut pinctrl-1 = <&sdhi2_pins>; 464253ed045SGeert Uytterhoeven pinctrl-names = "default", "state_uhs"; 465253ed045SGeert Uytterhoeven 466253ed045SGeert Uytterhoeven vmmc-supply = <®_3p3v>; 467253ed045SGeert Uytterhoeven vqmmc-supply = <®_1p8v>; 468253ed045SGeert Uytterhoeven bus-width = <8>; 469253ed045SGeert Uytterhoeven mmc-hs200-1_8v; 470e536d27eSNiklas Söderlund mmc-hs400-1_8v; 471d68c9edfSWolfram Sang no-sd; 472d68c9edfSWolfram Sang no-sdio; 473253ed045SGeert Uytterhoeven non-removable; 474992d7a8bSYoshihiro Shimoda full-pwr-cycle-in-suspend; 475253ed045SGeert Uytterhoeven status = "okay"; 476253ed045SGeert Uytterhoeven}; 477253ed045SGeert Uytterhoeven 478253ed045SGeert Uytterhoeven&ssi1 { 479253ed045SGeert Uytterhoeven shared-pin; 480253ed045SGeert Uytterhoeven}; 481253ed045SGeert Uytterhoeven 482253ed045SGeert Uytterhoeven&usb2_phy1 { 483253ed045SGeert Uytterhoeven pinctrl-0 = <&usb1_pins>; 484253ed045SGeert Uytterhoeven pinctrl-names = "default"; 485253ed045SGeert Uytterhoeven 486253ed045SGeert Uytterhoeven status = "okay"; 487253ed045SGeert Uytterhoeven}; 488