Commit ffb2bbdf authored by Krzysztof Kozlowski's avatar Krzysztof Kozlowski Committed by Mark Brown

ASoC: dt-bindings: qcom,lpass-cpu: Correct and constrain clocks, interrupts, reg

The binding allowed multiple variations and number of
reg/interrupts/clocks properties for SC7180 and SC7280.  Maybe this was
done for different use-cases of LPASS CPU audio node, but DTS is
supposed to be a complete picture of the hardware.  The upstreamed
SC7180 and SC7280 DTSes contain the widest set of these
reg/interrupts/clocks, sometimes being even sum of these different
variations.

Correct and narrow the reg, interrupts and clocks to match existing DTS:

  sc7280-herobrine-evoker-lte.dtb: audio@3987000: clock-names: 'oneOf' conditional failed, one must be fixed:
    ['aon_cc_audio_hm_h', 'audio_cc_ext_mclk0', 'core_cc_sysnoc_mport_core', 'core_cc_ext_if0_ibit', 'core_cc_ext_if1_ibit',
     'audio_cc_codec_mem', 'audio_cc_codec_mem0', 'audio_cc_codec_mem1', 'audio_cc_codec_mem2', 'aon_cc_va_mem0'] is too long
    'core_cc_sysnoc_mport_core' was expected
    'audio_cc_codec_mem' was expected
    'audio_cc_codec_mem0' was expected
    'audio_cc_codec_mem1' was expected
    'audio_cc_codec_mem2' was expected
    'aon_cc_va_mem0' was expected
Signed-off-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Link: https://lore.kernel.org/r/20221227163135.102559-3-krzysztof.kozlowski@linaro.orgSigned-off-by: default avatarMark Brown <broonie@kernel.org>
parent 5f9cd0f7
...@@ -35,7 +35,7 @@ properties: ...@@ -35,7 +35,7 @@ properties:
clocks: clocks:
minItems: 3 minItems: 3
maxItems: 7 maxItems: 10
clock-names: clock-names:
minItems: 1 minItems: 1
...@@ -124,6 +124,8 @@ allOf: ...@@ -124,6 +124,8 @@ allOf:
then: then:
properties: properties:
clocks:
maxItems: 3
clock-names: clock-names:
items: items:
- const: ahbix-clk - const: ahbix-clk
...@@ -138,6 +140,9 @@ allOf: ...@@ -138,6 +140,9 @@ allOf:
then: then:
properties: properties:
clocks:
minItems: 7
maxItems: 7
clock-names: clock-names:
items: items:
- const: ahbix-clk - const: ahbix-clk
...@@ -156,33 +161,31 @@ allOf: ...@@ -156,33 +161,31 @@ allOf:
then: then:
properties: properties:
clocks:
minItems: 6
maxItems: 6
clock-names: clock-names:
oneOf: items:
- items: #for I2S - const: pcnoc-sway-clk
- const: pcnoc-sway-clk - const: audio-core
- const: audio-core - const: mclk0
- const: mclk0 - const: pcnoc-mport-clk
- const: pcnoc-mport-clk - const: mi2s-bit-clk0
- const: mi2s-bit-clk0 - const: mi2s-bit-clk1
- const: mi2s-bit-clk1 reg:
- items: #for HDMI minItems: 2
- const: pcnoc-sway-clk maxItems: 2
- const: audio-core
- const: pcnoc-mport-clk
reg-names: reg-names:
anyOf: items:
- items: #for I2S - const: lpass-hdmiif
- const: lpass-lpaif - const: lpass-lpaif
- items: #for I2S and HDMI interrupts:
- const: lpass-hdmiif minItems: 2
- const: lpass-lpaif maxItems: 2
interrupt-names: interrupt-names:
anyOf: items:
- items: #for I2S - const: lpass-irq-lpaif
- const: lpass-irq-lpaif - const: lpass-irq-hdmi
- items: #for I2S and HDMI
- const: lpass-irq-lpaif
- const: lpass-irq-hdmi
required: required:
- iommus - iommus
- power-domains - power-domains
...@@ -195,54 +198,44 @@ allOf: ...@@ -195,54 +198,44 @@ allOf:
then: then:
properties: properties:
clocks:
minItems: 10
maxItems: 10
clock-names: clock-names:
oneOf: items:
- items: #for I2S - const: aon_cc_audio_hm_h
- const: aon_cc_audio_hm_h - const: audio_cc_ext_mclk0
- const: audio_cc_ext_mclk0 - const: core_cc_sysnoc_mport_core
- const: core_cc_sysnoc_mport_core - const: core_cc_ext_if0_ibit
- const: core_cc_ext_if0_ibit - const: core_cc_ext_if1_ibit
- const: core_cc_ext_if1_ibit - const: audio_cc_codec_mem
- items: #for Soundwire - const: audio_cc_codec_mem0
- const: aon_cc_audio_hm_h - const: audio_cc_codec_mem1
- const: audio_cc_codec_mem - const: audio_cc_codec_mem2
- const: audio_cc_codec_mem0 - const: aon_cc_va_mem0
- const: audio_cc_codec_mem1 reg:
- const: audio_cc_codec_mem2 minItems: 6
- const: aon_cc_va_mem0 maxItems: 6
- items: #for HDMI
- const: core_cc_sysnoc_mport_core
reg-names: reg-names:
anyOf: items:
- items: #for I2S - const: lpass-hdmiif
- const: lpass-lpaif - const: lpass-lpaif
- items: #for I2S and HDMI - const: lpass-rxtx-cdc-dma-lpm
- const: lpass-hdmiif - const: lpass-rxtx-lpaif
- const: lpass-lpaif - const: lpass-va-lpaif
- items: #for I2S, soundwire and HDMI - const: lpass-va-cdc-dma-lpm
- const: lpass-hdmiif interrupts:
- const: lpass-lpaif minItems: 4
- const: lpass-rxtx-cdc-dma-lpm maxItems: 4
- const: lpass-rxtx-lpaif
- const: lpass-va-lpaif
- const: lpass-va-cdc-dma-lpm
interrupt-names: interrupt-names:
anyOf: items:
- items: #for I2S - const: lpass-irq-lpaif
- const: lpass-irq-lpaif - const: lpass-irq-hdmi
- items: #for I2S and HDMI - const: lpass-irq-vaif
- const: lpass-irq-lpaif - const: lpass-irq-rxtxif
- 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
power-domain-names: power-domain-names:
allOf: items:
- items: - const: lcx
- const: lcx
required: required:
- iommus - iommus
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment