aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/sound/qcom,pm4125-codec.yaml
blob: 6e2f103be1d32479ebe3420e06d1ebedaf3bc379 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/sound/qcom,pm4125-codec.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Qualcomm PM4125 Audio Codec

maintainers:
  - Alexey Klimov <alexey.klimov@linaro.org>

description:
  The audio codec IC found on Qualcomm PM4125/PM2250 PMIC.
  It has RX and TX Soundwire slave devices.

allOf:
  - $ref: dai-common.yaml#

properties:
  compatible:
    const: qcom,pm4125-codec

  reg:
    description:
      Specifies the SPMI base address for the audio codec peripherals. The
      address space contains reset register needed to power-on the codec.
    maxItems: 1

  reg-names:
    maxItems: 1

  vdd-io-supply:
    description: A reference to the 1.8V I/O supply

  vdd-cp-supply:
    description: A reference to the charge pump I/O supply

  vdd-mic-bias-supply:
    description: A reference to the 3.3V mic bias supply

  vdd-pa-vpos-supply:
    description: A reference to the PA VPOS supply

  qcom,tx-device:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description: A reference to Soundwire tx device phandle

  qcom,rx-device:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    description: A reference to Soundwire rx device phandle

  qcom,micbias1-microvolt:
    description: micbias1 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,micbias2-microvolt:
    description: micbias2 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,micbias3-microvolt:
    description: micbias3 voltage
    minimum: 1800000
    maximum: 2850000

  qcom,mbhc-buttons-vthreshold-microvolt:
    description:
      Array of 8 Voltage threshold values corresponding to headset
      button0 - button7
    minItems: 8
    maxItems: 8

  '#sound-dai-cells':
    const: 1

required:
  - compatible
  - reg
  - vdd-io-supply
  - vdd-cp-supply
  - vdd-mic-bias-supply
  - vdd-pa-vpos-supply
  - qcom,tx-device
  - qcom,rx-device
  - qcom,micbias1-microvolt
  - qcom,micbias2-microvolt
  - qcom,micbias3-microvolt
  - '#sound-dai-cells'

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/spmi/spmi.h>

    spmi {
        #address-cells = <2>;
        #size-cells = <0>;

        pmic {
            #address-cells = <1>;
            #size-cells = <0>;

            audio-codec@f000 {
                compatible = "qcom,pm4125-codec";
                reg = <0xf000>;
                vdd-io-supply = <&pm4125_l15>;
                vdd-cp-supply = <&pm4125_s4>;
                vdd-pa-vpos-supply = <&pm4125_s4>;
                vdd-mic-bias-supply = <&pm4125_l22>;
                qcom,micbias1-microvolt = <1800000>;
                qcom,micbias2-microvolt = <1800000>;
                qcom,micbias3-microvolt = <1800000>;
                qcom,rx-device = <&pm4125_rx>;
                qcom,tx-device = <&pm4125_tx>;
                #sound-dai-cells = <1>;
            };
        };
    };

    /* ... */

    soundwire@a610000 {
        reg = <0x0a610000 0x2000>;
        #address-cells = <2>;
        #size-cells = <0>;
        pm4125_rx: audio-codec@0,4 {
            compatible = "sdw20217010c00";
            reg = <0 4>;
            qcom,rx-port-mapping = <1 3>;
        };
    };
...