Re: [PATCH v3 2/5] ASoC: dt-bindings: Add dt binding for lpass hdmi

From: Srinivas Kandagatla
Date: Fri Sep 04 2020 - 06:41:45 EST




On 31/08/2020 07:39, Srinivasa Rao Mandadapu wrote:
From: V Sujith Kumar Reddy <vsujithk@xxxxxxxxxxxxxx>

Adds bindings for lpass hdmi interface
which can support audio path over dp.

Signed-off-by: Srinivasa Rao <srivasam@xxxxxxxxxxxxxx>
Signed-off-by: V Sujith Kumar Reddy <vsujithk@xxxxxxxxxxxxxx>
---
.../devicetree/bindings/sound/qcom,lpass-cpu.yaml | 51 ++++++++++++++++++++--
1 file changed, 47 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
index 09c9bd2..7c2ac0c 100644
--- a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
+++ b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
@@ -22,6 +22,7 @@ properties:
- qcom,lpass-cpu
- qcom,apq8016-lpass-cpu
- qcom,sc7180-lpass-cpu
+ - qcom,sc7180-lpass-hdmi

Why do we need a new compatible per interface, IMO, you should just use the existing compatible.
Or please explain the reasons why we need this?

reg:
maxItems: 1
@@ -60,10 +61,12 @@ properties:
const: 0
patternProperties:
- "(^mi2s-[0-9a-f]$|mi2s)":
+ "^dai@[0-9a-f]$":
type: object
- description: Required properties for each DAI
-
+ description: |
+ LPASS CPU dai node for each I2S device. Bindings of each node
+ depends on the specific driver providing the functionality and
+ properties.
properties:
reg:
maxItems: 1
@@ -145,6 +148,22 @@ allOf:
- iommus
- power-domains
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: qcom,sc7180-lpass-hdmi
+ then:
+ properties:
+ clock-names:
+ items:
+ - const: pcnoc-sway-clk
+ - const: audio-core
+ - const: pcnoc-mport-clk
+ required:
+ - iommus
+ - power-domains
+
examples:
- |
#include <dt-bindings/sound/sc7180-lpass.h>
@@ -178,12 +197,36 @@ examples:
#address-cells = <1>;
#size-cells = <0>;
/* Optional to set different MI2S SD lines */
- mi2s-primary@0 {
+ dai@mi2s-primary {
reg = <MI2S_PRIMARY>;
qcom,playback-sd-lines = <1>;
qcom,capture-sd-lines = <0>;
};
};
+
+ lpassh@62d87000 {
+ compatible = "qcom,sc7180-lpass-hdmi";
+
+ reg = <0 0x62d87000 0 0x68000>;
+
+ iommus = <&apps_smmu 0x1032 0>;
+
+ power-domains = <&lpass_hm 0>;
+
+ clocks = <&gcc 131>,
+ <&lpasscc 6>,
+ <&lpasscc 10>;
+
+ clock-names = "pcnoc-sway-clk", "audio-core",
+ "pcnoc-mport-clk";
+
+ #sound-dai-cells = <1>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ interrupts = <0 268 1>;
+ };
};
...