xref: /freebsd/sys/contrib/device-tree/Bindings/sound/cs43130.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel VadotCS43130 DAC
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotRequired properties:
4*c66ec88fSEmmanuel Vadot
5*c66ec88fSEmmanuel Vadot  - compatible : "cirrus,cs43130", "cirrus,cs4399", "cirrus,cs43131",
6*c66ec88fSEmmanuel Vadot                 "cirrus,cs43198"
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadot  - reg : the I2C address of the device for I2C
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel Vadot  - VA-supply, VP-supply, VL-supply, VCP-supply, VD-supply:
11*c66ec88fSEmmanuel Vadot	power supplies for the device, as covered in
12*c66ec88fSEmmanuel Vadot	Documentation/devicetree/bindings/regulator/regulator.txt.
13*c66ec88fSEmmanuel Vadot
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel VadotOptional properties:
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadot  - reset-gpios : Active low GPIO used to reset the device
18*c66ec88fSEmmanuel Vadot
19*c66ec88fSEmmanuel Vadot  - cirrus,xtal-ibias:
20*c66ec88fSEmmanuel Vadot   When external MCLK is generated by external crystal
21*c66ec88fSEmmanuel Vadot   oscillator, CS43130 can be used to provide bias current
22*c66ec88fSEmmanuel Vadot   for external crystal.  Amount of bias current sent is
23*c66ec88fSEmmanuel Vadot   set as:
24*c66ec88fSEmmanuel Vadot   1 = 7.5uA
25*c66ec88fSEmmanuel Vadot   2 = 12.5uA
26*c66ec88fSEmmanuel Vadot   3 = 15uA
27*c66ec88fSEmmanuel Vadot
28*c66ec88fSEmmanuel Vadot  - cirrus,dc-measure:
29*c66ec88fSEmmanuel Vadot   Boolean, define to enable headphone DC impedance measurement.
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel Vadot  - cirrus,ac-measure:
32*c66ec88fSEmmanuel Vadot   Boolean, define to enable headphone AC impedance measurement.
33*c66ec88fSEmmanuel Vadot   DC impedance must also be enabled for AC impedance measurement.
34*c66ec88fSEmmanuel Vadot
35*c66ec88fSEmmanuel Vadot  - cirrus,dc-threshold:
36*c66ec88fSEmmanuel Vadot   Define 2 DC impedance thresholds in ohms for HP output control.
37*c66ec88fSEmmanuel Vadot   Default values are 50 and 120 Ohms.
38*c66ec88fSEmmanuel Vadot
39*c66ec88fSEmmanuel Vadot  - cirrus,ac-freq:
40*c66ec88fSEmmanuel Vadot   Define the frequencies at which to measure HP AC impedance.
41*c66ec88fSEmmanuel Vadot   Only used if "cirrus,dc-measure" is defined.
42*c66ec88fSEmmanuel Vadot   Exactly 10 frequencies must be defined.
43*c66ec88fSEmmanuel Vadot   If this properties is undefined, by default,
44*c66ec88fSEmmanuel Vadot   following frequencies are used:
45*c66ec88fSEmmanuel Vadot   <24 43 93 200 431 928 2000 4309 9283 20000>
46*c66ec88fSEmmanuel Vadot   The above frequencies are logarithmically equally spaced.
47*c66ec88fSEmmanuel Vadot   Log base is 10.
48*c66ec88fSEmmanuel Vadot
49*c66ec88fSEmmanuel VadotExample:
50*c66ec88fSEmmanuel Vadot
51*c66ec88fSEmmanuel Vadotcs43130: audio-codec@30 {
52*c66ec88fSEmmanuel Vadot   compatible = "cirrus,cs43130";
53*c66ec88fSEmmanuel Vadot   reg = <0x30>;
54*c66ec88fSEmmanuel Vadot   reset-gpios = <&axi_gpio 54 0>;
55*c66ec88fSEmmanuel Vadot   VA-supply = <&dummy_vreg>;
56*c66ec88fSEmmanuel Vadot   VP-supply = <&dummy_vreg>;
57*c66ec88fSEmmanuel Vadot   VL-supply = <&dummy_vreg>;
58*c66ec88fSEmmanuel Vadot   VCP-supply = <&dummy_vreg>;
59*c66ec88fSEmmanuel Vadot   VD-supply = <&dummy_vreg>;
60*c66ec88fSEmmanuel Vadot   cirrus,xtal-ibias = <2>;
61*c66ec88fSEmmanuel Vadot   interrupt-parent = <&gpio0>;
62*c66ec88fSEmmanuel Vadot   interrupts = <55 8>;
63*c66ec88fSEmmanuel Vadot   cirrus,dc-measure;
64*c66ec88fSEmmanuel Vadot   cirrus,ac-measure;
65*c66ec88fSEmmanuel Vadot   cirrus,dc-threshold = /bits/ 16 <20 100>;
66*c66ec88fSEmmanuel Vadot   cirrus,ac-freq = /bits/ 16 <24 43 93 200 431 928 2000 4309 9283 20000>;
67*c66ec88fSEmmanuel Vadot};
68