Message ID | 20231129140537.161720-1-krzysztof.kozlowski@linaro.org |
---|---|
State | Accepted |
Commit | 20e886590a310665244a354e3b693b881544edec |
Headers | show |
Series | [1/2] arm64: dts: qcom: sm8450: correct TX Soundwire clock | expand |
On 30/11/2023 09:06, Krzysztof Kozlowski wrote: > On 29/11/2023 15:35, Konrad Dybcio wrote: >> On 29.11.2023 15:05, Krzysztof Kozlowski wrote: >>> The TX Soundwire controller should take clock from TX macro codec, not >>> VA macro codec clock, otherwise the clock stays disabled. This looks >>> like a copy-paste issue, because the SC8280xp code uses here correctly >>> clock from TX macro. The VA macro clock is already consumed by TX macro >>> codec, thus it won't be disabled by this change. >>> >>> Fixes: 61b006389bb7 ("arm64: dts: qcom: sm8550: add Soundwire controllers") >>> Reported-by: Neil Armstrong <neil.armstrong@linaro.org> >>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> >>> --- >> Interestingly, downstream 8550 has >> >> qcom,use-clk-id = <VA_CORE_CLK>; >> >> which doesn't seem to be used in techpack > > In which node? I see it in the va-macro node, not the tx-macro. Same I only see this in the va_macro. Neil > > Best regards, > Krzysztof >
On 29/11/2023 15:05, Krzysztof Kozlowski wrote: > The TX Soundwire controller should take clock from TX macro codec, not > VA macro codec clock, otherwise the clock stays disabled. This looks > like a copy-paste issue, because the SC8280xp code uses here correctly > clock from TX macro. The VA macro clock is already consumed by TX macro > codec, thus it won't be disabled by this change. > > Fixes: 14341e76dbc7 ("arm64: dts: qcom: sm8450: add Soundwire and LPASS") > Reported-by: Neil Armstrong <neil.armstrong@linaro.org> > Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> > > --- > > Considering that in Downstream, the TX Soundwire is part of VA macro, > there is no clear reference code explaining this. Let's just go with > SC8280xp approach because it seems reasonable, but don't ask me "why". > --- > arch/arm64/boot/dts/qcom/sm8450.dtsi | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi b/arch/arm64/boot/dts/qcom/sm8450.dtsi > index a305f8c03f9e..28207c7423f0 100644 > --- a/arch/arm64/boot/dts/qcom/sm8450.dtsi > +++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi > @@ -2314,7 +2314,7 @@ swr2: soundwire@33b0000 { > <GIC_SPI 520 IRQ_TYPE_LEVEL_HIGH>; > interrupt-names = "core", "wakeup"; > > - clocks = <&vamacro>; > + clocks = <&txmacro>; > clock-names = "iface"; > label = "TX"; > Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
diff --git a/arch/arm64/boot/dts/qcom/sm8450.dtsi b/arch/arm64/boot/dts/qcom/sm8450.dtsi index a305f8c03f9e..28207c7423f0 100644 --- a/arch/arm64/boot/dts/qcom/sm8450.dtsi +++ b/arch/arm64/boot/dts/qcom/sm8450.dtsi @@ -2314,7 +2314,7 @@ swr2: soundwire@33b0000 { <GIC_SPI 520 IRQ_TYPE_LEVEL_HIGH>; interrupt-names = "core", "wakeup"; - clocks = <&vamacro>; + clocks = <&txmacro>; clock-names = "iface"; label = "TX";
The TX Soundwire controller should take clock from TX macro codec, not VA macro codec clock, otherwise the clock stays disabled. This looks like a copy-paste issue, because the SC8280xp code uses here correctly clock from TX macro. The VA macro clock is already consumed by TX macro codec, thus it won't be disabled by this change. Fixes: 14341e76dbc7 ("arm64: dts: qcom: sm8450: add Soundwire and LPASS") Reported-by: Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> --- Considering that in Downstream, the TX Soundwire is part of VA macro, there is no clear reference code explaining this. Let's just go with SC8280xp approach because it seems reasonable, but don't ask me "why". --- arch/arm64/boot/dts/qcom/sm8450.dtsi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)