summaryrefslogtreecommitdiffstats
path: root/kernel/Documentation/devicetree/bindings/sound/cs42l52.txt
blob: bc03c9312a19462431fa567c148e4af4dcb3759c (plain)
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
CS42L52 audio CODEC

Required properties:

  - compatible : "cirrus,cs42l52"

  - reg : the I2C address of the device for I2C

Optional properties:

  - cirrus,reset-gpio : GPIO controller's phandle and the number
  of the GPIO used to reset the codec.

  - cirrus,chgfreq-divisor : Values used to set the Charge Pump Frequency.
  Allowable values of 0x00 through 0x0F. These are raw values written to the
  register, not the actual frequency. The frequency is determined by the following.
  Frequency = (64xFs)/(N+2)
  N = chgfreq_val
  Fs = Sample Rate (variable)

  - cirrus,mica-differential-cfg : boolean, If present, then the MICA input is configured
  as a differential input. If not present then the MICA input is configured as
  Single-ended input. Single-ended mode allows for MIC1 or MIC2 muxing for input.

  - cirrus,micb-differential-cfg : boolean, If present, then the MICB input is configured
  as a differential input. If not present then the MICB input is configured as
  Single-ended input. Single-ended mode allows for MIC1 or MIC2 muxing for input.

  - cirrus,micbias-lvl: Set the output voltage level on the MICBIAS Pin
  0 = 0.5 x VA
  1 = 0.6 x VA
  2 = 0.7 x VA
  3 = 0.8 x VA
  4 = 0.83 x VA
  5 = 0.91 x VA

Example:

codec: codec@4a {
	compatible = "cirrus,cs42l52";
	reg = <0x4a>;
	reset-gpio = <&gpio 10 0>;
	cirrus,chgfreq-divisor = <0x05>;
	cirrus.mica-differential-cfg;
	cirrus,micbias-lvl = <5>;
};