xref: /linux/Documentation/devicetree/bindings/sound/qcom,pm4125-codec.yaml (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
1*88d0d171SAlexey Klimov# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*88d0d171SAlexey Klimov%YAML 1.2
3*88d0d171SAlexey Klimov---
4*88d0d171SAlexey Klimov$id: http://devicetree.org/schemas/sound/qcom,pm4125-codec.yaml#
5*88d0d171SAlexey Klimov$schema: http://devicetree.org/meta-schemas/core.yaml#
6*88d0d171SAlexey Klimov
7*88d0d171SAlexey Klimovtitle: Qualcomm PM4125 Audio Codec
8*88d0d171SAlexey Klimov
9*88d0d171SAlexey Klimovmaintainers:
10*88d0d171SAlexey Klimov  - Alexey Klimov <alexey.klimov@linaro.org>
11*88d0d171SAlexey Klimov
12*88d0d171SAlexey Klimovdescription:
13*88d0d171SAlexey Klimov  The audio codec IC found on Qualcomm PM4125/PM2250 PMIC.
14*88d0d171SAlexey Klimov  It has RX and TX Soundwire slave devices.
15*88d0d171SAlexey Klimov
16*88d0d171SAlexey KlimovallOf:
17*88d0d171SAlexey Klimov  - $ref: dai-common.yaml#
18*88d0d171SAlexey Klimov
19*88d0d171SAlexey Klimovproperties:
20*88d0d171SAlexey Klimov  compatible:
21*88d0d171SAlexey Klimov    const: qcom,pm4125-codec
22*88d0d171SAlexey Klimov
23*88d0d171SAlexey Klimov  reg:
24*88d0d171SAlexey Klimov    description:
25*88d0d171SAlexey Klimov      Specifies the SPMI base address for the audio codec peripherals. The
26*88d0d171SAlexey Klimov      address space contains reset register needed to power-on the codec.
27*88d0d171SAlexey Klimov    maxItems: 1
28*88d0d171SAlexey Klimov
29*88d0d171SAlexey Klimov  reg-names:
30*88d0d171SAlexey Klimov    maxItems: 1
31*88d0d171SAlexey Klimov
32*88d0d171SAlexey Klimov  vdd-io-supply:
33*88d0d171SAlexey Klimov    description: A reference to the 1.8V I/O supply
34*88d0d171SAlexey Klimov
35*88d0d171SAlexey Klimov  vdd-cp-supply:
36*88d0d171SAlexey Klimov    description: A reference to the charge pump I/O supply
37*88d0d171SAlexey Klimov
38*88d0d171SAlexey Klimov  vdd-mic-bias-supply:
39*88d0d171SAlexey Klimov    description: A reference to the 3.3V mic bias supply
40*88d0d171SAlexey Klimov
41*88d0d171SAlexey Klimov  vdd-pa-vpos-supply:
42*88d0d171SAlexey Klimov    description: A reference to the PA VPOS supply
43*88d0d171SAlexey Klimov
44*88d0d171SAlexey Klimov  qcom,tx-device:
45*88d0d171SAlexey Klimov    $ref: /schemas/types.yaml#/definitions/phandle-array
46*88d0d171SAlexey Klimov    description: A reference to Soundwire tx device phandle
47*88d0d171SAlexey Klimov
48*88d0d171SAlexey Klimov  qcom,rx-device:
49*88d0d171SAlexey Klimov    $ref: /schemas/types.yaml#/definitions/phandle-array
50*88d0d171SAlexey Klimov    description: A reference to Soundwire rx device phandle
51*88d0d171SAlexey Klimov
52*88d0d171SAlexey Klimov  qcom,micbias1-microvolt:
53*88d0d171SAlexey Klimov    description: micbias1 voltage
54*88d0d171SAlexey Klimov    minimum: 1800000
55*88d0d171SAlexey Klimov    maximum: 2850000
56*88d0d171SAlexey Klimov
57*88d0d171SAlexey Klimov  qcom,micbias2-microvolt:
58*88d0d171SAlexey Klimov    description: micbias2 voltage
59*88d0d171SAlexey Klimov    minimum: 1800000
60*88d0d171SAlexey Klimov    maximum: 2850000
61*88d0d171SAlexey Klimov
62*88d0d171SAlexey Klimov  qcom,micbias3-microvolt:
63*88d0d171SAlexey Klimov    description: micbias3 voltage
64*88d0d171SAlexey Klimov    minimum: 1800000
65*88d0d171SAlexey Klimov    maximum: 2850000
66*88d0d171SAlexey Klimov
67*88d0d171SAlexey Klimov  qcom,mbhc-buttons-vthreshold-microvolt:
68*88d0d171SAlexey Klimov    description:
69*88d0d171SAlexey Klimov      Array of 8 Voltage threshold values corresponding to headset
70*88d0d171SAlexey Klimov      button0 - button7
71*88d0d171SAlexey Klimov    minItems: 8
72*88d0d171SAlexey Klimov    maxItems: 8
73*88d0d171SAlexey Klimov
74*88d0d171SAlexey Klimov  '#sound-dai-cells':
75*88d0d171SAlexey Klimov    const: 1
76*88d0d171SAlexey Klimov
77*88d0d171SAlexey Klimovrequired:
78*88d0d171SAlexey Klimov  - compatible
79*88d0d171SAlexey Klimov  - reg
80*88d0d171SAlexey Klimov  - vdd-io-supply
81*88d0d171SAlexey Klimov  - vdd-cp-supply
82*88d0d171SAlexey Klimov  - vdd-mic-bias-supply
83*88d0d171SAlexey Klimov  - vdd-pa-vpos-supply
84*88d0d171SAlexey Klimov  - qcom,tx-device
85*88d0d171SAlexey Klimov  - qcom,rx-device
86*88d0d171SAlexey Klimov  - qcom,micbias1-microvolt
87*88d0d171SAlexey Klimov  - qcom,micbias2-microvolt
88*88d0d171SAlexey Klimov  - qcom,micbias3-microvolt
89*88d0d171SAlexey Klimov  - '#sound-dai-cells'
90*88d0d171SAlexey Klimov
91*88d0d171SAlexey KlimovunevaluatedProperties: false
92*88d0d171SAlexey Klimov
93*88d0d171SAlexey Klimovexamples:
94*88d0d171SAlexey Klimov  - |
95*88d0d171SAlexey Klimov    #include <dt-bindings/spmi/spmi.h>
96*88d0d171SAlexey Klimov
97*88d0d171SAlexey Klimov    spmi {
98*88d0d171SAlexey Klimov        #address-cells = <2>;
99*88d0d171SAlexey Klimov        #size-cells = <0>;
100*88d0d171SAlexey Klimov
101*88d0d171SAlexey Klimov        pmic {
102*88d0d171SAlexey Klimov            #address-cells = <1>;
103*88d0d171SAlexey Klimov            #size-cells = <0>;
104*88d0d171SAlexey Klimov
105*88d0d171SAlexey Klimov            audio-codec@f000 {
106*88d0d171SAlexey Klimov                compatible = "qcom,pm4125-codec";
107*88d0d171SAlexey Klimov                reg = <0xf000>;
108*88d0d171SAlexey Klimov                vdd-io-supply = <&pm4125_l15>;
109*88d0d171SAlexey Klimov                vdd-cp-supply = <&pm4125_s4>;
110*88d0d171SAlexey Klimov                vdd-pa-vpos-supply = <&pm4125_s4>;
111*88d0d171SAlexey Klimov                vdd-mic-bias-supply = <&pm4125_l22>;
112*88d0d171SAlexey Klimov                qcom,micbias1-microvolt = <1800000>;
113*88d0d171SAlexey Klimov                qcom,micbias2-microvolt = <1800000>;
114*88d0d171SAlexey Klimov                qcom,micbias3-microvolt = <1800000>;
115*88d0d171SAlexey Klimov                qcom,rx-device = <&pm4125_rx>;
116*88d0d171SAlexey Klimov                qcom,tx-device = <&pm4125_tx>;
117*88d0d171SAlexey Klimov                #sound-dai-cells = <1>;
118*88d0d171SAlexey Klimov            };
119*88d0d171SAlexey Klimov        };
120*88d0d171SAlexey Klimov    };
121*88d0d171SAlexey Klimov
122*88d0d171SAlexey Klimov    /* ... */
123*88d0d171SAlexey Klimov
124*88d0d171SAlexey Klimov    soundwire@a610000 {
125*88d0d171SAlexey Klimov        reg = <0x0a610000 0x2000>;
126*88d0d171SAlexey Klimov        #address-cells = <2>;
127*88d0d171SAlexey Klimov        #size-cells = <0>;
128*88d0d171SAlexey Klimov        pm4125_rx: audio-codec@0,4 {
129*88d0d171SAlexey Klimov            compatible = "sdw20217010c00";
130*88d0d171SAlexey Klimov            reg = <0 4>;
131*88d0d171SAlexey Klimov            qcom,rx-port-mapping = <1 3>;
132*88d0d171SAlexey Klimov        };
133*88d0d171SAlexey Klimov    };
134*88d0d171SAlexey Klimov...
135