Merge tag 'timers-urgent-2020-12-27' of git://git.kernel.org/pub/scm/linux/kernel...
[linux-2.6-microblaze.git] / arch / arm / boot / dts / r8a7742-iwg21d-q7.dts
index c2c05c9..0063ef9 100644 (file)
@@ -30,6 +30,7 @@
 
 /dts-v1/;
 #include "r8a7742-iwg21m.dtsi"
+#include <dt-bindings/pwm/pwm.h>
 
 / {
        model = "iWave Systems RainboW-G21D-Qseven board based on RZ/G1H";
                clock-frequency = <26000000>;
        };
 
+       lcd_backlight: backlight {
+               compatible = "pwm-backlight";
+               pwms = <&tpu 2 5000000 0>;
+               brightness-levels = <0 4 8 16 32 64 128 255>;
+               pinctrl-0 = <&backlight_pins>;
+               pinctrl-names = "default";
+               default-brightness-level = <7>;
+               enable-gpios = <&gpio3 11 GPIO_ACTIVE_HIGH>;
+       };
+
        leds {
                compatible = "gpio-leds";
 
                };
        };
 
+       lvds-receiver {
+               compatible = "ti,ds90cf384a", "lvds-decoder";
+               power-supply = <&vcc_3v3_tft1>;
+
+               ports {
+                       #address-cells = <1>;
+                       #size-cells = <0>;
+
+                       port@0 {
+                               reg = <0>;
+                               lvds_receiver_in: endpoint {
+                                       remote-endpoint = <&lvds0_out>;
+                               };
+                       };
+                       port@1 {
+                               reg = <1>;
+                               lvds_receiver_out: endpoint {
+                                       remote-endpoint = <&panel_in>;
+                               };
+                       };
+               };
+       };
+
+       panel {
+               compatible = "edt,etm0700g0dh6";
+               backlight = <&lcd_backlight>;
+               power-supply = <&vcc_3v3_tft1>;
+
+               port {
+                       panel_in: endpoint {
+                               remote-endpoint = <&lvds_receiver_out>;
+                       };
+               };
+       };
+
        reg_1p5v: 1p5v {
                compatible = "regulator-fixed";
                regulator-name = "1P5V";
                };
        };
 
+       vcc_3v3_tft1: regulator-panel {
+               compatible = "regulator-fixed";
+
+               regulator-name = "vcc-3v3-tft1";
+               regulator-min-microvolt = <3300000>;
+               regulator-max-microvolt = <3300000>;
+               enable-active-high;
+               startup-delay-us = <500>;
+               gpio = <&gpio5 28 GPIO_ACTIVE_HIGH>;
+       };
+
        vcc_sdhi2: regulator-vcc-sdhi2 {
                compatible = "regulator-fixed";
 
                VDDIO-supply = <&reg_3p3v>;
                VDDD-supply = <&reg_1p5v>;
        };
+
+       touch: touchpanel@38 {
+               compatible = "edt,edt-ft5406";
+               reg = <0x38>;
+               interrupt-parent = <&gpio0>;
+               interrupts = <24 IRQ_TYPE_EDGE_FALLING>;
+               /* GP1_29 is also shared with audio codec reset pin */
+               reset-gpios = <&gpio1 29 GPIO_ACTIVE_LOW>;
+               vcc-supply = <&vcc_3v3_tft1>;
+       };
 };
 
 &can1 {
        status = "okay";
 };
 
+&du {
+       status = "okay";
+};
+
+&gpio0 {
+       touch-interrupt {
+               gpio-hog;
+               gpios = <24 GPIO_ACTIVE_LOW>;
+               input;
+       };
+};
+
 &gpio1 {
        can-trx-en-gpio{
                gpio-hog;
        status = "okay";
 };
 
+&lvds0 {
+       status = "okay";
+       ports {
+               port@1 {
+                       lvds0_out: endpoint {
+                               remote-endpoint = <&lvds_receiver_in>;
+                       };
+               };
+       };
+};
+
 &msiof0 {
        pinctrl-0 = <&msiof0_pins>;
        pinctrl-names = "default";
                function = "avb";
        };
 
+       backlight_pins: backlight {
+               groups = "tpu0_to2";
+               function = "tpu0";
+       };
+
        can1_pins: can1 {
                groups = "can1_data_b";
                function = "can1";
        shared-pin;
 };
 
+&tpu {
+       status = "okay";
+};
+
 &usbphy {
        status = "okay";
 };