1 // SPDX-License-Identifier: GPL-2.0
3 * Copyright 2020, Compass Electronics Group, LLC
6 #include <dt-bindings/gpio/gpio.h>
7 #include <dt-bindings/input/input.h>
10 backlight_lvds: backlight-lvds {
11 compatible = "pwm-backlight";
12 power-supply = <®_lcd>;
13 enable-gpios = <&gpio_exp1 3 GPIO_ACTIVE_HIGH>;
14 pwms = <&pwm2 0 25000>;
15 brightness-levels = <0 4 8 16 32 64 128 255>;
16 default-brightness-level = <6>;
19 backlight_dpi: backlight-dpi {
20 compatible = "pwm-backlight";
21 power-supply = <®_lcd>;
22 enable-gpios = <&gpio_exp1 7 GPIO_ACTIVE_LOW>;
23 pwms = <&pwm0 0 25000>;
24 brightness-levels = <0 25 33 50 63 75 88 100>;
25 default-brightness-level = <6>;
29 compatible = "hdmi-connector";
34 remote-endpoint = <&rcar_dw_hdmi0_out>;
40 compatible = "gpio-keys";
43 gpios = <&gpio4 6 GPIO_ACTIVE_LOW>;
47 debounce-interval = <20>;
50 gpios = <&gpio3 13 GPIO_ACTIVE_LOW>;
54 debounce-interval = <20>;
57 gpios = <&gpio5 17 GPIO_ACTIVE_LOW>;
61 debounce-interval = <20>;
64 gpios = <&gpio5 20 GPIO_ACTIVE_LOW>;
68 debounce-interval = <20>;
71 gpios = <&gpio5 22 GPIO_ACTIVE_LOW>;
75 debounce-interval = <20>;
80 compatible = "gpio-leds";
81 pinctrl-0 = <&led_pins>;
82 pinctrl-names = "default";
85 gpios = <&gpio0 4 GPIO_ACTIVE_HIGH>;
87 linux,default-trigger = "heartbeat";
90 gpios = <&gpio7 0 GPIO_ACTIVE_HIGH>;
94 gpios = <&gpio7 1 GPIO_ACTIVE_HIGH>;
98 gpios = <&gpio7 3 GPIO_ACTIVE_HIGH>;
104 compatible = "panel-lvds";
105 power-supply = <®_lcd_reset>;
108 backlight = <&backlight_lvds>;
109 data-mapping = "vesa-24";
113 clock-frequency = <30000000>;
125 pixelclk-active = <0>;
130 remote-endpoint = <&lvds0_out>;
136 /* Different LCD with compatible timings */
137 compatible = "rocktech,rk070er9427";
138 backlight = <&backlight_dpi>;
139 enable-gpios = <&gpio1 21 GPIO_ACTIVE_HIGH>;
140 power-supply = <®_lcd>;
142 rgb_panel: endpoint {
143 remote-endpoint = <&du_out_rgb>;
148 reg_audio: regulator_audio {
149 compatible = "regulator-fixed";
150 regulator-name = "audio-1.8V";
151 regulator-min-microvolt = <1800000>;
152 regulator-max-microvolt = <1800000>;
153 gpio = <&gpio_exp4 1 GPIO_ACTIVE_HIGH>;
157 reg_lcd: regulator-lcd {
158 compatible = "regulator-fixed";
159 regulator-name = "lcd_panel_pwr";
160 regulator-min-microvolt = <3300000>;
161 regulator-max-microvolt = <3300000>;
162 gpio = <&gpio_exp1 1 GPIO_ACTIVE_HIGH>;
166 reg_lcd_reset: regulator-lcd-reset {
167 compatible = "regulator-fixed";
168 regulator-name = "nLCD_RESET";
169 regulator-min-microvolt = <3300000>;
170 regulator-max-microvolt = <3300000>;
171 gpio = <&gpio5 3 GPIO_ACTIVE_HIGH>;
173 vin-supply = <®_lcd>;
176 reg_cam0: regulator_camera {
177 compatible = "regulator-fixed";
178 regulator-name = "reg_cam0";
179 regulator-min-microvolt = <1800000>;
180 regulator-max-microvolt = <1800000>;
181 gpio = <&gpio_exp2 2 GPIO_ACTIVE_HIGH>;
185 reg_cam1: regulator_camera {
186 compatible = "regulator-fixed";
187 regulator-name = "reg_cam1";
188 regulator-min-microvolt = <1800000>;
189 regulator-max-microvolt = <1800000>;
190 gpio = <&gpio_exp2 5 GPIO_ACTIVE_HIGH>;
192 startup-delay-us = <100000>;
196 compatible = "audio-graph-card";
197 label = "rcar-sound";
198 dais = <&rsnd_port0>, <&rsnd_port1>;
201 vccq_sdhi0: regulator-vccq-sdhi0 {
202 compatible = "regulator-gpio";
203 regulator-name = "SDHI0 VccQ";
204 regulator-min-microvolt = <1800000>;
205 regulator-max-microvolt = <3300000>;
206 gpios = <&gpio6 30 GPIO_ACTIVE_HIGH>;
208 states = <3300000 1>, <1800000 0>;
211 /* External DU dot clocks */
212 x302_clk: x302-clock {
213 compatible = "fixed-clock";
215 clock-frequency = <33000000>;
218 x304_clk: x304-clock {
219 compatible = "fixed-clock";
221 clock-frequency = <25000000>;
225 compatible = "usb-c-connector";
230 #address-cells = <1>;
235 remote-endpoint = <&usb3_hs_ep>;
241 remote-endpoint = <&hd3ss3220_in_ep>;
249 clock-frequency = <24576000>;
250 assigned-clocks = <&versaclock6_bb 4>;
251 assigned-clock-rates = <24576000>;
255 clock-frequency = <22579200>;
259 pinctrl-0 = <&can0_pins>;
260 pinctrl-names = "default";
261 renesas,can-clock-select = <0x0>;
266 pinctrl-0 = <&can1_pins>;
267 pinctrl-names = "default";
268 renesas,can-clock-select = <0x0>;
273 pinctrl-0 = <&du_pins>;
274 pinctrl-names = "default";
277 clocks = <&cpg CPG_MOD 724>,
283 clock-names = "du.0", "du.1", "du.2",
284 "dclkin.0", "dclkin.1", "dclkin.2";
288 remote-endpoint = <&rgb_panel>;
294 clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>;
299 clocks = <&cpg CPG_MOD 703>, <&cpg CPG_MOD 704>;
305 #address-cells = <1>;
309 dw_hdmi0_in: endpoint {
310 remote-endpoint = <&du_out_hdmi0>;
315 rcar_dw_hdmi0_out: endpoint {
316 remote-endpoint = <&hdmi0_con>;
321 dw_hdmi0_snd_in: endpoint {
322 remote-endpoint = <&rsnd_endpoint1>;
329 pinctrl-0 = <&hscif1_pins>;
330 pinctrl-names = "default";
342 clock-frequency = <100000>;
343 pinctrl-0 = <&i2c2_pins>;
344 pinctrl-names = "default";
347 compatible = "onnn,pca9654";
354 compatible = "onnn,pca9654";
361 compatible = "onnn,pca9654";
367 versaclock6_bb: clock-controller@6a {
368 compatible = "idt,5p49v6965";
371 clocks = <&x304_clk>;
373 /* CSI0_MCLK, CSI1_MCLK, AUDIO_CLKIN, USB_HUB_MCLK_BB */
374 assigned-clocks = <&versaclock6_bb 1>,
378 assigned-clock-rates = <24000000>, <24000000>, <24000000>, <24576000>;
384 clock-frequency = <400000>;
386 pinctrl-0 = <&i2c0_pins>;
387 pinctrl-names = "default";
392 clock-frequency = <100000>;
393 pinctrl-0 = <&i2c5_pins>;
394 pinctrl-names = "default";
397 compatible = "wlf,wm8962";
399 DCVDD-supply = <®_audio>;
400 DBVDD-supply = <®_audio>;
401 AVDD-supply = <®_audio>;
402 CPVDD-supply = <®_audio>;
403 MICVDD-supply = <®_audio>;
404 PLLVDD-supply = <®_audio>;
405 SPKVDD1-supply = <®_audio>;
406 SPKVDD2-supply = <®_audio>;
408 0x0000 /* 0:Default */
409 0x0000 /* 1:Default */
410 0x0000 /* 2:Default */
411 0x0000 /* 3:Default */
412 0x0000 /* 4:Default */
413 0x0000 /* 5:Default */
416 wm8962_endpoint: endpoint {
417 remote-endpoint = <&rsnd_endpoint0>;
425 /* 3 - backlight-enable */
426 /* 4 - Touch_shdwn */
430 compatible = "onnn,pca9654";
437 compatible = "ilitek,ili2117";
439 interrupt-parent = <&gpio5>;
440 interrupts = <9 IRQ_TYPE_EDGE_RISING>;
445 compatible = "ti,hd3ss3220";
447 interrupt-parent = <&gpio6>;
448 interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
451 #address-cells = <1>;
455 hd3ss3220_in_ep: endpoint {
456 remote-endpoint = <&ss_ep>;
461 hd3ss3220_out_ep: endpoint {
462 remote-endpoint = <&usb3_role_switch>;
474 lvds0_out: endpoint {
475 remote-endpoint = <&panel_in>;
499 clock-frequency = <100000000>;
504 groups = "can0_data_a";
509 groups = "can1_data";
514 groups = "du_rgb888", "du_sync", "du_clk_out_1", "du_disp";
529 /* GP_0_4 , AVS1, AVS2, GP_7_3 */
530 pins = "GP_0_4", "GP_7_0", "GP_7_1", "GP_7_3";
545 groups = "sdhi0_data4", "sdhi0_ctrl";
547 power-source = <3300>;
550 sdhi0_pins_uhs: sd0_uhs {
551 groups = "sdhi0_data4", "sdhi0_ctrl";
553 power-source = <1800>;
557 groups = "ssi01239_ctrl", "ssi0_data", "ssi1_data_a";
561 sound_clk_pins: sound_clk {
562 groups = "audio_clk_a_a";
563 function = "audio_clk";
589 pinctrl-0 = <&pwm0_pins>;
590 pinctrl-names = "default";
595 pinctrl-0 = <&pwm2_pins>;
596 pinctrl-names = "default";
601 pinctrl-0 = <&sound_pins &sound_clk_pins>;
602 pinctrl-names = "default";
605 #sound-dai-cells = <0>;
607 /* audio_clkout0/1/2/3 */
609 clock-frequency = <11289600>;
613 clocks = <&cpg CPG_MOD 1005>,
614 <&cpg CPG_MOD 1006>, <&cpg CPG_MOD 1007>,
615 <&cpg CPG_MOD 1008>, <&cpg CPG_MOD 1009>,
616 <&cpg CPG_MOD 1010>, <&cpg CPG_MOD 1011>,
617 <&cpg CPG_MOD 1012>, <&cpg CPG_MOD 1013>,
618 <&cpg CPG_MOD 1014>, <&cpg CPG_MOD 1015>,
619 <&cpg CPG_MOD 1022>, <&cpg CPG_MOD 1023>,
620 <&cpg CPG_MOD 1024>, <&cpg CPG_MOD 1025>,
621 <&cpg CPG_MOD 1026>, <&cpg CPG_MOD 1027>,
622 <&cpg CPG_MOD 1028>, <&cpg CPG_MOD 1029>,
623 <&cpg CPG_MOD 1030>, <&cpg CPG_MOD 1031>,
624 <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
625 <&cpg CPG_MOD 1020>, <&cpg CPG_MOD 1021>,
626 <&cpg CPG_MOD 1019>, <&cpg CPG_MOD 1018>,
627 <&audio_clk_a>, <&audio_clk_b>, <&audio_clk_c>,
628 <&cpg CPG_CORE R8A774A1_CLK_S0D4>;
631 #address-cells = <1>;
635 rsnd_endpoint0: endpoint {
636 remote-endpoint = <&wm8962_endpoint>;
639 bitclock-master = <&rsnd_endpoint0>;
640 frame-master = <&rsnd_endpoint0>;
642 playback = <&ssi1 &dvc1 &src1>;
648 rsnd_endpoint1: endpoint {
649 remote-endpoint = <&dw_hdmi0_snd_in>;
652 bitclock-master = <&rsnd_endpoint1>;
653 frame-master = <&rsnd_endpoint1>;
667 pinctrl-0 = <&scif0_pins>;
668 pinctrl-names = "default";
673 pinctrl-0 = <&scif5_pins>;
674 pinctrl-names = "default";
679 clock-frequency = <14745600>;
683 pinctrl-0 = <&sdhi0_pins>;
684 pinctrl-1 = <&sdhi0_pins_uhs>;
685 pinctrl-names = "default", "state_uhs";
686 vmmc-supply = <®_3p3v>;
687 vqmmc-supply = <&vccq_sdhi0>;
688 cd-gpios = <&gpio3 12 GPIO_ACTIVE_LOW>;
720 pinctrl-0 = <&usb0_pins>;
721 pinctrl-names = "default";
726 pinctrl-0 = <&usb1_pins>;
727 pinctrl-names = "default";
732 companion = <&xhci0>;
737 #address-cells = <1>;
741 usb3_hs_ep: endpoint {
742 remote-endpoint = <&hs_ep>;
747 usb3_role_switch: endpoint {
748 remote-endpoint = <&hd3ss3220_out_ep>;
785 pinctrl-0 = <&usb30_pins>;
786 pinctrl-names = "default";