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@xxxxxxxxxxxxxx> > Co-developed-by: Venkata Prasad Potturu <potturu@xxxxxxxxxxxxxx> > Signed-off-by: Venkata Prasad Potturu <potturu@xxxxxxxxxxxxxx> > --- > .../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 > + 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. > 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. > >