Skip to content

Commit 40c1516

Browse files
Vladimir Zapolskiyandersson
authored andcommitted
arm64: dts: qcom: sm8550-hdk: add support for the Display Card overlay
The SM8550-HDK board may be connected to a Display Card external PCB, which is identical to the already supported SM8650-HDK Display Card, it provides a VTDR6130 display with Goodix Berlin Touch controller, see also commit bc90f56 ("arm64: dts: sm8650-hdk: add support for the Display Card overlay") for additional details. Two overlays are added to support SM8550-HDK plus Display Card and SM8550-HDK plus Display Card plus Rear Camera Card setups. Signed-off-by: Vladimir Zapolskiy <vladimir.zapolskiy@linaro.org> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Link: https://lore.kernel.org/r/20260311001238.4191034-1-vladimir.zapolskiy@linaro.org Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1 parent 2ce450f commit 40c1516

2 files changed

Lines changed: 136 additions & 0 deletions

File tree

arch/arm64/boot/dts/qcom/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -361,8 +361,12 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8450-samsung-r0q.dtb
361361
dtb-$(CONFIG_ARCH_QCOM) += sm8450-sony-xperia-nagara-pdx223.dtb
362362
dtb-$(CONFIG_ARCH_QCOM) += sm8450-sony-xperia-nagara-pdx224.dtb
363363

364+
sm8550-hdk-display-card-dtbs := sm8550-hdk.dtb sm8550-hdk-display-card.dtbo
365+
sm8550-hdk-display-card-rear-camera-card-dtbs := sm8550-hdk.dtb sm8550-hdk-display-card.dtbo sm8550-hdk-rear-camera-card.dtbo
364366
sm8550-hdk-rear-camera-card-dtbs := sm8550-hdk.dtb sm8550-hdk-rear-camera-card.dtbo
365367

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

0 commit comments

Comments
 (0)