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

From: Rob Herring
Date: Wed Sep 23 2020 - 16:42:02 EST


On Fri, Sep 18, 2020 at 11:34:41AM +0530, 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 | 74 +++++++++++++++-------
> 1 file changed, 52 insertions(+), 22 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
> index 09c9bd2..f95ef70 100644
> --- a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
> +++ b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml
> @@ -24,9 +24,10 @@ properties:
> - qcom,sc7180-lpass-cpu
>
> reg:
> - maxItems: 1
> + maxItems: 2
> description: LPAIF core registers
> -
> + reg-names:
> + maxItems: 2
> clocks:
> minItems: 3
> maxItems: 6
> @@ -36,15 +37,16 @@ properties:
> maxItems: 6
>
> interrupts:
> - maxItems: 1
> + maxItems: 2
> description: LPAIF DMA buffer interrupt
> -
> + interrupt-names:
> + maxItems: 2
> qcom,adsp:
> $ref: /schemas/types.yaml#/definitions/phandle
> description: Phandle for the audio DSP node
>
> iommus:
> - maxItems: 1
> + maxItems: 2
> description: Phandle to apps_smmu node with sid mask
>
> power-domains:
> @@ -60,10 +62,12 @@ properties:
> const: 0
>
> patternProperties:
> - "(^mi2s-[0-9a-f]$|mi2s)":
> + "^dai-link@[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
> @@ -85,9 +89,11 @@ patternProperties:
> required:
> - compatible
> - reg
> + - reg-names
> - clocks
> - clock-names
> - interrupts
> + - interrupt-names
> - '#sound-dai-cells'
>
> additionalProperties: false
> @@ -134,13 +140,32 @@ allOf:
> then:
> properties:
> clock-names:
> - items:
> - - const: pcnoc-sway-clk
> - - const: audio-core
> - - const: mclk0
> - - const: pcnoc-mport-clk
> - - const: mi2s-bit-clk0
> - - const: mi2s-bit-clk1
> + oneOf:
> + - items: #for I2S
> + - const: pcnoc-sway-clk
> + - const: audio-core
> + - const: mclk0
> + - const: pcnoc-mport-clk
> + - const: mi2s-bit-clk0
> + - const: mi2s-bit-clk1
> + - items: #for HDMI
> + - const: pcnoc-sway-clk
> + - const: audio-core
> + - const: pcnoc-mport-clk
> + reg-names:
> + anyOf:
> + - items: #for I2S and HDMI
> + - const: lpass-hdmiif
> + - const: lpass-lpaif

It would be a bit cleaner if you switch the order. Then you are just
adding on to the end.

Otherwise,

Reviewed-by: Rob Herring <robh@xxxxxxxxxx>

> + - items: #for I2S
> + - const: lpass-lpaif
> + interrupt-names:
> + anyOf:
> + - items: #for I2S and HDMI
> + - const: lpass-irq-lpaif
> + - const: lpass-irq-hdmi
> + - items: #for I2S
> + - const: lpass-irq-lpaif
> required:
> - iommus
> - power-domains
> @@ -152,12 +177,15 @@ examples:
> soc {
> #address-cells = <2>;
> #size-cells = <2>;
> - lpass@62f00000 {
> + lpass@62d80000 {
> compatible = "qcom,sc7180-lpass-cpu";
>
> - reg = <0 0x62f00000 0 0x29000>;
> -
> - iommus = <&apps_smmu 0x1020 0>;
> + reg = <0 0x62d87000 0 0x68000>,
> + <0 0x62f00000 0 0x29000>;
> + reg-names = "lpass-hdmiif",
> + "lpass-lpaif";
> + iommus = <&apps_smmu 0x1020 0>,
> + <&apps_smmu 0x1032 0>;
> power-domains = <&lpass_hm 0>;
>
> clocks = <&gcc 131>,
> @@ -171,14 +199,16 @@ examples:
> "mclk0", "pcnoc-mport-clk",
> "mi2s-bit-clk0", "mi2s-bit-clk1";
>
> - interrupts = <0 160 1>;
> -
> + interrupts = <0 160 1>,
> + <0 268 1>;
> + interrupt-names = "lpass-irq-lpaif",
> + "lpass-irq-hdmi";
> #sound-dai-cells = <1>;
>
> #address-cells = <1>;
> #size-cells = <0>;
> /* Optional to set different MI2S SD lines */
> - mi2s-primary@0 {
> + dai-link@0 {
> reg = <MI2S_PRIMARY>;
> qcom,playback-sd-lines = <1>;
> qcom,capture-sd-lines = <0>;
> --
> Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.,
> is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.
>