Unverified Commit f3fc4fbf authored by Srinivasa Rao Mandadapu's avatar Srinivasa Rao Mandadapu Committed by Mark Brown
Browse files

ASoC: dt-bindings: Add SC7280 lpass cpu bindings



Add bindings for sc7280 lpass cpu driver which supports
audio over i2s based speaker, soundwire based headset, msm dmics
and HDMI Port.

Signed-off-by: default avatarSrinivasa Rao Mandadapu <quic_srivasam@quicinc.com>
Co-developed-by: default avatarVenkata Prasad Potturu <quic_potturu@quicinc.com>
Signed-off-by: default avatarVenkata Prasad Potturu <quic_potturu@quicinc.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/1645716828-15305-9-git-send-email-quic_srivasam@quicinc.com


Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent b81af585
Loading
Loading
Loading
Loading
+67 −8
Original line number Original line Diff line number Diff line
@@ -22,35 +22,41 @@ properties:
      - qcom,lpass-cpu
      - qcom,lpass-cpu
      - qcom,apq8016-lpass-cpu
      - qcom,apq8016-lpass-cpu
      - qcom,sc7180-lpass-cpu
      - qcom,sc7180-lpass-cpu
      - qcom,sc7280-lpass-cpu


  reg:
  reg:
    maxItems: 2
    minItems: 2
    maxItems: 6
    description: LPAIF core registers
    description: LPAIF core registers


  reg-names:
  reg-names:
    maxItems: 2
    minItems: 2
    maxItems: 6


  clocks:
  clocks:
    minItems: 3
    minItems: 3
    maxItems: 6
    maxItems: 7


  clock-names:
  clock-names:
    minItems: 3
    minItems: 3
    maxItems: 6
    maxItems: 7


  interrupts:
  interrupts:
    maxItems: 2
    minItems: 2
    maxItems: 4
    description: LPAIF DMA buffer interrupt
    description: LPAIF DMA buffer interrupt


  interrupt-names:
  interrupt-names:
    maxItems: 2
    minItems: 2
    maxItems: 4


  qcom,adsp:
  qcom,adsp:
    $ref: /schemas/types.yaml#/definitions/phandle
    $ref: /schemas/types.yaml#/definitions/phandle
    description: Phandle for the audio DSP node
    description: Phandle for the audio DSP node


  iommus:
  iommus:
    maxItems: 2
    minItems: 2
    maxItems: 3
    description: Phandle to apps_smmu node with sid mask
    description: Phandle to apps_smmu node with sid mask


  power-domains:
  power-domains:
@@ -69,7 +75,7 @@ patternProperties:
  "^dai-link@[0-9a-f]$":
  "^dai-link@[0-9a-f]$":
    type: object
    type: object
    description: |
    description: |
      LPASS CPU dai node for each I2S device. Bindings of each node
      LPASS CPU dai node for each I2S device or Soundwire device. Bindings of each node
      depends on the specific driver providing the functionality and
      depends on the specific driver providing the functionality and
      properties.
      properties.
    properties:
    properties:
@@ -174,6 +180,59 @@ allOf:
        - iommus
        - iommus
        - power-domains
        - power-domains


  - if:
      properties:
        compatible:
          contains:
            const: qcom,sc7280-lpass-cpu

    then:
      properties:
        clock-names:
          oneOf:
            - items:   #for I2S
                - const: aon_cc_audio_hm_h
                - const: core_cc_sysnoc_mport_core
                - const: core_cc_ext_if1_ibit
            - items:   #for Soundwire
                - const: aon_cc_audio_hm_h
                - const: audio_cc_codec_mem0
                - const: audio_cc_codec_mem1
                - const: audio_cc_codec_mem2
            - items:   #for HDMI
                - const: aon_cc_audio_hm_h

        reg-names:
          anyOf:
            - items:   #for I2S
                - const: lpass-lpaif
            - items:   #for I2S and HDMI
                - const: lpass-hdmiif
                - const: lpass-lpaif
            - items:   #for I2S, soundwire and HDMI
                - const: lpass-hdmiif
                - const: lpass-lpaif
                - const: lpass-rxtx-cdc-dma-lpm
                - const: lpass-rxtx-lpaif
                - const: lpass-va-lpaif
                - const: lpass-va-cdc-dma-lpm
        interrupt-names:
          anyOf:
            - items:   #for I2S
                - const: lpass-irq-lpaif
            - items:   #for I2S and HDMI
                - const: lpass-irq-lpaif
                - const: lpass-irq-hdmi
            - items:   #for I2S, soundwire and HDMI
                - const: lpass-irq-lpaif
                - const: lpass-irq-hdmi
                - const: lpass-irq-vaif
                - const: lpass-irq-rxtxif

      required:
        - iommus
        - power-domains

examples:
examples:
  - |
  - |
    #include <dt-bindings/sound/sc7180-lpass.h>
    #include <dt-bindings/sound/sc7180-lpass.h>