Skip to content

Commit 0f9e6db

Browse files
Sudarshan Shettyandersson
authored andcommitted
arm64: dts: qcom: talos-evk: Add support for QCS615 talos evk board
Add the device tree for the QCS615-based Talos EVK platform. The platform is composed of a System-on-Module following the SMARC standard, and a Carrier Board. The Carrier Board supports several display configurations, HDMI and LVDS. Both configurations use the same base hardware, with the display selection controlled by a DIP switch. Use a DTBO file, talos-evk-lvds-auo,g133han01.dtso, which defines an overlay that disables HDMI and adds LVDS. The DTs file talos-evk can describe the HDMI display configurations. According to the hardware design and vendor guidance, the WiFi PA supplies VDD_PA_A and VDD_PA_B only need to be enabled at the same time as asserting WLAN_EN. On this platform, WiFi enablement is controlled via the WLAN_EN GPIO (GPIO84), which also drives the VDD_PA_A and VDD_PA_B power enables. Remove the VDD_PA_A and VDD_PA_B regulator nodes from the device tree and rely on WLAN_EN to enable WiFi functionality. Add talos-evk-usb1-peripheral.dtso overlay to enable USB0 peripheral (EDL) mode. The base DTS will keep USB0 host-only due to hardware routing through the EDL DIP switch, and the overlay switches the configuration for device-mode operation. The LVDS backlight hardware has been updated to use a simplified design. The backlight enable signal is now permanently pulled up to 3.3V and is no longer controlled via GPIO59. Remove the GPIO59 based backlight configuration from the device tree, as it is no longer routed to the LVDS interface. The initial device tree includes support for: - CPU and memory - UART - GPIOs - Regulators - PMIC - Early console - AT24MAC602 EEPROM - MCP2515 SPI to CAN - ADV7535 DSI-to-HDMI bridge - DisplayPort interface - SN65DSI84ZXHR DSI-to-LVDS bridge - Wi-Fi/BT Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@oss.qualcomm.com> Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com> Link: https://lore.kernel.org/r/20260331060107.501561-4-tessolveupstream@gmail.com Signed-off-by: Bjorn Andersson <andersson@kernel.org>
1 parent 83a679d commit 0f9e6db

5 files changed

Lines changed: 909 additions & 0 deletions

File tree

arch/arm64/boot/dts/qcom/Makefile

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -387,6 +387,12 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8650-mtp.dtb
387387
dtb-$(CONFIG_ARCH_QCOM) += sm8650-qrd.dtb
388388
dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb
389389
dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb
390+
dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb
391+
talos-evk-usb1-peripheral-dtbs := talos-evk.dtb talos-evk-usb1-peripheral.dtbo
392+
dtb-$(CONFIG_ARCH_QCOM) += talos-evk-usb1-peripheral.dtb
393+
talos-evk-lvds-auo,g133han01-dtbs := \
394+
talos-evk.dtb talos-evk-lvds-auo,g133han01.dtbo
395+
dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds-auo,g133han01.dtb
390396
x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo
391397
dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb
392398
x1e78100-lenovo-thinkpad-t14s-el2-dtbs := x1e78100-lenovo-thinkpad-t14s.dtb x1-el2.dtbo
Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
// SPDX-License-Identifier: BSD-3-Clause
2+
/*
3+
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4+
*/
5+
/dts-v1/;
6+
/plugin/;
7+
8+
#include <dt-bindings/gpio/gpio.h>
9+
10+
&{/} {
11+
backlight: backlight {
12+
compatible = "gpio-backlight";
13+
gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
14+
default-on;
15+
};
16+
17+
panel-lvds {
18+
compatible = "auo,g133han01";
19+
power-supply = <&vreg_v3p3>;
20+
21+
ports {
22+
#address-cells = <1>;
23+
#size-cells = <0>;
24+
25+
/* LVDS A (Odd pixels) */
26+
port@0 {
27+
reg = <0>;
28+
dual-lvds-odd-pixels;
29+
30+
lvds_panel_out_a: endpoint {
31+
remote-endpoint = <&sn65dsi84_out_a>;
32+
};
33+
};
34+
35+
/* LVDS B (Even pixels) */
36+
port@1 {
37+
reg = <1>;
38+
dual-lvds-even-pixels;
39+
40+
lvds_panel_out_b: endpoint {
41+
remote-endpoint = <&sn65dsi84_out_b>;
42+
};
43+
};
44+
};
45+
};
46+
47+
vreg_v3p3: regulator-v3p3 {
48+
compatible = "regulator-fixed";
49+
regulator-name = "vdd-3v3";
50+
regulator-min-microvolt = <3300000>;
51+
regulator-max-microvolt = <3300000>;
52+
};
53+
};
54+
55+
&hdmi_connector {
56+
status = "disabled";
57+
};
58+
59+
&i2c1 {
60+
clock-frequency = <400000>;
61+
status = "okay";
62+
63+
#address-cells = <1>;
64+
#size-cells = <0>;
65+
66+
hdmi_bridge: bridge@3d {
67+
reg = <0x3d>;
68+
status = "disabled";
69+
};
70+
71+
lvds_bridge: bridge@2c {
72+
compatible = "ti,sn65dsi84";
73+
reg = <0x2c>;
74+
enable-gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
75+
76+
ports {
77+
#address-cells = <1>;
78+
#size-cells = <0>;
79+
80+
port@0 {
81+
reg = <0>;
82+
83+
sn65dsi84_in: endpoint {
84+
data-lanes = <1 2 3 4>;
85+
remote-endpoint = <&mdss_dsi0_out>;
86+
};
87+
};
88+
89+
port@2 {
90+
reg = <2>;
91+
92+
sn65dsi84_out_a: endpoint {
93+
data-lanes = <1 2 3 4>;
94+
remote-endpoint = <&lvds_panel_out_a>;
95+
};
96+
};
97+
98+
port@3 {
99+
reg = <3>;
100+
101+
sn65dsi84_out_b: endpoint {
102+
data-lanes = <1 2 3 4>;
103+
remote-endpoint = <&lvds_panel_out_b>;
104+
};
105+
};
106+
};
107+
};
108+
};
109+
110+
&mdss_dsi0 {
111+
vdda-supply = <&vreg_l11a>;
112+
113+
status = "okay";
114+
};
115+
116+
&mdss_dsi0_out {
117+
remote-endpoint = <&sn65dsi84_in>;
118+
data-lanes = <0 1 2 3>;
119+
};
120+
121+
&tlmm {
122+
lcd_bklt_en: lcd-bklt-en-state {
123+
pins = "gpio115";
124+
function = "gpio";
125+
bias-disable;
126+
};
127+
};

0 commit comments

Comments
 (0)