On Fri, Nov 26, 2021 at 05:34:40PM +0530, Srinivasa Rao Mandadapu wrote:
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: Srinivasa Rao Mandadapu srivasam@codeaurora.org Co-developed-by: Venkata Prasad Potturu potturu@codeaurora.org Signed-off-by: Venkata Prasad Potturu potturu@codeaurora.org
.../devicetree/bindings/sound/qcom,lpass-cpu.yaml | 69 +++++++++++++++++++--- 1 file changed, 61 insertions(+), 8 deletions(-)
diff --git a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml index 1e23c0e..0f5a57c 100644 --- a/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml +++ b/Documentation/devicetree/bindings/sound/qcom,lpass-cpu.yaml @@ -22,35 +22,36 @@ properties: - qcom,lpass-cpu - qcom,apq8016-lpass-cpu - qcom,sc7180-lpass-cpu
- qcom,sc7280-lpass-cpu
reg:
- maxItems: 2
maxItems: 5 description: LPAIF core registers
reg-names:
- maxItems: 2
maxItems: 5
clocks: minItems: 3
- maxItems: 6
maxItems: 7
clock-names: minItems: 3
- maxItems: 6
maxItems: 7
interrupts:
- maxItems: 2
maxItems: 4 description: LPAIF DMA buffer interrupt
interrupt-names:
- maxItems: 2
maxItems: 4
qcom,adsp: $ref: /schemas/types.yaml#/definitions/phandle description: Phandle for the audio DSP node
iommus:
- maxItems: 2
maxItems: 3 description: Phandle to apps_smmu node with sid mask
power-domains:
@@ -69,7 +70,7 @@ patternProperties: "^dai-link@[0-9a-f]$": type: object description: |
LPASS CPU dai node for each I2S device. Bindings of each node
properties:LPASS CPU dai node for each I2S device or Soundwire device. Bindings of each node depends on the specific driver providing the functionality and properties.
@@ -174,6 +175,58 @@ allOf: - iommus - power-domains
- if:
properties:
compatible:
contains:
const: qcom,sc7280-lpass-cpu
- then:
properties:
clock-names:
oneOf:
- items: #for I2S
- const: lpass_aon_cc_audio_hm_h_clk
- const: lpass_core_cc_sysnoc_mport_core_clk
- const: lpass_core_cc_ext_if1_ibit_clk
- items: #for Soundwire
- const: lpass_aon_cc_audio_hm_h_clk
- const: lpass_audio_cc_codec_mem0_clk
- const: lpass_audio_cc_codec_mem1_clk
- const: lpass_audio_cc_codec_mem2_clk
- items: #for HDMI
- const: lpass_aon_cc_audio_hm_h_clk
'lpass_' and '_clk' are redundant.
reg-names:
anyOf:
- items: #for I2S
- const: lpass-lpaif
- items: #for I2S and HDMI
- const: lpass-hdmiif
- const: lpass-lpaif
Doesn't this apply to other SoCs?
- items: #for I2S, soundwire and HDMI
- const: lpass-cdc-lpm
- const: lpass-rxtx-lpaif
- const: lpass-va-lpaif
- const: lpass-hdmiif
- const: lpass-lpaif
'lpass-' is redundant too, but consistency across SoCs is better.
hdmiif and lpaif should be first. (Add new resources on the end.)
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-vaif
- const: lpass-irq-rxtxif
- const: lpass-irq-hdmi
Again, add new entries to the end.
required:
- iommus
- power-domains
examples:
- | #include <dt-bindings/sound/sc7180-lpass.h>
-- Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc., is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.