2023-01-12 15:57:22

by Bjorn Andersson

[permalink] [raw]
Subject: [PATCH] arm64: dts: qcom: sc8280xp: Vote for CX in USB controllers

Running GCC_USB30_*_MASTER_CLK at 200MHz requires CX at nominal level,
not doing so results in occasional lockups. This was previously hidden
by the fact that the display stack incorrectly voted for CX (instead of
MMCX).

Fixes: 152d1faf1e2f ("arm64: dts: qcom: add SC8280XP platform")
Signed-off-by: Bjorn Andersson <[email protected]>
---
arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
index 2ed17baf50d3..4f4353f84cba 100644
--- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
@@ -2265,6 +2265,7 @@ usb_0: usb@a6f8800 {
"ss_phy_irq";

power-domains = <&gcc USB30_PRIM_GDSC>;
+ required-opps = <&rpmhpd_opp_nom>;

resets = <&gcc GCC_USB30_PRIM_BCR>;

@@ -2319,6 +2320,7 @@ usb_1: usb@a8f8800 {
"ss_phy_irq";

power-domains = <&gcc USB30_SEC_GDSC>;
+ required-opps = <&rpmhpd_opp_nom>;

resets = <&gcc GCC_USB30_SEC_BCR>;

--
2.37.3


2023-01-12 16:16:55

by Johan Hovold

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: qcom: sc8280xp: Vote for CX in USB controllers

On Thu, Jan 12, 2023 at 05:51:17AM -0800, Bjorn Andersson wrote:
> Running GCC_USB30_*_MASTER_CLK at 200MHz requires CX at nominal level,
> not doing so results in occasional lockups. This was previously hidden
> by the fact that the display stack incorrectly voted for CX (instead of
> MMCX).
>
> Fixes: 152d1faf1e2f ("arm64: dts: qcom: add SC8280XP platform")
> Signed-off-by: Bjorn Andersson <[email protected]>
> ---
> arch/arm64/boot/dts/qcom/sc8280xp.dtsi | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
> index 2ed17baf50d3..4f4353f84cba 100644
> --- a/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc8280xp.dtsi
> @@ -2265,6 +2265,7 @@ usb_0: usb@a6f8800 {
> "ss_phy_irq";
>
> power-domains = <&gcc USB30_PRIM_GDSC>;
> + required-opps = <&rpmhpd_opp_nom>;
>
> resets = <&gcc GCC_USB30_PRIM_BCR>;
>
> @@ -2319,6 +2320,7 @@ usb_1: usb@a8f8800 {
> "ss_phy_irq";
>
> power-domains = <&gcc USB30_SEC_GDSC>;
> + required-opps = <&rpmhpd_opp_nom>;
>
> resets = <&gcc GCC_USB30_SEC_BCR>;

Looks good. Perhaps you can send a binding patch adding 'required-oops'
as well.

Reviewed-by: Johan Hovold <[email protected]>

Johan

2023-01-12 16:30:13

by Bjorn Andersson

[permalink] [raw]
Subject: Re: [PATCH] arm64: dts: qcom: sc8280xp: Vote for CX in USB controllers

On Thu, 12 Jan 2023 05:51:17 -0800, Bjorn Andersson wrote:
> Running GCC_USB30_*_MASTER_CLK at 200MHz requires CX at nominal level,
> not doing so results in occasional lockups. This was previously hidden
> by the fact that the display stack incorrectly voted for CX (instead of
> MMCX).
>
>

Applied, thanks!

[1/1] arm64: dts: qcom: sc8280xp: Vote for CX in USB controllers
commit: fe07640280cd29ac2997a617a1fb5487feef9387

Best regards,
--
Bjorn Andersson <[email protected]>