Re: [PATCH 12/28] arm64: dts: qcom: qcm6490: Fix swapped USB QMP PHY vdda-phy/vdda-pll supplies
From: Luca Weiss
Date: Tue Aug 04 2026 - 09:29:54 EST
On Mon Aug 3, 2026 at 8:34 AM CEST, Manivannan Sadhasivam via B4 Relay wrote:
> From: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxxxxxxxx>
>
> 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 <konrad.dybcio@xxxxxxxxxxxxxxxx>
> Assisted-by: Claude:opus-4-8
> Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@xxxxxxxxxxxxxxxx>
> ---
> 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 <luca.weiss@xxxxxxxxxxxxx>
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";
> };