1// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2/* 3 * Copyright (c) 2019 BayLibre, SAS 4 * Author: Neil Armstrong <narmstrong@baylibre.com> 5 */ 6 7#include <dt-bindings/gpio/gpio.h> 8#include <dt-bindings/clock/g12a-clkc.h> 9#include <dt-bindings/interrupt-controller/irq.h> 10#include <dt-bindings/interrupt-controller/arm-gic.h> 11#include <dt-bindings/interrupt-controller/amlogic,meson-g12a-gpio-intc.h> 12 13/dts-v1/; 14/plugin/; 15 16/* 17 * Enable Khadas TS050 DSI Panel + Touch Controller 18 * on Khadas VIM3 (A311D) and VIM3L (S905D3) 19 */ 20 21&{/} { 22 panel_backlight: backlight { 23 compatible = "pwm-backlight"; 24 pwms = <&pwm_AO_cd 0 25000 0>; 25 brightness-levels = <0 255>; 26 num-interpolated-steps = <255>; 27 default-brightness-level = <200>; 28 }; 29}; 30 31&i2c3 { 32 #address-cells = <1>; 33 #size-cells = <0>; 34 pinctrl-0 = <&i2c3_sda_a_pins>, <&i2c3_sck_a_pins>; 35 pinctrl-names = "default"; 36 status = "okay"; 37 38 touch-controller@38 { 39 compatible = "edt,edt-ft5206"; 40 reg = <0x38>; 41 interrupt-parent = <&gpio_intc>; 42 interrupts = <IRQID_GPIOA_5 IRQ_TYPE_EDGE_FALLING>; 43 reset-gpios = <&gpio_expander 6 GPIO_ACTIVE_LOW>; 44 touchscreen-size-x = <1080>; 45 touchscreen-size-y = <1920>; 46 status = "okay"; 47 }; 48}; 49 50&mipi_dsi { 51 #address-cells = <1>; 52 #size-cells = <0>; 53 status = "okay"; 54 55 assigned-clocks = <&clkc CLKID_GP0_PLL>, 56 <&clkc CLKID_MIPI_DSI_PXCLK_SEL>, 57 <&clkc CLKID_MIPI_DSI_PXCLK>, 58 <&clkc CLKID_CTS_ENCL_SEL>, 59 <&clkc CLKID_VCLK2_SEL>; 60 assigned-clock-parents = <0>, 61 <&clkc CLKID_GP0_PLL>, 62 <0>, 63 <&clkc CLKID_VCLK2_DIV1>, 64 <&clkc CLKID_GP0_PLL>; 65 assigned-clock-rates = <960000000>, 66 <0>, 67 <960000000>, 68 <0>, 69 <0>; 70 71 panel@0 { 72 compatible = "khadas,ts050"; 73 reset-gpios = <&gpio_expander 0 GPIO_ACTIVE_LOW>; 74 enable-gpios = <&gpio_expander 1 GPIO_ACTIVE_HIGH>; 75 power-supply = <&vcc_3v3>; 76 backlight = <&panel_backlight>; 77 reg = <0>; 78 79 port { 80 mipi_in_panel: endpoint { 81 remote-endpoint = <&mipi_out_panel>; 82 }; 83 }; 84 }; 85 86 ports { 87 #address-cells = <1>; 88 #size-cells = <0>; 89 90 port@1 { 91 mipi_out_panel: endpoint { 92 remote-endpoint = <&mipi_in_panel>; 93 }; 94 }; 95 }; 96}; 97 98&mipi_analog_dphy { 99 status = "okay"; 100}; 101 102&mipi_dphy { 103 status = "okay"; 104}; 105 106&pwm_AO_cd { 107 pinctrl-0 = <&pwm_ao_c_6_pins>, <&pwm_ao_d_e_pins>; 108}; 109