[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <vcjsz3x3bbzf6lbgbumutfymuz7hbfpr6myg2hiyqbr5o245sb@ydr7bunig5bi>
Date: Fri, 17 Oct 2025 15:52:18 +0300
From: Dmitry Baryshkov <dmitry.baryshkov@....qualcomm.com>
To: Tessolve Upstream <tessolveupstream@...il.com>
Cc: andersson@...nel.org, konradybcio@...nel.org, robh@...nel.org,
krzk+dt@...nel.org, conor+dt@...nel.org, linux-arm-msm@...r.kernel.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v1] arm64: dts: qcom: talos-evk: Add ADV7535 DSI-to-HDMI
bridge
On Thu, Oct 16, 2025 at 02:24:40PM +0530, Tessolve Upstream wrote:
>
>
> On 15/10/25 18:34, Dmitry Baryshkov wrote:
> > On Wed, Oct 15, 2025 at 05:58:08PM +0530, Sudarshan Shetty wrote:
> >> Hook up the ADV7535 DSI-to-HDMI bridge on the QCS615 Talos EVK board.
> >> This provides HDMI output through the external DSI-to-HDMI converter.
> >>
> >> Signed-off-by: Sudarshan Shetty <tessolveupstream@...il.com>
> >> ---
> >> arch/arm64/boot/dts/qcom/talos-evk-som.dtsi | 21 ++++++
> >> arch/arm64/boot/dts/qcom/talos-evk.dts | 76 +++++++++++++++++++++
> >> 2 files changed, 97 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/qcom/talos-evk-som.dtsi b/arch/arm64/boot/dts/qcom/talos-evk-som.dtsi
> >> index 55ec8034103d..b58cae02c9cb 100644
> >> --- a/arch/arm64/boot/dts/qcom/talos-evk-som.dtsi
> >> +++ b/arch/arm64/boot/dts/qcom/talos-evk-som.dtsi
> >> @@ -244,6 +244,27 @@ eeprom@5f {
> >> };
> >> };
> >>
> >> +&mdss {
> >> + status = "okay";
> >> +};
> >> +
> >> +&mdss_dsi0 {
> >> + vdda-supply = <&vreg_l11a>;
> >> +
> >> + status = "okay";
> >> +};
> >> +
> >> +&mdss_dsi0_out {
> >> + remote-endpoint = <&adv7535_in>;
> >> + data-lanes = <0 1 2 3>;
> >> +};
> >> +
> >> +&mdss_dsi0_phy {
> >> + vdds-supply = <&vreg_l5a>;
> >> +
> >> + status = "okay";
> >> +};
> >> +
> >> &pcie {
> >> perst-gpios = <&tlmm 101 GPIO_ACTIVE_LOW>;
> >> wake-gpios = <&tlmm 100 GPIO_ACTIVE_HIGH>;
> >> diff --git a/arch/arm64/boot/dts/qcom/talos-evk.dts b/arch/arm64/boot/dts/qcom/talos-evk.dts
> >> index 25057f4f6a91..f7e8be3667d1 100644
> >> --- a/arch/arm64/boot/dts/qcom/talos-evk.dts
> >> +++ b/arch/arm64/boot/dts/qcom/talos-evk.dts
> >> @@ -14,6 +14,82 @@ / {
> >> aliases {
> >> mmc1 = &sdhc_2;
> >> };
> >> +
> >> + hdmi-out {
> >> + compatible = "hdmi-connector";
> >> + type = "d";
> >> +
> >> + port {
> >> + hdmi_con_out: endpoint {
> >> + remote-endpoint = <&adv7535_out>;
> >> + };
> >> + };
> >> + };
> >> +
> >> + vreg_v1p2_out: regulator-v1p2-out {
> >> + compatible = "regulator-fixed";
> >> + regulator-name = "vreg-v1p2-out";
> >> + regulator-min-microvolt = <1200000>;
> >> + regulator-max-microvolt = <1200000>;
> >> + regulator-boot-on;
> >> + regulator-always-on;
> >> + };
> >> +
> >> + vreg_v1p8_out: regulator-v1p8-out {
> >> + compatible = "regulator-fixed";
> >> + regulator-name = "vreg-v1p8-out";
> >> + regulator-min-microvolt = <1800000>;
> >> + regulator-max-microvolt = <1800000>;
> >> + regulator-boot-on;
> >> + regulator-always-on;
> >> + };
> >> +
> >> + vreg_v3p3_out: regulator-v3p3-out {
> >> + compatible = "regulator-fixed";
> >> + regulator-name = "vreg-v3p3-out";
> >> + regulator-min-microvolt = <3300000>;
> >> + regulator-max-microvolt = <3300000>;
> >> + regulator-boot-on;
> >> + regulator-always-on;
> >> + };
> >
> > Please describe the power grid. Are these regulators being fed by
> > nothing and generating energy from the thin air?
>
> Thanks for the feedback.
> You are right β in the previous patch, the regulators appeared
> to have no source, which was incorrect.
>
> To clarify the hardware design:
> The 3.3 V and 1.8 V supplies to the HDMI controller are not coming
> from the PMIC. They are generated on the carrier board as follows:
>
> 20 V (USBC_VBUS_IN) β 5 V rail (V5P0_OUT)
> β 3.3 V buck regulator (RAA211250) and 1.8 V LDO (TPS7A9101).
>
> The 5 V rail (V5P0_OUT) acts as the input supply for both regulators.
> Both regulators are always on.
>
> example:
> v5p0_out: regulator-v5p0-out {
> compatible = "regulator-fixed";
> regulator-name = "v5p0_out";
> regulator-min-microvolt = <5000000>;
> regulator-max-microvolt = <5000000>;
> regulator-always-on;
> regulator-boot-on;
> };
>
> v3p3_out: regulator-v3p3-out {
> compatible = "regulator-fixed";
> regulator-name = "v3p3_out";
> regulator-min-microvolt = <3300000>;
> regulator-max-microvolt = <3300000>;
> vin-supply = <&v5p0_out>;
> regulator-always-on;
> regulator-boot-on;
> };
>
> v1p8_out: regulator-v1p8-out {
> compatible = "regulator-fixed";
> regulator-name = "v1p8_out";
> regulator-min-microvolt = <1800000>;
> regulator-max-microvolt = <1800000>;
> vin-supply = <&v5p0_out>;
> regulator-always-on;
> regulator-boot-on;
> };
>
> These reflect the actual power grid of the board.
> The 20 V input is not modeled since itβs a raw external
> supply and not managed by Linux.
>
> Please let me know if this structure looks acceptable,
> Thanks again for the review and guidance!
I think this is perfectly fine, especially if you add the "powered by
system 20V rail" comment to the 5V regulator.
> >
> >> +};
> >> +
> >> +&i2c1 {
> >> + clock-frequency = <400000>;
> >> +
> >> + status = "okay";
> >> +
> >> + adv7535: adv7535@3d {
> >> + compatible = "adi,adv7535";
> >> + reg = <0x3d>;
> >> + avdd-supply = <&vreg_v1p8_out>;
> >> + dvdd-supply = <&vreg_v1p8_out>;
> >> + pvdd-supply = <&vreg_v1p8_out>;
> >> + a2vdd-supply = <&vreg_v1p8_out>;
> >> + v3p3-supply = <&vreg_v3p3_out>;
> >> + v1p2-supply = <&vreg_v1p2_out>;
> >
> > I think this is not correct. Please consult your schematics isntead of
> > adding dummy regulators.
>
> Will take care in v2 patch.
> >
> >
>
--
With best wishes
Dmitry
Powered by blists - more mailing lists