Re: [PATCH v3 4/7] arm64: dts: qcom: sc7280: Update VA/RX/TX macro clock nodes

From: Krzysztof Kozlowski
Date: Fri Jan 20 2023 - 03:04:25 EST


On 20/01/2023 07:35, Srinivasa Rao Mandadapu wrote:
>
> On 1/20/2023 11:54 AM, Krzysztof Kozlowski wrote:
> Thanks for your valuable suggestion Krzysztof!!!
>> On 20/01/2023 05:47, Srinivasa Rao Mandadapu wrote:
>>> On 1/19/2023 7:01 PM, Krzysztof Kozlowski wrote:
>>> Thanks for your time Krzysztof!!!
>>>> On 19/01/2023 13:27, Srinivasa Rao Mandadapu wrote:
>>>>> Update VA, RX and TX macro and lpass_tlmm clock properties and
>>>>> enable them.
>>>> Everything is an update and this does not explain what exactly you are
>>>> updating in the nodes and why.
>>>>
>>>>> Signed-off-by: Srinivasa Rao Mandadapu <quic_srivasam@xxxxxxxxxxx>
>>>>> Tested-by: Mohammad Rafi Shaik <quic_mohs@xxxxxxxxxxx>
>>>>> ---
>>>>> .../qcom/sc7280-herobrine-audioreach-wcd9385.dtsi | 59 ++++++++++++++++++++++
>>>>> 1 file changed, 59 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 81e0f3a..674b01a 100644
>>>>> --- a/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
>>>>> +++ b/arch/arm64/boot/dts/qcom/sc7280-herobrine-audioreach-wcd9385.dtsi
>>>>> @@ -8,8 +8,67 @@
>>>>>
>>>>> #include <dt-bindings/sound/qcom,q6afe.h>
>>>>>
>>>>> +/delete-node/ &lpass_rx_macro;
>>>> Why?
>>> Actually in SoC dtsi (sc7280.dtsi) power domains property used.
>>>
>>> Which is not required for ADSP based solution. As there is no way to delete
>>>
>>> individual property, deleting node and recreating it here.
>>>
>> You can delete property - delete-property. However why in AudioReach
>> device comes without power domains? What does it mean "power domains
>> property is not required"? DTS describes the hardware and the rx macro
>> is powered, isn't it?
>
> Actually in case ADSP bypass solution power domains are handled in HLOS
> clock driver.
>
> Whereas in ADSP based solution they are handled in ADSP firmware, and
> from HLOS
>
> voted as clocks.
>
> Below is the reference commit.
>
> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=9e3d83c52844f955aa2975f78cee48bf9f72f5e1

I am sorry, but this is one big mess. Hardware is one. I understand that
Linux drivers can be entirely different but here - and in the past with
few clocks - the hardware description keeps changing depending on the
wishes of developers. That's not how bindings and DTS work. This suggest
that DTS is being pushed to satisfy driver needs, not to properly
describe the hardware. I am sorry, but hardware does not change.

Best regards,
Krzysztof