This add nodes to support the Khadas TS050 panel on the
Khadas VIM3 & VIM3L boards.

Signed-off-by: Neil Armstrong <neil.armstr...@linaro.org>
---
 .../boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi   |  2 +-
 arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi | 76 ++++++++++++++++++++++
 .../boot/dts/amlogic/meson-sm1-khadas-vim3l.dts    |  2 +-
 3 files changed, 78 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi 
b/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
index 16dd409051b4..81c3057143b4 100644
--- a/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-g12b-khadas-vim3.dtsi
@@ -98,7 +98,7 @@ &pwm_ab {
 };
 
 &pwm_AO_cd {
-       pinctrl-0 = <&pwm_ao_d_e_pins>;
+       pinctrl-0 = <&pwm_ao_c_6_pins>, <&pwm_ao_d_e_pins>;
        pinctrl-names = "default";
        clocks = <&xtal>;
        clock-names = "clkin1";
diff --git a/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi 
b/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
index c9705941e4ab..0c50a32bb0c0 100644
--- a/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
+++ b/arch/arm64/boot/dts/amlogic/meson-khadas-vim3.dtsi
@@ -40,6 +40,14 @@ button-function {
                };
        };
 
+       panel_backlight: backlight {
+               compatible = "pwm-backlight";
+               pwms = <&pwm_AO_cd 0 25000 0>;
+               brightness-levels = <0 255>;
+               num-interpolated-steps = <255>;
+               default-brightness-level = <200>;
+       };
+
        leds {
                compatible = "gpio-leds";
 
@@ -359,6 +367,23 @@ rtc: rtc@51 {
        };
 };
 
+&i2c3 {
+       status = "okay";
+       pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>;
+       pinctrl-names = "default";
+
+       touch-controller@38 {
+               compatible = "edt,edt-ft5206";
+               reg = <0x38>;
+               interrupt-parent = <&gpio_intc>;
+               interrupts = <66 IRQ_TYPE_EDGE_FALLING>; /* GPIOA_5 */
+               reset-gpio = <&gpio_expander 6 GPIO_ACTIVE_LOW>;
+               touchscreen-size-x = <1080>;
+               touchscreen-size-y = <1920>;
+               status = "okay";
+       };
+};
+
 &ir {
        status = "okay";
        pinctrl-0 = <&remote_input_ao_pins>;
@@ -366,6 +391,57 @@ &ir {
        linux,rc-map-name = "rc-khadas";
 };
 
+&mipi_dsi {
+       status = "okay";
+
+       assigned-clocks = <&clkc CLKID_GP0_PLL>,
+                         <&clkc CLKID_MIPI_DSI_PXCLK_SEL>,
+                         <&clkc CLKID_MIPI_DSI_PXCLK>,
+                         <&clkc CLKID_CTS_ENCL_SEL>,
+                         <&clkc CLKID_VCLK2_SEL>;
+       assigned-clock-parents = <0>,
+                                <&clkc CLKID_GP0_PLL>,
+                                <0>,
+                                <&clkc CLKID_VCLK2_DIV1>,
+                                <&clkc CLKID_GP0_PLL>;
+       assigned-clock-rates = <960000000>,
+                              <0>,
+                              <960000000>,
+                              <0>,
+                              <0>;
+
+       panel@0 {
+               compatible = "khadas,ts050";
+               reset-gpios = <&gpio_expander 0 GPIO_ACTIVE_LOW>;
+               enable-gpios = <&gpio_expander 1 GPIO_ACTIVE_HIGH>;
+               power-supply = <&vcc_3v3>;
+               backlight = <&panel_backlight>;
+               width-mm = <64>;
+               height-mm = <118>;
+               reg = <0>;
+
+               port {
+                       mipi_in_panel: endpoint {
+                               remote-endpoint = <&mipi_out_panel>;
+                       };
+               };
+       };
+};
+
+&mipi_analog_dphy {
+       status = "okay";
+};
+
+&mipi_dphy {
+       status = "okay";
+};
+
+&mipi_dsi_panel_port {
+       mipi_out_panel: endpoint {
+               remote-endpoint = <&mipi_in_panel>;
+       };
+};
+
 &pcie {
        reset-gpios = <&gpio GPIOA_8 GPIO_ACTIVE_LOW>;
 };
diff --git a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts 
b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
index 9c0b544e2209..cb52a55ab70a 100644
--- a/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
+++ b/arch/arm64/boot/dts/amlogic/meson-sm1-khadas-vim3l.dts
@@ -76,7 +76,7 @@ &cpu3 {
 };
 
 &pwm_AO_cd {
-       pinctrl-0 = <&pwm_ao_d_e_pins>;
+       pinctrl-0 = <&pwm_ao_c_6_pins>, <&pwm_ao_d_e_pins>;
        pinctrl-names = "default";
        clocks = <&xtal>;
        clock-names = "clkin1";

-- 
2.34.1

Reply via email to