xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/sm8650-hdk-display-card.dtso (revision 0e8011faf58b743cc652e3b2ad0f7671227610df)
1*0e8011faSEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2*0e8011faSEmmanuel Vadot/*
3*0e8011faSEmmanuel Vadot * Copyright (c) 2024, Linaro Limited
4*0e8011faSEmmanuel Vadot */
5*0e8011faSEmmanuel Vadot
6*0e8011faSEmmanuel Vadot/*
7*0e8011faSEmmanuel Vadot * Display Card kit overlay
8*0e8011faSEmmanuel Vadot * This requires S5702 Switch 7 to be turned to OFF to route DSI0 to the display panel
9*0e8011faSEmmanuel Vadot */
10*0e8011faSEmmanuel Vadot
11*0e8011faSEmmanuel Vadot#include <dt-bindings/gpio/gpio.h>
12*0e8011faSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h>
13*0e8011faSEmmanuel Vadot
14*0e8011faSEmmanuel Vadot/dts-v1/;
15*0e8011faSEmmanuel Vadot/plugin/;
16*0e8011faSEmmanuel Vadot
17*0e8011faSEmmanuel Vadot/* Disable HDMI bridge related nodes (mutually exclusive with the display card) */
18*0e8011faSEmmanuel Vadot
19*0e8011faSEmmanuel Vadot&i2c6 {
20*0e8011faSEmmanuel Vadot	status = "disabled";
21*0e8011faSEmmanuel Vadot};
22*0e8011faSEmmanuel Vadot
23*0e8011faSEmmanuel Vadot&lt9611_1v2 {
24*0e8011faSEmmanuel Vadot	status = "disabled";
25*0e8011faSEmmanuel Vadot};
26*0e8011faSEmmanuel Vadot
27*0e8011faSEmmanuel Vadot&lt9611_3v3 {
28*0e8011faSEmmanuel Vadot	status = "disabled";
29*0e8011faSEmmanuel Vadot};
30*0e8011faSEmmanuel Vadot
31*0e8011faSEmmanuel Vadot&vreg_bob_3v3 {
32*0e8011faSEmmanuel Vadot	status = "disabled";
33*0e8011faSEmmanuel Vadot};
34*0e8011faSEmmanuel Vadot
35*0e8011faSEmmanuel Vadot&lt9611_codec {
36*0e8011faSEmmanuel Vadot	status = "disabled";
37*0e8011faSEmmanuel Vadot};
38*0e8011faSEmmanuel Vadot
39*0e8011faSEmmanuel Vadot&mdss_dsi0 {
40*0e8011faSEmmanuel Vadot	#address-cells = <1>;
41*0e8011faSEmmanuel Vadot	#size-cells = <0>;
42*0e8011faSEmmanuel Vadot
43*0e8011faSEmmanuel Vadot	panel@0 {
44*0e8011faSEmmanuel Vadot		compatible = "visionox,vtdr6130";
45*0e8011faSEmmanuel Vadot		reg = <0>;
46*0e8011faSEmmanuel Vadot
47*0e8011faSEmmanuel Vadot		reset-gpios = <&tlmm 133 GPIO_ACTIVE_LOW>;
48*0e8011faSEmmanuel Vadot
49*0e8011faSEmmanuel Vadot		vddio-supply = <&vreg_l12b_1p8>;
50*0e8011faSEmmanuel Vadot		vci-supply = <&vreg_l13b_3p0>;
51*0e8011faSEmmanuel Vadot		vdd-supply = <&vreg_l11b_1p2>;
52*0e8011faSEmmanuel Vadot
53*0e8011faSEmmanuel Vadot		pinctrl-0 = <&disp0_reset_n_active>, <&mdp_vsync>;
54*0e8011faSEmmanuel Vadot		pinctrl-1 = <&disp0_reset_n_suspend>, <&mdp_vsync>;
55*0e8011faSEmmanuel Vadot		pinctrl-names = "default", "sleep";
56*0e8011faSEmmanuel Vadot
57*0e8011faSEmmanuel Vadot		port {
58*0e8011faSEmmanuel Vadot			panel0_in: endpoint {
59*0e8011faSEmmanuel Vadot				remote-endpoint = <&mdss_dsi0_out>;
60*0e8011faSEmmanuel Vadot			};
61*0e8011faSEmmanuel Vadot		};
62*0e8011faSEmmanuel Vadot	};
63*0e8011faSEmmanuel Vadot
64*0e8011faSEmmanuel Vadot	ports {
65*0e8011faSEmmanuel Vadot		#address-cells = <1>;
66*0e8011faSEmmanuel Vadot		#size-cells = <0>;
67*0e8011faSEmmanuel Vadot
68*0e8011faSEmmanuel Vadot		port@1 {
69*0e8011faSEmmanuel Vadot			reg = <1>;
70*0e8011faSEmmanuel Vadot
71*0e8011faSEmmanuel Vadot			mdss_dsi0_out: endpoint {
72*0e8011faSEmmanuel Vadot				remote-endpoint = <&panel0_in>;
73*0e8011faSEmmanuel Vadot			};
74*0e8011faSEmmanuel Vadot		};
75*0e8011faSEmmanuel Vadot	};
76*0e8011faSEmmanuel Vadot};
77*0e8011faSEmmanuel Vadot
78*0e8011faSEmmanuel Vadot&spi4 {
79*0e8011faSEmmanuel Vadot	#address-cells = <1>;
80*0e8011faSEmmanuel Vadot	#size-cells = <0>;
81*0e8011faSEmmanuel Vadot
82*0e8011faSEmmanuel Vadot	status = "okay";
83*0e8011faSEmmanuel Vadot
84*0e8011faSEmmanuel Vadot	touchscreen@0 {
85*0e8011faSEmmanuel Vadot		compatible = "goodix,gt9916";
86*0e8011faSEmmanuel Vadot		reg = <0>;
87*0e8011faSEmmanuel Vadot
88*0e8011faSEmmanuel Vadot		interrupt-parent = <&tlmm>;
89*0e8011faSEmmanuel Vadot		interrupts = <162 IRQ_TYPE_LEVEL_LOW>;
90*0e8011faSEmmanuel Vadot
91*0e8011faSEmmanuel Vadot		reset-gpios = <&tlmm 161 GPIO_ACTIVE_LOW>;
92*0e8011faSEmmanuel Vadot
93*0e8011faSEmmanuel Vadot		avdd-supply = <&vreg_l14b_3p2>;
94*0e8011faSEmmanuel Vadot
95*0e8011faSEmmanuel Vadot		spi-max-frequency = <1000000>;
96*0e8011faSEmmanuel Vadot
97*0e8011faSEmmanuel Vadot		touchscreen-size-x = <1080>;
98*0e8011faSEmmanuel Vadot		touchscreen-size-y = <2400>;
99*0e8011faSEmmanuel Vadot
100*0e8011faSEmmanuel Vadot		pinctrl-0 = <&ts_irq>, <&ts_reset>;
101*0e8011faSEmmanuel Vadot		pinctrl-names = "default";
102*0e8011faSEmmanuel Vadot	};
103*0e8011faSEmmanuel Vadot};
104*0e8011faSEmmanuel Vadot
105*0e8011faSEmmanuel Vadot&tlmm {
106*0e8011faSEmmanuel Vadot	disp0_reset_n_active: disp0-reset-n-active-state {
107*0e8011faSEmmanuel Vadot		pins = "gpio133";
108*0e8011faSEmmanuel Vadot		function = "gpio";
109*0e8011faSEmmanuel Vadot		drive-strength = <8>;
110*0e8011faSEmmanuel Vadot		bias-disable;
111*0e8011faSEmmanuel Vadot	};
112*0e8011faSEmmanuel Vadot
113*0e8011faSEmmanuel Vadot	disp0_reset_n_suspend: disp0-reset-n-suspend-state {
114*0e8011faSEmmanuel Vadot		pins = "gpio133";
115*0e8011faSEmmanuel Vadot		function = "gpio";
116*0e8011faSEmmanuel Vadot		drive-strength = <2>;
117*0e8011faSEmmanuel Vadot		bias-pull-down;
118*0e8011faSEmmanuel Vadot	};
119*0e8011faSEmmanuel Vadot
120*0e8011faSEmmanuel Vadot	mdp_vsync: mdp-vsync-state {
121*0e8011faSEmmanuel Vadot		pins = "gpio86";
122*0e8011faSEmmanuel Vadot		function = "mdp_vsync";
123*0e8011faSEmmanuel Vadot		drive-strength = <2>;
124*0e8011faSEmmanuel Vadot		bias-pull-down;
125*0e8011faSEmmanuel Vadot	};
126*0e8011faSEmmanuel Vadot
127*0e8011faSEmmanuel Vadot	ts_irq: ts-irq-state {
128*0e8011faSEmmanuel Vadot		pins = "gpio161";
129*0e8011faSEmmanuel Vadot		function = "gpio";
130*0e8011faSEmmanuel Vadot		drive-strength = <8>;
131*0e8011faSEmmanuel Vadot		bias-pull-up;
132*0e8011faSEmmanuel Vadot		output-disable;
133*0e8011faSEmmanuel Vadot	};
134*0e8011faSEmmanuel Vadot
135*0e8011faSEmmanuel Vadot	ts_reset: ts-reset-state {
136*0e8011faSEmmanuel Vadot		pins = "gpio162";
137*0e8011faSEmmanuel Vadot		function = "gpio";
138*0e8011faSEmmanuel Vadot		drive-strength = <8>;
139*0e8011faSEmmanuel Vadot		bias-pull-up;
140*0e8011faSEmmanuel Vadot	};
141*0e8011faSEmmanuel Vadot};
142