2021-07-21 09:00:02

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: [PATCH v5 0/2] Qualcomm's lpass device tree changes

Changes Since v4:
-- Signed off address change.
Changes Since v3:
-- Changed DP node name.
Changes Since v2:
-- Removed obsolete hdmi-jack property.
-- Updated sound dai cells property
Changes Since v1:
-- hdmi dai is added in lpass-cpu node.

V Sujith Kumar Reddy (2):
arm64: dts: qcom: sc7180: Update lpass cpu node for audio over dp
arm64: dts: qcom: sc7180-trogdor: Add lpass dai link for HDMI

arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 17 +++++++++++++++++
arch/arm64/boot/dts/qcom/sc7180.dtsi | 16 ++++++++++------
2 files changed, 27 insertions(+), 6 deletions(-)

--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.,
is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.


2021-07-21 09:01:14

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: [PATCH v5 1/2] arm64: dts: qcom: sc7180: Update lpass cpu node for audio over dp

From: V Sujith Kumar Reddy <[email protected]>

Updaate lpass dts node with HDMI reg, interrupt and iommu
for supporting audio over dp.

Signed-off-by: V Sujith Kumar Reddy <[email protected]>
Signed-off-by: Srinivasa Rao Mandadapu <[email protected]>
Reviewed-by: Srinivas Kandagatla <[email protected]>
---
arch/arm64/boot/dts/qcom/sc7180.dtsi | 16 ++++++++++------
1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/arch/arm64/boot/dts/qcom/sc7180.dtsi b/arch/arm64/boot/dts/qcom/sc7180.dtsi
index ad21a872be85..e6f6ebb2a9ac 100644
--- a/arch/arm64/boot/dts/qcom/sc7180.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180.dtsi
@@ -3534,17 +3534,20 @@ lpasscc: clock-controller@62d00000 {
#power-domain-cells = <1>;
};

- lpass_cpu: lpass@62f00000 {
+ lpass_cpu: lpass@62d87000 {
compatible = "qcom,sc7180-lpass-cpu";

- reg = <0 0x62f00000 0 0x29000>;
- reg-names = "lpass-lpaif";
+ reg = <0 0x62d87000 0 0x68000>, <0 0x62f00000 0 0x29000>;
+ reg-names = "lpass-hdmiif", "lpass-lpaif";

iommus = <&apps_smmu 0x1020 0>,
- <&apps_smmu 0x1021 0>;
+ <&apps_smmu 0x1021 0>,
+ <&apps_smmu 0x1032 0>;

power-domains = <&lpass_hm LPASS_CORE_HM_GDSCR>;

+ status = "disabled";
+
clocks = <&gcc GCC_LPASS_CFG_NOC_SWAY_CLK>,
<&lpasscc LPASS_AUDIO_CORE_CORE_CLK>,
<&lpasscc LPASS_AUDIO_CORE_EXT_MCLK0_CLK>,
@@ -3561,8 +3564,9 @@ lpass_cpu: lpass@62f00000 {
#address-cells = <1>;
#size-cells = <0>;

- interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-names = "lpass-irq-lpaif";
+ interrupts = <GIC_SPI 160 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "lpass-irq-lpaif", "lpass-irq-hdmi";
};

lpass_hm: clock-controller@63000000 {
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.,
is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.

2021-07-21 09:02:51

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: [PATCH v5 2/2] arm64: dts: qcom: sc7180-trogdor: Add lpass dai link for HDMI

From: V Sujith Kumar Reddy <[email protected]>

Add dai link in sc7180-trogdor.dtsi for supporting audio over DP

Signed-off-by: V Sujith Kumar Reddy <[email protected]>
Signed-off-by: Srinivasa Rao Mandadapu <[email protected]>
Reviewed-by: Srinivas Kandagatla <[email protected]>
---
arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
index 31bf7c698b8f..a4cb9ee567ff 100644
--- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
+++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
@@ -288,6 +288,7 @@ sound: sound {
"Headphone Jack", "HPOL",
"Headphone Jack", "HPOR";

+ #sound-dai-cells = <0>;
#address-cells = <1>;
#size-cells = <0>;

@@ -314,6 +315,18 @@ sound_multimedia1_codec: codec {
sound-dai = <&max98357a>;
};
};
+
+ dai-link@2 {
+ link-name = "MultiMedia2";
+ reg = <2>;
+ cpu {
+ sound-dai = <&lpass_cpu 2>;
+ };
+
+ codec {
+ sound-dai = <&mdss_dp>;
+ };
+ };
};
};

@@ -768,6 +781,10 @@ secondary_mi2s: mi2s@1 {
reg = <MI2S_SECONDARY>;
qcom,playback-sd-lines = <0>;
};
+
+ hdmi-primary@0 {
+ reg = <LPASS_DP_RX>;
+ };
};

&mdp {
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.,
is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.

2021-07-21 21:04:56

by Doug Anderson

[permalink] [raw]
Subject: Re: [PATCH v5 2/2] arm64: dts: qcom: sc7180-trogdor: Add lpass dai link for HDMI

Hi,

On Wed, Jul 21, 2021 at 1:42 AM Srinivasa Rao Mandadapu
<[email protected]> wrote:
>
> From: V Sujith Kumar Reddy <[email protected]>
>
> Add dai link in sc7180-trogdor.dtsi for supporting audio over DP
>
> Signed-off-by: V Sujith Kumar Reddy <[email protected]>
> Signed-off-by: Srinivasa Rao Mandadapu <[email protected]>
> Reviewed-by: Srinivas Kandagatla <[email protected]>
> ---
> arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 17 +++++++++++++++++
> 1 file changed, 17 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
> index 31bf7c698b8f..a4cb9ee567ff 100644
> --- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
> @@ -288,6 +288,7 @@ sound: sound {
> "Headphone Jack", "HPOL",
> "Headphone Jack", "HPOR";
>
> + #sound-dai-cells = <0>;

The `#sound-dai-cells` is not in the bindings. The bindings also say
`additionalProperties: false`. So either your patch is wrong for
including this or the bindings are wrong for omitting it. Which is it?
I notice that downstream we don't have this.


> @@ -314,6 +315,18 @@ sound_multimedia1_codec: codec {
> sound-dai = <&max98357a>;

Ideally you'll want to rebase to make context clean since the above
got changed from `max98357a` to `max98360a`.


> };
> };
> +
> + dai-link@2 {
> + link-name = "MultiMedia2";
> + reg = <2>;

I am certainly not an expert, but I notice that downstream we have reg
as <LPASS_DP_RX>, which makes the node name dai-link@5 instead of @2.
Does that matter?


> @@ -768,6 +781,10 @@ secondary_mi2s: mi2s@1 {
> reg = <MI2S_SECONDARY>;
> qcom,playback-sd-lines = <0>;
> };
> +
> + hdmi-primary@0 {
> + reg = <LPASS_DP_RX>;

Your node name and `reg` don't match. `LPASS_DP_RX` is 5 so the node
name should include @5, not @0. I also notice that downstream the node
name is called `hdmi`, not `hdmi-primary`. The downstream `hdmi` seems
more parallel to the sibling nodes, like `mi2s@0` and `mi2s@1`.

2021-07-22 14:50:45

by Srinivasa Rao Mandadapu

[permalink] [raw]
Subject: Re: [PATCH v5 2/2] arm64: dts: qcom: sc7180-trogdor: Add lpass dai link for HDMI

Thanks for your time Doug!!

On 7/21/2021 9:50 PM, Doug Anderson wrote:
> Hi,
>
> On Wed, Jul 21, 2021 at 1:42 AM Srinivasa Rao Mandadapu
> <[email protected]> wrote:
>> From: V Sujith Kumar Reddy <[email protected]>
>>
>> Add dai link in sc7180-trogdor.dtsi for supporting audio over DP
>>
>> Signed-off-by: V Sujith Kumar Reddy <[email protected]>
>> Signed-off-by: Srinivasa Rao Mandadapu <[email protected]>
>> Reviewed-by: Srinivas Kandagatla <[email protected]>
>> ---
>> arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 17 +++++++++++++++++
>> 1 file changed, 17 insertions(+)
>>
>> diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
>> index 31bf7c698b8f..a4cb9ee567ff 100644
>> --- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
>> +++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
>> @@ -288,6 +288,7 @@ sound: sound {
>> "Headphone Jack", "HPOL",
>> "Headphone Jack", "HPOR";
>>
>> + #sound-dai-cells = <0>;
> The `#sound-dai-cells` is not in the bindings. The bindings also say
> `additionalProperties: false`. So either your patch is wrong for
> including this or the bindings are wrong for omitting it. Which is it?
> I notice that downstream we don't have this.
>
Yes it's wrongly placed Here. Will remove it.
>> @@ -314,6 +315,18 @@ sound_multimedia1_codec: codec {
>> sound-dai = <&max98357a>;
> Ideally you'll want to rebase to make context clean since the above
> got changed from `max98357a` to `max98360a`.
>
>
>> };
>> };
>> +
>> + dai-link@2 {
>> + link-name = "MultiMedia2";
>> + reg = <2>;
> I am certainly not an expert, but I notice that downstream we have reg
> as <LPASS_DP_RX>, which makes the node name dai-link@5 instead of @2.
> Does that matter?
>
Yes,Here reg as <LPASS_DP_RX> is correct option. Will change
accordingly.  But It seems dai-link@2 is appropriate as in this platform

we are using only 3 nodes. i.e. I2S primary, I2S secondary and DP node.

>> @@ -768,6 +781,10 @@ secondary_mi2s: mi2s@1 {
>> reg = <MI2S_SECONDARY>;
>> qcom,playback-sd-lines = <0>;
>> };
>> +
>> + hdmi-primary@0 {
>> + reg = <LPASS_DP_RX>;
> Your node name and `reg` don't match. `LPASS_DP_RX` is 5 so the node
> name should include @5, not @0. I also notice that downstream the node
> name is called `hdmi`, not `hdmi-primary`. The downstream `hdmi` seems
> more parallel to the sibling nodes, like `mi2s@0` and `mi2s@1`.
Yes hdmi@2 is appropriate. will change accordingly.

--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.,
is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.

2021-07-22 14:56:01

by Doug Anderson

[permalink] [raw]
Subject: Re: [PATCH v5 2/2] arm64: dts: qcom: sc7180-trogdor: Add lpass dai link for HDMI

Hi,


On Thu, Jul 22, 2021 at 7:49 AM Srinivasa Rao Mandadapu
<[email protected]> wrote:
>
> Thanks for your time Doug!!
>
> On 7/21/2021 9:50 PM, Doug Anderson wrote:
> > Hi,
> >
> > On Wed, Jul 21, 2021 at 1:42 AM Srinivasa Rao Mandadapu
> > <[email protected]> wrote:
> >> From: V Sujith Kumar Reddy <[email protected]>
> >>
> >> Add dai link in sc7180-trogdor.dtsi for supporting audio over DP
> >>
> >> Signed-off-by: V Sujith Kumar Reddy <[email protected]>
> >> Signed-off-by: Srinivasa Rao Mandadapu <[email protected]>
> >> Reviewed-by: Srinivas Kandagatla <[email protected]>
> >> ---
> >> arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi | 17 +++++++++++++++++
> >> 1 file changed, 17 insertions(+)
> >>
> >> diff --git a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
> >> index 31bf7c698b8f..a4cb9ee567ff 100644
> >> --- a/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
> >> +++ b/arch/arm64/boot/dts/qcom/sc7180-trogdor.dtsi
> >> @@ -288,6 +288,7 @@ sound: sound {
> >> "Headphone Jack", "HPOL",
> >> "Headphone Jack", "HPOR";
> >>
> >> + #sound-dai-cells = <0>;
> > The `#sound-dai-cells` is not in the bindings. The bindings also say
> > `additionalProperties: false`. So either your patch is wrong for
> > including this or the bindings are wrong for omitting it. Which is it?
> > I notice that downstream we don't have this.
> >
> Yes it's wrongly placed Here. Will remove it.
> >> @@ -314,6 +315,18 @@ sound_multimedia1_codec: codec {
> >> sound-dai = <&max98357a>;
> > Ideally you'll want to rebase to make context clean since the above
> > got changed from `max98357a` to `max98360a`.
> >
> >
> >> };
> >> };
> >> +
> >> + dai-link@2 {
> >> + link-name = "MultiMedia2";
> >> + reg = <2>;
> > I am certainly not an expert, but I notice that downstream we have reg
> > as <LPASS_DP_RX>, which makes the node name dai-link@5 instead of @2.
> > Does that matter?
> >
> Yes,Here reg as <LPASS_DP_RX> is correct option. Will change
> accordingly. But It seems dai-link@2 is appropriate as in this platform

I think you misunderstand. The "@num" is _required_ to match the value
for "reg". So if reg is 5 then you need "@5", not "@2"


> we are using only 3 nodes. i.e. I2S primary, I2S secondary and DP node.
>
> >> @@ -768,6 +781,10 @@ secondary_mi2s: mi2s@1 {
> >> reg = <MI2S_SECONDARY>;
> >> qcom,playback-sd-lines = <0>;
> >> };
> >> +
> >> + hdmi-primary@0 {
> >> + reg = <LPASS_DP_RX>;
> > Your node name and `reg` don't match. `LPASS_DP_RX` is 5 so the node
> > name should include @5, not @0. I also notice that downstream the node
> > name is called `hdmi`, not `hdmi-primary`. The downstream `hdmi` seems
> > more parallel to the sibling nodes, like `mi2s@0` and `mi2s@1`.
> Yes hdmi@2 is appropriate. will change accordingly.

Same here. Since LPASS_DP_RX is actually the number 5 then you need
@5. I think there was discussion about allowing it to be @LPASS_DP_RX
but last I remember the decision was to keep it as a number.

-Doug