LPASS VA Macro now has soundwire master to deal with access to analog mic in low power island use cases. This also means that VA macro now needs to get hold of the npl clock too. Add clock bindings required for this.
As part of adding this bindings, also update bindings to be able to specific and associate the clock names specific to the SoC.
Signed-off-by: Srinivas Kandagatla srinivas.kandagatla@linaro.org --- .../bindings/sound/qcom,lpass-va-macro.yaml | 72 ++++++++++++++++--- 1 file changed, 64 insertions(+), 8 deletions(-)
diff --git a/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml b/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml index c36caf90b837..848e34111df1 100644 --- a/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml +++ b/Documentation/devicetree/bindings/sound/qcom,lpass-va-macro.yaml @@ -27,16 +27,13 @@ properties: const: 0
clocks: - maxItems: 3 + minItems: 1 + maxItems: 4 +
clock-names: - oneOf: - - items: #for ADSP based platforms - - const: mclk - - const: core - - const: dcodec - - items: #for ADSP bypass based platforms - - const: mclk + minItems: 1 + maxItems: 4
clock-output-names: maxItems: 1 @@ -61,6 +58,65 @@ required: - reg - "#sound-dai-cells"
+allOf: + - if: + properties: + compatible: + contains: + const: qcom,sc7280-lpass-va-macro + then: + properties: + clocks: + minItems: 1 + maxItems: 1 + clock-names: + items: + - const: mclk + required: + - clock-names + - clocks + + - if: + properties: + compatible: + contains: + const: qcom,sm8250-lpass-va-macro + then: + properties: + clocks: + minItems: 3 + maxItems: 3 + clock-names: + items: + - const: mclk + - const: core + - const: dcodec + required: + - clock-names + - clocks + + - if: + properties: + compatible: + contains: + enum: + - qcom,sc8280xp-lpass-va-macro + - qcom,sm8450-lpass-va-macro + then: + properties: + clocks: + minItems: 4 + maxItems: 4 + clock-names: + items: + - const: mclk + - const: npl + - const: core + - const: dcodec + required: + - clock-names + - clocks + additionalProperties: false
examples: