Re: [PATCH 12/28] arm64: dts: qcom: qcm6490: Fix swapped USB QMP PHY vdda-phy/vdda-pll supplies

"Luca Weiss" <[email protected]> Tue, 04 Aug 2026 15:24:24 +0200
Newsgroups org.kernel.vger.linux-arm-msm,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On Mon Aug 3, 2026 at 8:34 AM CEST, Manivannan Sadhasivam via B4 Relay wrote:
> From: Manivannan Sadhasivam <[email protected]>
>
> The QMP PHY expects the vdda-phy supply to be around 0.88V and the
> vdda-pll supply to be 1.2V. But these two supplies are swapped for the
> USB QMP PHYs on these boards, feeding 1.2V to vdda-phy and 0.9V to
> vdda-pll.
>
> Fix it by swapping the two supplies back.
>
> Fixes: 9af6a9f32ad0 ("arm64: dts: qcom: Add base qcm6490 idp board dts")
> Fixes: a319cf4a4b09 ("arm64: dts: qcom: qcm6490: Introduce the Particle Tachyon")
> Fixes: eee9602ad649 ("arm64: dts: qcom: qcm6490: Add device-tree for Fairphone 5")
> Fixes: 249666e34c24 ("arm64: dts: qcom: add QCM6490 SHIFTphone 8")
> Reported-by: Konrad Dybcio <[email protected]>
> Assisted-by: Claude:opus-4-8
> Signed-off-by: Manivannan Sadhasivam <[email protected]>
> ---
>  arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts    | 4 ++--
>  arch/arm64/boot/dts/qcom/qcm6490-idp.dts              | 4 ++--
>  arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts | 4 ++--
>  arch/arm64/boot/dts/qcom/qcm6490-shift-otter.dts      | 4 ++--
>  4 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
> index 04cb9230d29f..92a7d80b7fee 100644
> --- a/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
> +++ b/arch/arm64/boot/dts/qcom/qcm6490-fairphone-fp5.dts
> @@ -1502,8 +1502,8 @@ &usb_1_hsphy {
>  };
>  
>  &usb_1_qmpphy {
> -	vdda-phy-supply = <&vreg_l6b>;
> -	vdda-pll-supply = <&vreg_l1b>;
> +	vdda-phy-supply = <&vreg_l1b>;
> +	vdda-pll-supply = <&vreg_l6b>;

On Fairphone 5 the schematics show:
* VREG_L1B_0P912 <-> VDD_A_USBSSDP_0_CORE
* VREG_L6B_1P2 <-> VDD_A_USBSSDP_0_1P2

So with the updated bindings description, this makes it fairly clear
that l1b is vdda-phy-supply and l6b is vdda-pll-supply. I assume all
other kodiak boards are also wired up that way.

Reviewed-by: Luca Weiss <[email protected]>

Sidenote, you could squash the qcm6490, qcs6490 and sc7280 patches into
a single "kodiak" patch, but keeping them separate also works of course.

Regards
Luca

>  
>  	status = "okay";
>  };
> diff --git a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
> index bdc02260f902..58cce89a0c1c 100644
> --- a/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
> +++ b/arch/arm64/boot/dts/qcom/qcm6490-idp.dts
> @@ -1141,8 +1141,8 @@ &usb_1_hsphy {
>  };
>  
>  &usb_1_qmpphy {
> -	vdda-phy-supply = <&vreg_l6b_1p2>;
> -	vdda-pll-supply = <&vreg_l1b_0p912>;
> +	vdda-phy-supply = <&vreg_l1b_0p912>;
> +	vdda-pll-supply = <&vreg_l6b_1p2>;
>  
>  	status = "okay";
>  };
> diff --git a/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts b/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts
> index bf18c4852081..17804de03e17 100644
> --- a/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts
> +++ b/arch/arm64/boot/dts/qcom/qcm6490-particle-tachyon.dts
> @@ -839,8 +839,8 @@ &usb_1_hsphy {
>  };
>  
>  &usb_1_qmpphy {
> -	vdda-phy-supply = <&vreg_l6b_1p2>;
> -	vdda-pll-supply = <&vreg_l1b_0p912>;
> +	vdda-phy-supply = <&vreg_l1b_0p912>;
> +	vdda-pll-supply = <&vreg_l6b_1p2>;
>  
>  	status = "okay";
>  };
> diff --git a/arch/arm64/boot/dts/qcom/qcm6490-shift-otter.dts b/arch/arm64/boot/dts/qcom/qcm6490-shift-otter.dts
> index 797f37596bf1..cdaacc09f56c 100644
> --- a/arch/arm64/boot/dts/qcom/qcm6490-shift-otter.dts
> +++ b/arch/arm64/boot/dts/qcom/qcm6490-shift-otter.dts
> @@ -976,8 +976,8 @@ &usb_1_hsphy {
>  };
>  
>  &usb_1_qmpphy {
> -	vdda-phy-supply = <&vreg_l6b>;
> -	vdda-pll-supply = <&vreg_l1b>;
> +	vdda-phy-supply = <&vreg_l1b>;
> +	vdda-pll-supply = <&vreg_l6b>;
>  
>  	status = "okay";
>  };