# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) %YAML 1.2 --- $id: http://devicetree.org/schemas/sound/qcom,lpass-wsa-macro.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# title: LPASS(Low Power Audio Subsystem) VA Macro audio codec maintainers: - Srinivas Kandagatla properties: compatible: oneOf: - enum: - qcom,sc7280-lpass-wsa-macro - qcom,sm8250-lpass-wsa-macro - qcom,sm8450-lpass-wsa-macro - qcom,sm8550-lpass-wsa-macro - qcom,sc8280xp-lpass-wsa-macro - items: - enum: - qcom,sm8650-lpass-wsa-macro - qcom,x1e80100-lpass-wsa-macro - const: qcom,sm8550-lpass-wsa-macro reg: maxItems: 1 "#sound-dai-cells": const: 1 '#clock-cells': const: 0 clocks: minItems: 4 maxItems: 6 clock-names: minItems: 4 maxItems: 6 clock-output-names: maxItems: 1 qcom,dmic-sample-rate: description: dmic sample rate $ref: /schemas/types.yaml#/definitions/uint32 vdd-micb-supply: description: phandle to voltage regulator of MIC Bias required: - compatible - reg - "#sound-dai-cells" allOf: - $ref: dai-common.yaml# - if: properties: compatible: enum: - qcom,sc7280-lpass-wsa-macro - qcom,sm8450-lpass-wsa-macro - qcom,sc8280xp-lpass-wsa-macro then: properties: clocks: minItems: 5 maxItems: 5 clock-names: items: - const: mclk - const: npl - const: macro - const: dcodec - const: fsgen - if: properties: compatible: enum: - qcom,sm8250-lpass-wsa-macro then: properties: clocks: minItems: 6 clock-names: items: - const: mclk - const: npl - const: macro - const: dcodec - const: va - const: fsgen - if: properties: compatible: contains: enum: - qcom,sm8550-lpass-wsa-macro then: properties: clocks: minItems: 4 maxItems: 4 clock-names: items: - const: mclk - const: macro - const: dcodec - const: fsgen unevaluatedProperties: false examples: - | #include #include codec@3240000 { compatible = "qcom,sm8250-lpass-wsa-macro"; reg = <0x3240000 0x1000>; #sound-dai-cells = <1>; #clock-cells = <0>; clocks = <&audiocc 1>, <&audiocc 0>, <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>, <&aoncc LPASS_CDC_VA_MCLK>, <&vamacro>; clock-names = "mclk", "npl", "macro", "dcodec", "va", "fsgen"; clock-output-names = "mclk"; };