On 16.06.2023 12:35, Mohammad Rafi Shaik wrote: > From: Srinivasa Rao Mandadapu <quic_srivasam@xxxxxxxxxxx> > > Modify VA, RX and TX macro and lpass_tlmm clock properties and > enable them. For audioreach solution mclk, npl and fsgen clocks > are enabled through the q6prm clock driver. > > Delete the power domain properties from VA, RX and TX macro, > for audioreach solution the macro, dcodec power domains enabled > through the q6prm clock driver. > > Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@xxxxxxxxxxx> > Signed-off-by: Mohammad Rafi Shaik <quic_mohs@xxxxxxxxxxx> > --- Maybe sc7280-audioreach.dtsi containing all these changes that could be reused by others would be in order? > .../sc7280-herobrine-audioreach-wcd9385.dtsi | 43 +++++++++++++++++++ > 1 file changed, 43 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi > index 9daea1b25656..c02ca393378f 100644 > --- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi > +++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi > @@ -196,3 +196,46 @@ q6prmcc: clock-controller { > }; > }; > }; > + > +&lpass_rx_macro { > + /delete-property/ power-domains; > + /delete-property/ power-domain-names; Surely they shouldn't cause issues, even if the vote would be superfluous? They are still powered by these power domains, I'd assume? > + clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&lpass_va_macro>; > + clock-names = "mclk", "npl", "macro", "dcodec", "fsgen"; The drivers use clk_get with name-based lookup.. you should be able to simply extend the list in the common DTSI. Please test that on both audioreach and the other thing though. Konrad > + > + status = "okay"; > +}; > + > +&lpass_tlmm { > + clocks = <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>; > + clock-names = "core", "audio"; > +}; > + > +&lpass_tx_macro { > + /delete-property/ power-domains; > + /delete-property/ power-domain-names; > + clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_CLK_ID_TX_CORE_NPL_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&lpass_va_macro>; > + clock-names = "mclk", "npl", "macro", "dcodec", "fsgen"; > + > + status = "okay"; > +}; > + > +&lpass_va_macro { > + /delete-property/ power-domains; > + /delete-property/ power-domain-names; > + clocks = <&q6prmcc LPASS_CLK_ID_TX_CORE_MCLK LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, > + <&q6prmcc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>; > + clock-names = "mclk", "macro", "dcodec"; > + > + status = "okay"; > +};