xref: /freebsd/sys/contrib/device-tree/Bindings/sound/nau8821.txt (revision e32fecd0c2c3ee37c47ee100f169e7eb0282a873)
1Nuvoton NAU88L21 audio codec
2
3This device supports I2C only.
4
5Required properties:
6  - compatible : Must be "nuvoton,nau8821"
7
8  - reg : the I2C address of the device. This is either 0x1B (CSB=0) or 0x54 (CSB=1).
9
10Optional properties:
11  - nuvoton,jkdet-enable: Enable jack detection via JKDET pin.
12  - nuvoton,jkdet-pull-enable: Enable JKDET pin pull. If set - pin pull enabled,
13      otherwise pin in high impedance state.
14  - nuvoton,jkdet-pull-up: Pull-up JKDET pin. If set then JKDET pin is pull up, otherwise pull down.
15  - nuvoton,jkdet-polarity: JKDET pin polarity. 0 - active high, 1 - active low.
16
17  - nuvoton,vref-impedance: VREF Impedance selection
18      0 - Open
19      1 - 25 kOhm
20      2 - 125 kOhm
21      3 - 2.5 kOhm
22
23  - nuvoton,micbias-voltage: Micbias voltage level.
24      0 - VDDA
25      1 - VDDA
26      2 - VDDA * 1.1
27      3 - VDDA * 1.2
28      4 - VDDA * 1.3
29      5 - VDDA * 1.4
30      6 - VDDA * 1.53
31      7 - VDDA * 1.53
32
33  - nuvoton,jack-insert-debounce: number from 0 to 7 that sets debounce time to 2^(n+2) ms
34  - nuvoton,jack-eject-debounce: number from 0 to 7 that sets debounce time to 2^(n+2) ms
35
36  - nuvoton,dmic-clk-threshold: the ADC threshold of DMIC clock.
37  - nuvoton,key_enable: Headset button detection switch.
38
39Example:
40
41  headset: nau8821@1b {
42      compatible = "nuvoton,nau8821";
43      reg = <0x1b>;
44      interrupt-parent = <&gpio>;
45      interrupts = <23 IRQ_TYPE_LEVEL_LOW>;
46      nuvoton,jkdet-enable;
47      nuvoton,jkdet-pull-enable;
48      nuvoton,jkdet-pull-up;
49      nuvoton,jkdet-polarity = <GPIO_ACTIVE_LOW>;
50      nuvoton,vref-impedance = <2>;
51      nuvoton,micbias-voltage = <6>;
52      nuvoton,jack-insert-debounce = <7>;
53      nuvoton,jack-eject-debounce = <7>;
54      nuvoton,dmic-clk-threshold = 3072000;
55  };
56