Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
[sfrench/cifs-2.6.git] / Documentation / devicetree / bindings / sound / sun4i-codec.txt
1 * Allwinner A10 Codec
2
3 Required properties:
4 - compatible: must be one of the following compatibles:
5                 - "allwinner,sun4i-a10-codec"
6                 - "allwinner,sun6i-a31-codec"
7                 - "allwinner,sun7i-a20-codec"
8                 - "allwinner,sun8i-a23-codec"
9                 - "allwinner,sun8i-h3-codec"
10                 - "allwinner,sun8i-v3s-codec"
11 - reg: must contain the registers location and length
12 - interrupts: must contain the codec interrupt
13 - dmas: DMA channels for tx and rx dma. See the DMA client binding,
14         Documentation/devicetree/bindings/dma/dma.txt
15 - dma-names: should include "tx" and "rx".
16 - clocks: a list of phandle + clock-specifer pairs, one for each entry
17   in clock-names.
18 - clock-names: should contain the following:
19    - "apb": the parent APB clock for this controller
20    - "codec": the parent module clock
21
22 Optional properties:
23 - allwinner,pa-gpios: gpio to enable external amplifier
24
25 Required properties for the following compatibles:
26                 - "allwinner,sun6i-a31-codec"
27                 - "allwinner,sun8i-a23-codec"
28                 - "allwinner,sun8i-h3-codec"
29                 - "allwinner,sun8i-v3s-codec"
30 - resets: phandle to the reset control for this device
31 - allwinner,audio-routing: A list of the connections between audio components.
32                            Each entry is a pair of strings, the first being the
33                            connection's sink, the second being the connection's
34                            source. Valid names include:
35
36                            Audio pins on the SoC:
37                            "HP"
38                            "HPCOM"
39                            "LINEIN"     (not on sun8i-v3s)
40                            "LINEOUT"    (not on sun8i-a23 or sun8i-v3s)
41                            "MIC1"
42                            "MIC2"       (not on sun8i-v3s)
43                            "MIC3"       (sun6i-a31 only)
44
45                            Microphone biases from the SoC:
46                            "HBIAS"
47                            "MBIAS"      (not on sun8i-v3s)
48
49                            Board connectors:
50                            "Headphone"
51                            "Headset Mic"
52                            "Line In"
53                            "Line Out"
54                            "Mic"
55                            "Speaker"
56
57 Required properties for the following compatibles:
58                 - "allwinner,sun8i-a23-codec"
59                 - "allwinner,sun8i-h3-codec"
60                 - "allwinner,sun8i-v3s-codec"
61 - allwinner,codec-analog-controls: A phandle to the codec analog controls
62                                    block in the PRCM.
63
64 Example:
65 codec: codec@01c22c00 {
66         #sound-dai-cells = <0>;
67         compatible = "allwinner,sun7i-a20-codec";
68         reg = <0x01c22c00 0x40>;
69         interrupts = <0 30 4>;
70         clocks = <&apb0_gates 0>, <&codec_clk>;
71         clock-names = "apb", "codec";
72         dmas = <&dma 0 19>, <&dma 0 19>;
73         dma-names = "rx", "tx";
74 };
75
76 codec: codec@01c22c00 {
77         #sound-dai-cells = <0>;
78         compatible = "allwinner,sun6i-a31-codec";
79         reg = <0x01c22c00 0x98>;
80         interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
81         clocks = <&ccu CLK_APB1_CODEC>, <&ccu CLK_CODEC>;
82         clock-names = "apb", "codec";
83         resets = <&ccu RST_APB1_CODEC>;
84         dmas = <&dma 15>, <&dma 15>;
85         dma-names = "rx", "tx";
86         allwinner,audio-routing =
87                 "Headphone", "HP",
88                 "Speaker", "LINEOUT",
89                 "LINEIN", "Line In",
90                 "MIC1", "MBIAS",
91                 "MIC1", "Mic",
92                 "MIC2", "HBIAS",
93                 "MIC2", "Headset Mic";
94 };