* [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK
@ 2025-10-28 6:16 Sudarshan Shetty
2025-10-28 6:16 ` [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel Sudarshan Shetty
2025-10-29 15:43 ` [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Bjorn Andersson
0 siblings, 2 replies; 10+ messages in thread
From: Sudarshan Shetty @ 2025-10-28 6:16 UTC (permalink / raw)
To: andersson, konradybcio
Cc: robh, krzk+dt, conor+dt, linux-arm-msm, devicetree, linux-kernel,
Sudarshan Shetty
Hi all,
This patch introduces a new device tree for the QCS615 Talos EVK platform
with dual-channel LVDS display support.
The new DTS file (`talos-evk-lvds.dts`) is based on the existing
`talos-evk.dts` and extends it to enable a dual-channel LVDS display
configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
In this setup:
- LVDS Channel A carries odd pixels.
- LVDS Channel B carries even pixels.
This patch only adds the new DTS and corresponding Makefile entry.
Thanks,
Sudarshan
---
Sudarshan Shetty (1):
arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
arch/arm64/boot/dts/qcom/Makefile | 1 +
arch/arm64/boot/dts/qcom/talos-evk-lvds.dts | 128 ++++++++++++++++++++
2 files changed, 129 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
--
2.34.1
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-28 6:16 [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Sudarshan Shetty
@ 2025-10-28 6:16 ` Sudarshan Shetty
2025-10-28 9:25 ` Konrad Dybcio
2025-10-29 15:48 ` Bjorn Andersson
2025-10-29 15:43 ` [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Bjorn Andersson
1 sibling, 2 replies; 10+ messages in thread
From: Sudarshan Shetty @ 2025-10-28 6:16 UTC (permalink / raw)
To: andersson, konradybcio
Cc: robh, krzk+dt, conor+dt, linux-arm-msm, devicetree, linux-kernel,
Sudarshan Shetty
This patch introduces a new device tree for the QCS615 Talos
EVK platform with dual-channel LVDS display support.
The new DTS file (`talos-evk-lvds.dts`) is based on the existing
`talos-evk.dts` and extends it to enable a dual-channel LVDS display
configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
where channel-A carries odd pixel and channel-B carries even pixel
on the QCS615 talos evk platform.
Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
---
arch/arm64/boot/dts/qcom/Makefile | 1 +
arch/arm64/boot/dts/qcom/talos-evk-lvds.dts | 128 ++++++++++++++++++++
2 files changed, 129 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index d5a3dd98137d..6e7b04e67287 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -307,6 +307,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb
dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb
dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb
dtb-$(CONFIG_ARCH_QCOM) += talos-evk-dsi.dtb
+dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds.dtb
x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo
dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb
x1e78100-lenovo-thinkpad-t14s-el2-dtbs := x1e78100-lenovo-thinkpad-t14s.dtb x1-el2.dtbo
diff --git a/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts b/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
new file mode 100644
index 000000000000..7ba4ab96ada6
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
@@ -0,0 +1,128 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+/dts-v1/;
+#include "talos-evk.dts"
+
+/ {
+
+ backlight: backlight {
+ compatible = "gpio-backlight";
+ gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
+ default-on;
+ };
+
+ lcd0_pwm_en {
+ compatible = "pwm-gpio";
+ gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
+ pinctrl-0 = <&lcd0_bklt_pwm>;
+ pinctrl-names = "default";
+ #pwm-cells = <3>;
+ };
+
+ panel-lvds {
+ compatible = "auo,g133han01";
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ /* LVDS A (Odd pixels) */
+ port@0 {
+ reg = <0>;
+ dual-lvds-odd-pixels;
+
+ lvds_panel_out_a: endpoint {
+ remote-endpoint = <&sn65dsi84_out_a>;
+ };
+ };
+
+ /* LVDS B (Even pixels) */
+ port@1 {
+ reg = <1>;
+ dual-lvds-even-pixels;
+
+ lvds_panel_out_b: endpoint {
+ remote-endpoint = <&sn65dsi84_out_b>;
+ };
+ };
+ };
+ };
+};
+
+&adv7535 {
+ status = "disabled";
+};
+
+&i2c1 {
+ clock-frequency = <400000>;
+
+ status = "okay";
+
+ sn65dsi84: sn65dsi84@2c {
+ compatible = "ti,sn65dsi84";
+ reg = <0x2c>;
+ enable-gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
+ ti,dsi-lanes = <4>;
+ ti,lvds-format = "jeida-24";
+ ti,lvds-bpp = <24>;
+
+ ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ port@0 {
+ reg = <0>;
+
+ sn65dsi84_in: endpoint {
+ data-lanes = <0 1 2 3>;
+ remote-endpoint = <&mdss_dsi0_out>;
+ };
+ };
+
+ port@2 {
+ reg = <2>;
+
+ sn65dsi84_out_a: endpoint {
+ data-lanes = <0 1 2 3>;
+ remote-endpoint = <&lvds_panel_out_a>;
+ };
+ };
+
+ port@3 {
+ reg = <3>;
+
+ sn65dsi84_out_b: endpoint {
+ data-lanes = <0 1 2 3>;
+ remote-endpoint = <&lvds_panel_out_b>;
+ };
+ };
+ };
+ };
+};
+
+&mdss_dsi0 {
+ vdda-supply = <&vreg_l11a>;
+
+ status = "okay";
+};
+
+&mdss_dsi0_out {
+ remote-endpoint = <&sn65dsi84_in>;
+ data-lanes = <0 1 2 3>;
+};
+
+&tlmm {
+ lcd0_bklt_en: lcd0-bklt-en-state {
+ pins = "gpio115";
+ function = "gpio";
+ bias-disable;
+ };
+
+ lcd0_bklt_pwm: lcd0-bklt-pwm-state {
+ pins = "gpio59";
+ function = "gpio";
+ bias-disable;
+ };
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-28 6:16 ` [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel Sudarshan Shetty
@ 2025-10-28 9:25 ` Konrad Dybcio
2025-10-29 12:20 ` Tessolve Upstream
2025-10-29 15:48 ` Bjorn Andersson
1 sibling, 1 reply; 10+ messages in thread
From: Konrad Dybcio @ 2025-10-28 9:25 UTC (permalink / raw)
To: Sudarshan Shetty, andersson, konradybcio
Cc: robh, krzk+dt, conor+dt, linux-arm-msm, devicetree, linux-kernel
On 10/28/25 7:16 AM, Sudarshan Shetty wrote:
> This patch introduces a new device tree for the QCS615 Talos
> EVK platform with dual-channel LVDS display support.
>
> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>
> where channel-A carries odd pixel and channel-B carries even pixel
> on the QCS615 talos evk platform.
>
> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
> ---
[...]
> + backlight: backlight {
> + compatible = "gpio-backlight";
> + gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
> + default-on;
> + };
> +
> + lcd0_pwm_en {
Use hyphens instead of underscores in node names
> + compatible = "pwm-gpio";
> + gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
> + pinctrl-0 = <&lcd0_bklt_pwm>;
I think your intention was to use pwm-backlight and wire this node
up to that
Konrad
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-28 9:25 ` Konrad Dybcio
@ 2025-10-29 12:20 ` Tessolve Upstream
2025-10-29 12:34 ` Dmitry Baryshkov
0 siblings, 1 reply; 10+ messages in thread
From: Tessolve Upstream @ 2025-10-29 12:20 UTC (permalink / raw)
To: Konrad Dybcio, andersson, konradybcio
Cc: robh, krzk+dt, conor+dt, linux-arm-msm, devicetree, linux-kernel
On 28/10/25 14:55, Konrad Dybcio wrote:
> On 10/28/25 7:16 AM, Sudarshan Shetty wrote:
>> This patch introduces a new device tree for the QCS615 Talos
>> EVK platform with dual-channel LVDS display support.
>>
>> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
>> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
>> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>>
>> where channel-A carries odd pixel and channel-B carries even pixel
>> on the QCS615 talos evk platform.
>>
>> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
>> ---
>
> [...]
>
>> + backlight: backlight {
>> + compatible = "gpio-backlight";
>> + gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
>> + default-on;
>> + };
>> +
>> + lcd0_pwm_en {
>
> Use hyphens instead of underscores in node names
Okay, will update in next patch.
>
>> + compatible = "pwm-gpio";
>> + gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
>> + pinctrl-0 = <&lcd0_bklt_pwm>;
>
> I think your intention was to use pwm-backlight and wire this node
> up to that
Soc does not support the PWM interface hence we are using gpio
as "pwm-gpio" by setting the duty cycle to 100%(i.e. "no pwm")
>
> Konrad
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-29 12:20 ` Tessolve Upstream
@ 2025-10-29 12:34 ` Dmitry Baryshkov
2025-10-30 8:54 ` Tessolve Upstream
0 siblings, 1 reply; 10+ messages in thread
From: Dmitry Baryshkov @ 2025-10-29 12:34 UTC (permalink / raw)
To: Tessolve Upstream
Cc: Konrad Dybcio, andersson, konradybcio, robh, krzk+dt, conor+dt,
linux-arm-msm, devicetree, linux-kernel
On Wed, Oct 29, 2025 at 05:50:01PM +0530, Tessolve Upstream wrote:
>
>
> On 28/10/25 14:55, Konrad Dybcio wrote:
> > On 10/28/25 7:16 AM, Sudarshan Shetty wrote:
> >> This patch introduces a new device tree for the QCS615 Talos
> >> EVK platform with dual-channel LVDS display support.
> >>
> >> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
> >> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
> >> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
> >>
> >> where channel-A carries odd pixel and channel-B carries even pixel
> >> on the QCS615 talos evk platform.
> >>
> >> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
> >> ---
> >
> > [...]
> >
> >> + backlight: backlight {
> >> + compatible = "gpio-backlight";
> >> + gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
> >> + default-on;
> >> + };
> >> +
> >> + lcd0_pwm_en {
> >
> > Use hyphens instead of underscores in node names
>
> Okay, will update in next patch.
> >
> >> + compatible = "pwm-gpio";
> >> + gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
> >> + pinctrl-0 = <&lcd0_bklt_pwm>;
> >
> > I think your intention was to use pwm-backlight and wire this node
> > up to that
>
> Soc does not support the PWM interface hence we are using gpio
> as "pwm-gpio" by setting the duty cycle to 100%(i.e. "no pwm")
Why do you mention PWM here at all? It's perfectly fine to use
gpio-backlight. That looks extremely suspicious since you are not
referecing the pwm-gpio device at all.
--
With best wishes
Dmitry
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK
2025-10-28 6:16 [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Sudarshan Shetty
2025-10-28 6:16 ` [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel Sudarshan Shetty
@ 2025-10-29 15:43 ` Bjorn Andersson
2025-10-31 9:13 ` Tessolve Upstream
1 sibling, 1 reply; 10+ messages in thread
From: Bjorn Andersson @ 2025-10-29 15:43 UTC (permalink / raw)
To: Sudarshan Shetty
Cc: konradybcio, robh, krzk+dt, conor+dt, linux-arm-msm, devicetree,
linux-kernel
On Tue, Oct 28, 2025 at 11:46:35AM +0530, Sudarshan Shetty wrote:
> Hi all,
>
> This patch introduces a new device tree for the QCS615 Talos EVK platform
"This patch"? There shouldn't be a need for a cover letter for a single
patch, the patch commit message should describe itself; as any
information in the cover-letter is lost in the mail archive when the
patch is merged.
Also, please transition to b4, per our internal guidelines.
Regards,
Bjorn
> with dual-channel LVDS display support.
>
> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>
> In this setup:
> - LVDS Channel A carries odd pixels.
> - LVDS Channel B carries even pixels.
>
> This patch only adds the new DTS and corresponding Makefile entry.
>
> Thanks,
> Sudarshan
>
> ---
>
> Sudarshan Shetty (1):
> arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
>
> arch/arm64/boot/dts/qcom/Makefile | 1 +
> arch/arm64/boot/dts/qcom/talos-evk-lvds.dts | 128 ++++++++++++++++++++
> 2 files changed, 129 insertions(+)
> create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
>
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-28 6:16 ` [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel Sudarshan Shetty
2025-10-28 9:25 ` Konrad Dybcio
@ 2025-10-29 15:48 ` Bjorn Andersson
2025-10-31 9:12 ` Tessolve Upstream
1 sibling, 1 reply; 10+ messages in thread
From: Bjorn Andersson @ 2025-10-29 15:48 UTC (permalink / raw)
To: Sudarshan Shetty
Cc: konradybcio, robh, krzk+dt, conor+dt, linux-arm-msm, devicetree,
linux-kernel
On Tue, Oct 28, 2025 at 11:46:36AM +0530, Sudarshan Shetty wrote:
> This patch introduces a new device tree for the QCS615 Talos
"This patch" doesn't make sense when you look at the git log once the
patch has been accepted, please avoid it.
Please read https://docs.kernel.org/process/submitting-patches.html#describe-your-changes
Start your commit message with a "problem description", describe what
this LVDS talos is, why it should have it's own dts file etc.
> EVK platform with dual-channel LVDS display support.
>
> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>
> where channel-A carries odd pixel and channel-B carries even pixel
> on the QCS615 talos evk platform.
>
> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
> ---
> arch/arm64/boot/dts/qcom/Makefile | 1 +
> arch/arm64/boot/dts/qcom/talos-evk-lvds.dts | 128 ++++++++++++++++++++
> 2 files changed, 129 insertions(+)
> create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
>
> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
> index d5a3dd98137d..6e7b04e67287 100644
> --- a/arch/arm64/boot/dts/qcom/Makefile
> +++ b/arch/arm64/boot/dts/qcom/Makefile
> @@ -307,6 +307,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb
> dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb
> dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb
> dtb-$(CONFIG_ARCH_QCOM) += talos-evk-dsi.dtb
> +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds.dtb
> x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo
> dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb
> x1e78100-lenovo-thinkpad-t14s-el2-dtbs := x1e78100-lenovo-thinkpad-t14s.dtb x1-el2.dtbo
> diff --git a/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts b/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
> new file mode 100644
> index 000000000000..7ba4ab96ada6
> --- /dev/null
> +++ b/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
> @@ -0,0 +1,128 @@
> +// SPDX-License-Identifier: BSD-3-Clause
> +/*
> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
> + */
> +/dts-v1/;
> +#include "talos-evk.dts"
We don't include .dts files, split the existing one in a dtsi and dts
file and then include the dtsi here. Or provide provide this as a dtso
overlay on top of the dts.
It's not clear to me which is the correct way, because you didn't
adequately described how the SN65DSI84 enter the picture. Is it always
there, but not part of the standard dip-switch configuration? Or is this
some mezzanine?
Regards,
Bjorn
> +
> +/ {
> +
> + backlight: backlight {
> + compatible = "gpio-backlight";
> + gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
> + default-on;
> + };
> +
> + lcd0_pwm_en {
> + compatible = "pwm-gpio";
> + gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
> + pinctrl-0 = <&lcd0_bklt_pwm>;
> + pinctrl-names = "default";
> + #pwm-cells = <3>;
> + };
> +
> + panel-lvds {
> + compatible = "auo,g133han01";
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + /* LVDS A (Odd pixels) */
> + port@0 {
> + reg = <0>;
> + dual-lvds-odd-pixels;
> +
> + lvds_panel_out_a: endpoint {
> + remote-endpoint = <&sn65dsi84_out_a>;
> + };
> + };
> +
> + /* LVDS B (Even pixels) */
> + port@1 {
> + reg = <1>;
> + dual-lvds-even-pixels;
> +
> + lvds_panel_out_b: endpoint {
> + remote-endpoint = <&sn65dsi84_out_b>;
> + };
> + };
> + };
> + };
> +};
> +
> +&adv7535 {
> + status = "disabled";
> +};
> +
> +&i2c1 {
> + clock-frequency = <400000>;
> +
> + status = "okay";
> +
> + sn65dsi84: sn65dsi84@2c {
> + compatible = "ti,sn65dsi84";
> + reg = <0x2c>;
> + enable-gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
> + ti,dsi-lanes = <4>;
> + ti,lvds-format = "jeida-24";
> + ti,lvds-bpp = <24>;
> +
> + ports {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + port@0 {
> + reg = <0>;
> +
> + sn65dsi84_in: endpoint {
> + data-lanes = <0 1 2 3>;
> + remote-endpoint = <&mdss_dsi0_out>;
> + };
> + };
> +
> + port@2 {
> + reg = <2>;
> +
> + sn65dsi84_out_a: endpoint {
> + data-lanes = <0 1 2 3>;
> + remote-endpoint = <&lvds_panel_out_a>;
> + };
> + };
> +
> + port@3 {
> + reg = <3>;
> +
> + sn65dsi84_out_b: endpoint {
> + data-lanes = <0 1 2 3>;
> + remote-endpoint = <&lvds_panel_out_b>;
> + };
> + };
> + };
> + };
> +};
> +
> +&mdss_dsi0 {
> + vdda-supply = <&vreg_l11a>;
> +
> + status = "okay";
> +};
> +
> +&mdss_dsi0_out {
> + remote-endpoint = <&sn65dsi84_in>;
> + data-lanes = <0 1 2 3>;
> +};
> +
> +&tlmm {
> + lcd0_bklt_en: lcd0-bklt-en-state {
> + pins = "gpio115";
> + function = "gpio";
> + bias-disable;
> + };
> +
> + lcd0_bklt_pwm: lcd0-bklt-pwm-state {
> + pins = "gpio59";
> + function = "gpio";
> + bias-disable;
> + };
> +};
> --
> 2.34.1
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-29 12:34 ` Dmitry Baryshkov
@ 2025-10-30 8:54 ` Tessolve Upstream
0 siblings, 0 replies; 10+ messages in thread
From: Tessolve Upstream @ 2025-10-30 8:54 UTC (permalink / raw)
To: Dmitry Baryshkov
Cc: Konrad Dybcio, andersson, konradybcio, robh, krzk+dt, conor+dt,
linux-arm-msm, devicetree, linux-kernel
On 29/10/25 18:04, Dmitry Baryshkov wrote:
> On Wed, Oct 29, 2025 at 05:50:01PM +0530, Tessolve Upstream wrote:
>>
>>
>> On 28/10/25 14:55, Konrad Dybcio wrote:
>>> On 10/28/25 7:16 AM, Sudarshan Shetty wrote:
>>>> This patch introduces a new device tree for the QCS615 Talos
>>>> EVK platform with dual-channel LVDS display support.
>>>>
>>>> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
>>>> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
>>>> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>>>>
>>>> where channel-A carries odd pixel and channel-B carries even pixel
>>>> on the QCS615 talos evk platform.
>>>>
>>>> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
>>>> ---
>>>
>>> [...]
>>>
>>>> + backlight: backlight {
>>>> + compatible = "gpio-backlight";
>>>> + gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
>>>> + default-on;
>>>> + };
>>>> +
>>>> + lcd0_pwm_en {
>>>
>>> Use hyphens instead of underscores in node names
>>
>> Okay, will update in next patch.
>>>
>>>> + compatible = "pwm-gpio";
>>>> + gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
>>>> + pinctrl-0 = <&lcd0_bklt_pwm>;
>>>
>>> I think your intention was to use pwm-backlight and wire this node
>>> up to that
>>
>> Soc does not support the PWM interface hence we are using gpio
>> as "pwm-gpio" by setting the duty cycle to 100%(i.e. "no pwm")
>
> Why do you mention PWM here at all? It's perfectly fine to use
> gpio-backlight. That looks extremely suspicious since you are not
> referecing the pwm-gpio device at all.
Thanks for the feedback.
GPIO59 (LED_PWM) connected to the panel’s dimming input.
Since we can only drive the LED_PWM pin high (100% duty),
it does not provide true PWM control.
I’ll remove the non-standard "pwm-gpio" node and model both lines
using the standard gpio-backlight binding, like this:
backlight: backlight {
compatible = "gpio-backlight";
gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>, <&tlmm 59 GPIO_ACTIVE_HIGH>;
default-on;
pinctrl-0 = <&lcd0_bklt_en>, <&lcd0_bklt_pwm>;
pinctrl-names = "default";
};
&tlmm {
lcd0_bklt_en: lcd0-bklt-en-state {
pins = "gpio115";
function = "gpio";
bias-disable;
};
lcd0_bklt_pwm: lcd0-bklt-pwm-state {
pins = "gpio59";
function = "gpio";
bias-disable;
};
};
Let me know your opinion here,
Thanks in advance.
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
2025-10-29 15:48 ` Bjorn Andersson
@ 2025-10-31 9:12 ` Tessolve Upstream
0 siblings, 0 replies; 10+ messages in thread
From: Tessolve Upstream @ 2025-10-31 9:12 UTC (permalink / raw)
To: Bjorn Andersson
Cc: konradybcio, robh, krzk+dt, conor+dt, linux-arm-msm, devicetree,
linux-kernel
On 29/10/25 21:18, Bjorn Andersson wrote:
> On Tue, Oct 28, 2025 at 11:46:36AM +0530, Sudarshan Shetty wrote:
>> This patch introduces a new device tree for the QCS615 Talos
>
> "This patch" doesn't make sense when you look at the git log once the
> patch has been accepted, please avoid it.
>
> Please read https://docs.kernel.org/process/submitting-patches.html#describe-your-changes
>
> Start your commit message with a "problem description", describe what
> this LVDS talos is, why it should have it's own dts file etc.
Okay, will update in next patch.
>
>> EVK platform with dual-channel LVDS display support.
>>
>> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
>> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
>> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>>
>> where channel-A carries odd pixel and channel-B carries even pixel
>> on the QCS615 talos evk platform.
>>
>> Signed-off-by: Sudarshan Shetty <tessolveupstream@gmail.com>
>> ---
>> arch/arm64/boot/dts/qcom/Makefile | 1 +
>> arch/arm64/boot/dts/qcom/talos-evk-lvds.dts | 128 ++++++++++++++++++++
>> 2 files changed, 129 insertions(+)
>> create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
>>
>> diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
>> index d5a3dd98137d..6e7b04e67287 100644
>> --- a/arch/arm64/boot/dts/qcom/Makefile
>> +++ b/arch/arm64/boot/dts/qcom/Makefile
>> @@ -307,6 +307,7 @@ dtb-$(CONFIG_ARCH_QCOM) += sm8750-mtp.dtb
>> dtb-$(CONFIG_ARCH_QCOM) += sm8750-qrd.dtb
>> dtb-$(CONFIG_ARCH_QCOM) += talos-evk.dtb
>> dtb-$(CONFIG_ARCH_QCOM) += talos-evk-dsi.dtb
>> +dtb-$(CONFIG_ARCH_QCOM) += talos-evk-lvds.dtb
>> x1e001de-devkit-el2-dtbs := x1e001de-devkit.dtb x1-el2.dtbo
>> dtb-$(CONFIG_ARCH_QCOM) += x1e001de-devkit.dtb x1e001de-devkit-el2.dtb
>> x1e78100-lenovo-thinkpad-t14s-el2-dtbs := x1e78100-lenovo-thinkpad-t14s.dtb x1-el2.dtbo
>> diff --git a/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts b/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
>> new file mode 100644
>> index 000000000000..7ba4ab96ada6
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
>> @@ -0,0 +1,128 @@
>> +// SPDX-License-Identifier: BSD-3-Clause
>> +/*
>> + * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
>> + */
>> +/dts-v1/;
>> +#include "talos-evk.dts"
>
> We don't include .dts files, split the existing one in a dtsi and dts
> file and then include the dtsi here. Or provide provide this as a dtso
> overlay on top of the dts.
>
> It's not clear to me which is the correct way, because you didn't
> adequately described how the SN65DSI84 enter the picture. Is it always
> there, but not part of the standard dip-switch configuration? Or is this
> some mezzanine?
>
> Regards,
> Bjorn
>
Thanks for the feedback.
Currently, the Talos device tree hierarchy is organized as follows:
talos-som.dtsi — defines SoM-specific interfaces
talos-evk.dts — adds carrier board (CB) interfaces such as MicroSD, power
button, and HDMI
talos-evk-lvds.dts — enables the LVDS display (includes SoM + CB +
LVDS + disables HDMI)
The LVDS and HDMI displays share a common DSI output, so only one
interface can be active at a time. At present, talos-evk-lvds.dts
includes talos-evk.dts directly so that the base SoM and carrier
interfaces (e.g., MicroSD, power button) remain available.
However, as you pointed out, including a .dts file directly is not
recommended upstream. To address this, I am considering the following
restructuring options:
Option 1: Introduce a talos-cb.dtsi
talos-som.dtsi: SoM-specific interfaces
talos-cb.dtsi: common carrier board interfaces (MicroSD, power button, etc.)
talos-evk.dts: includes talos-som.dtsi + talos-cb.dtsi + HDMI
talos-evk-lvds.dts: includes talos-som.dtsi + talos-cb.dtsi + LVDS
This approach avoids including .dts files directly and keeps the carrier
board interfaces centralized and reusable.It also cleanly separates SoM
and CB content and is consistent with how other Qualcomm platforms
structure their EVK variants.
Option 2: Move CB interfaces to talos-som.dtsi (disabled by default)
Move MicroSD, power button, etc., to talos-som.dtsi with status = "disabled";
Enable these interfaces in each top-level DTS (e.g., talos-evk.dts,
talos-evk-lvds.dts)
While this also avoids .dts inclusion, it may make the SoM DTS
unnecessarily complex and less reusable, as those CB-specific
peripherals don’t belong to the SoM hardware.
Let me know your prepared approach here.
>> +
>> +/ {
>> +
>> + backlight: backlight {
>> + compatible = "gpio-backlight";
>> + gpios = <&tlmm 115 GPIO_ACTIVE_HIGH>;
>> + default-on;
>> + };
>> +
>> + lcd0_pwm_en {
>> + compatible = "pwm-gpio";
>> + gpios = <&tlmm 59 GPIO_ACTIVE_HIGH>;
>> + pinctrl-0 = <&lcd0_bklt_pwm>;
>> + pinctrl-names = "default";
>> + #pwm-cells = <3>;
>> + };
>> +
>> + panel-lvds {
>> + compatible = "auo,g133han01";
>> +
>> + ports {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + /* LVDS A (Odd pixels) */
>> + port@0 {
>> + reg = <0>;
>> + dual-lvds-odd-pixels;
>> +
>> + lvds_panel_out_a: endpoint {
>> + remote-endpoint = <&sn65dsi84_out_a>;
>> + };
>> + };
>> +
>> + /* LVDS B (Even pixels) */
>> + port@1 {
>> + reg = <1>;
>> + dual-lvds-even-pixels;
>> +
>> + lvds_panel_out_b: endpoint {
>> + remote-endpoint = <&sn65dsi84_out_b>;
>> + };
>> + };
>> + };
>> + };
>> +};
>> +
>> +&adv7535 {
>> + status = "disabled";
>> +};
>> +
>> +&i2c1 {
>> + clock-frequency = <400000>;
>> +
>> + status = "okay";
>> +
>> + sn65dsi84: sn65dsi84@2c {
>> + compatible = "ti,sn65dsi84";
>> + reg = <0x2c>;
>> + enable-gpios = <&tlmm 42 GPIO_ACTIVE_HIGH>;
>> + ti,dsi-lanes = <4>;
>> + ti,lvds-format = "jeida-24";
>> + ti,lvds-bpp = <24>;
>> +
>> + ports {
>> + #address-cells = <1>;
>> + #size-cells = <0>;
>> +
>> + port@0 {
>> + reg = <0>;
>> +
>> + sn65dsi84_in: endpoint {
>> + data-lanes = <0 1 2 3>;
>> + remote-endpoint = <&mdss_dsi0_out>;
>> + };
>> + };
>> +
>> + port@2 {
>> + reg = <2>;
>> +
>> + sn65dsi84_out_a: endpoint {
>> + data-lanes = <0 1 2 3>;
>> + remote-endpoint = <&lvds_panel_out_a>;
>> + };
>> + };
>> +
>> + port@3 {
>> + reg = <3>;
>> +
>> + sn65dsi84_out_b: endpoint {
>> + data-lanes = <0 1 2 3>;
>> + remote-endpoint = <&lvds_panel_out_b>;
>> + };
>> + };
>> + };
>> + };
>> +};
>> +
>> +&mdss_dsi0 {
>> + vdda-supply = <&vreg_l11a>;
>> +
>> + status = "okay";
>> +};
>> +
>> +&mdss_dsi0_out {
>> + remote-endpoint = <&sn65dsi84_in>;
>> + data-lanes = <0 1 2 3>;
>> +};
>> +
>> +&tlmm {
>> + lcd0_bklt_en: lcd0-bklt-en-state {
>> + pins = "gpio115";
>> + function = "gpio";
>> + bias-disable;
>> + };
>> +
>> + lcd0_bklt_pwm: lcd0-bklt-pwm-state {
>> + pins = "gpio59";
>> + function = "gpio";
>> + bias-disable;
>> + };
>> +};
>> --
>> 2.34.1
>>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK
2025-10-29 15:43 ` [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Bjorn Andersson
@ 2025-10-31 9:13 ` Tessolve Upstream
0 siblings, 0 replies; 10+ messages in thread
From: Tessolve Upstream @ 2025-10-31 9:13 UTC (permalink / raw)
To: Bjorn Andersson
Cc: konradybcio, robh, krzk+dt, conor+dt, linux-arm-msm, devicetree,
linux-kernel
On 29/10/25 21:13, Bjorn Andersson wrote:
> On Tue, Oct 28, 2025 at 11:46:35AM +0530, Sudarshan Shetty wrote:
>> Hi all,
>>
>> This patch introduces a new device tree for the QCS615 Talos EVK platform
>
> "This patch"? There shouldn't be a need for a cover letter for a single
> patch, the patch commit message should describe itself; as any
> information in the cover-letter is lost in the mail archive when the
> patch is merged.
>
>
> Also, please transition to b4, per our internal guidelines.
>
> Regards,
> Bjorn
Understood, will take care.
>
>> with dual-channel LVDS display support.
>>
>> The new DTS file (`talos-evk-lvds.dts`) is based on the existing
>> `talos-evk.dts` and extends it to enable a dual-channel LVDS display
>> configuration using the TI SN65DSI84 DSI-to-LVDS bridge.
>>
>> In this setup:
>> - LVDS Channel A carries odd pixels.
>> - LVDS Channel B carries even pixels.
>>
>> This patch only adds the new DTS and corresponding Makefile entry.
>>
>> Thanks,
>> Sudarshan
>>
>> ---
>>
>> Sudarshan Shetty (1):
>> arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel
>>
>> arch/arm64/boot/dts/qcom/Makefile | 1 +
>> arch/arm64/boot/dts/qcom/talos-evk-lvds.dts | 128 ++++++++++++++++++++
>> 2 files changed, 129 insertions(+)
>> create mode 100644 arch/arm64/boot/dts/qcom/talos-evk-lvds.dts
>>
>> --
>> 2.34.1
>>
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2025-10-31 9:13 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-28 6:16 [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Sudarshan Shetty
2025-10-28 6:16 ` [PATCH v1 1/1] arm64: dts: qcom: talos-evk: Add support for dual-channel LVDS panel Sudarshan Shetty
2025-10-28 9:25 ` Konrad Dybcio
2025-10-29 12:20 ` Tessolve Upstream
2025-10-29 12:34 ` Dmitry Baryshkov
2025-10-30 8:54 ` Tessolve Upstream
2025-10-29 15:48 ` Bjorn Andersson
2025-10-31 9:12 ` Tessolve Upstream
2025-10-29 15:43 ` [PATCH v1 0/1] arm64: dts: qcom: Add dual-channel LVDS support on QCS615 Talos EVK Bjorn Andersson
2025-10-31 9:13 ` Tessolve Upstream
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).