Merge tag 'pci-v6.4-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/pci/pci
[linux-block.git] / Documentation / devicetree / bindings / sound / qcom,lpass-tx-macro.yaml
1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2 %YAML 1.2
3 ---
4 $id: http://devicetree.org/schemas/sound/qcom,lpass-tx-macro.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
6
7 title: LPASS(Low Power Audio Subsystem) TX Macro audio codec
8
9 maintainers:
10   - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
11
12 allOf:
13   - $ref: dai-common.yaml#
14
15 properties:
16   compatible:
17     enum:
18       - qcom,sc7280-lpass-tx-macro
19       - qcom,sm8250-lpass-tx-macro
20       - qcom,sm8450-lpass-tx-macro
21       - qcom,sc8280xp-lpass-tx-macro
22
23   reg:
24     maxItems: 1
25
26   "#sound-dai-cells":
27     const: 1
28
29   '#clock-cells':
30     const: 0
31
32   clocks:
33     oneOf:
34       - maxItems: 3
35       - maxItems: 5
36
37   clock-names:
38     oneOf:
39       - items:   # for ADSP based platforms
40           - const: mclk
41           - const: npl
42           - const: macro
43           - const: dcodec
44           - const: fsgen
45       - items:   # for ADSP bypass based platforms
46           - const: mclk
47           - const: npl
48           - const: fsgen
49
50   clock-output-names:
51     maxItems: 1
52
53   power-domains:
54     maxItems: 2
55
56   power-domain-names:
57     items:
58       - const: macro
59       - const: dcodec
60
61   qcom,dmic-sample-rate:
62     description: dmic sample rate
63     $ref: /schemas/types.yaml#/definitions/uint32
64
65 required:
66   - compatible
67   - reg
68   - "#sound-dai-cells"
69
70 unevaluatedProperties: false
71
72 examples:
73   - |
74     #include <dt-bindings/sound/qcom,q6afe.h>
75     codec@3220000 {
76       compatible = "qcom,sm8250-lpass-tx-macro";
77       reg = <0x3220000 0x1000>;
78       #sound-dai-cells = <1>;
79       #clock-cells = <0>;
80       clocks = <&aoncc 0>,
81                <&aoncc 1>,
82                <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
83                <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
84                <&vamacro>;
85       clock-names = "mclk", "npl", "macro", "dcodec", "fsgen";
86       clock-output-names = "mclk";
87       qcom,dmic-sample-rate = <600000>;
88     };