diff options
Diffstat (limited to 'Documentation/devicetree/bindings/sound')
9 files changed, 259 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt new file mode 100644 index 00000000000..e4acdd891e4 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt | |||
@@ -0,0 +1,49 @@ | |||
1 | Freescale i.MX audio complex with SGTL5000 codec | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "fsl,imx-audio-sgtl5000" | ||
5 | - model : The user-visible name of this sound complex | ||
6 | - ssi-controller : The phandle of the i.MX SSI controller | ||
7 | - audio-codec : The phandle of the SGTL5000 audio codec | ||
8 | - audio-routing : A list of the connections between audio components. | ||
9 | Each entry is a pair of strings, the first being the connection's sink, | ||
10 | the second being the connection's source. Valid names could be power | ||
11 | supplies, SGTL5000 pins, and the jacks on the board: | ||
12 | |||
13 | Power supplies: | ||
14 | * Mic Bias | ||
15 | |||
16 | SGTL5000 pins: | ||
17 | * MIC_IN | ||
18 | * LINE_IN | ||
19 | * HP_OUT | ||
20 | * LINE_OUT | ||
21 | |||
22 | Board connectors: | ||
23 | * Mic Jack | ||
24 | * Line In Jack | ||
25 | * Headphone Jack | ||
26 | * Line Out Jack | ||
27 | * Ext Spk | ||
28 | |||
29 | - mux-int-port : The internal port of the i.MX audio muxer (AUDMUX) | ||
30 | - mux-ext-port : The external port of the i.MX audio muxer | ||
31 | |||
32 | Note: The AUDMUX port numbering should start at 1, which is consistent with | ||
33 | hardware manual. | ||
34 | |||
35 | Example: | ||
36 | |||
37 | sound { | ||
38 | compatible = "fsl,imx51-babbage-sgtl5000", | ||
39 | "fsl,imx-audio-sgtl5000"; | ||
40 | model = "imx51-babbage-sgtl5000"; | ||
41 | ssi-controller = <&ssi1>; | ||
42 | audio-codec = <&sgtl5000>; | ||
43 | audio-routing = | ||
44 | "MIC_IN", "Mic Jack", | ||
45 | "Mic Jack", "Mic Bias", | ||
46 | "Headphone Jack", "HP_OUT"; | ||
47 | mux-int-port = <1>; | ||
48 | mux-ext-port = <3>; | ||
49 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/mxs-audio-sgtl5000.txt b/Documentation/devicetree/bindings/sound/mxs-audio-sgtl5000.txt new file mode 100644 index 00000000000..601c518edda --- /dev/null +++ b/Documentation/devicetree/bindings/sound/mxs-audio-sgtl5000.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | * Freescale MXS audio complex with SGTL5000 codec | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "fsl,mxs-audio-sgtl5000" | ||
5 | - model: The user-visible name of this sound complex | ||
6 | - saif-controllers: The phandle list of the MXS SAIF controller | ||
7 | - audio-codec: The phandle of the SGTL5000 audio codec | ||
8 | |||
9 | Example: | ||
10 | |||
11 | sound { | ||
12 | compatible = "fsl,imx28-evk-sgtl5000", | ||
13 | "fsl,mxs-audio-sgtl5000"; | ||
14 | model = "imx28-evk-sgtl5000"; | ||
15 | saif-controllers = <&saif0 &saif1>; | ||
16 | audio-codec = <&sgtl5000>; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/mxs-saif.txt b/Documentation/devicetree/bindings/sound/mxs-saif.txt new file mode 100644 index 00000000000..c37ba6143d9 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/mxs-saif.txt | |||
@@ -0,0 +1,36 @@ | |||
1 | * Freescale MXS Serial Audio Interface (SAIF) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "fsl,<chip>-saif" | ||
5 | - reg: Should contain registers location and length | ||
6 | - interrupts: Should contain ERROR and DMA interrupts | ||
7 | - fsl,saif-dma-channel: APBX DMA channel for the SAIF | ||
8 | |||
9 | Optional properties: | ||
10 | - fsl,saif-master: phandle to the master SAIF. It's only required for | ||
11 | the slave SAIF. | ||
12 | |||
13 | Note: Each SAIF controller should have an alias correctly numbered | ||
14 | in "aliases" node. | ||
15 | |||
16 | Example: | ||
17 | |||
18 | aliases { | ||
19 | saif0 = &saif0; | ||
20 | saif1 = &saif1; | ||
21 | }; | ||
22 | |||
23 | saif0: saif@80042000 { | ||
24 | compatible = "fsl,imx28-saif"; | ||
25 | reg = <0x80042000 2000>; | ||
26 | interrupts = <59 80>; | ||
27 | fsl,saif-dma-channel = <4>; | ||
28 | }; | ||
29 | |||
30 | saif1: saif@80046000 { | ||
31 | compatible = "fsl,imx28-saif"; | ||
32 | reg = <0x80046000 2000>; | ||
33 | interrupts = <58 81>; | ||
34 | fsl,saif-dma-channel = <5>; | ||
35 | fsl,saif-master = <&saif0>; | ||
36 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt new file mode 100644 index 00000000000..1ac7b164218 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt | |||
@@ -0,0 +1,32 @@ | |||
1 | NVIDIA Tegra30 AHUB (Audio Hub) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "nvidia,tegra30-ahub" | ||
5 | - reg : Should contain the register physical address and length for each of | ||
6 | the AHUB's APBIF registers and the AHUB's own registers. | ||
7 | - interrupts : Should contain AHUB interrupt | ||
8 | - nvidia,dma-request-selector : The Tegra DMA controller's phandle and | ||
9 | request selector for the first APBIF channel. | ||
10 | - ranges : The bus address mapping for the configlink register bus. | ||
11 | Can be empty since the mapping is 1:1. | ||
12 | - #address-cells : For the configlink bus. Should be <1>; | ||
13 | - #size-cells : For the configlink bus. Should be <1>. | ||
14 | |||
15 | AHUB client modules need to specify the IDs of their CIFs (Client InterFaces). | ||
16 | For RX CIFs, the numbers indicate the register number within AHUB routing | ||
17 | register space (APBIF 0..3 RX, I2S 0..5 RX, DAM 0..2 RX 0..1, SPDIF RX 0..1). | ||
18 | For TX CIFs, the numbers indicate the bit position within the AHUB routing | ||
19 | registers (APBIF 0..3 TX, I2S 0..5 TX, DAM 0..2 TX, SPDIF TX 0..1). | ||
20 | |||
21 | Example: | ||
22 | |||
23 | ahub@70080000 { | ||
24 | compatible = "nvidia,tegra30-ahub"; | ||
25 | reg = <0x70080000 0x200 0x70080200 0x100>; | ||
26 | interrupts = < 0 103 0x04 >; | ||
27 | nvidia,dma-request-selector = <&apbdma 1>; | ||
28 | |||
29 | ranges; | ||
30 | #address-cells = <1>; | ||
31 | #size-cells = <1>; | ||
32 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt new file mode 100644 index 00000000000..dfa6c037124 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt | |||
@@ -0,0 +1,15 @@ | |||
1 | NVIDIA Tegra30 I2S controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "nvidia,tegra30-i2s" | ||
5 | - reg : Should contain I2S registers location and length | ||
6 | - nvidia,ahub-cif-ids : The list of AHUB CIF IDs for this port, rx (playback) | ||
7 | first, tx (capture) second. See nvidia,tegra30-ahub.txt for values. | ||
8 | |||
9 | Example: | ||
10 | |||
11 | i2s@70002800 { | ||
12 | compatible = "nvidia,tegra30-i2s"; | ||
13 | reg = <0x70080300 0x100>; | ||
14 | nvidia,ahub-cif-ids = <4 4>; | ||
15 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/omap-dmic.txt b/Documentation/devicetree/bindings/sound/omap-dmic.txt new file mode 100644 index 00000000000..fd8105f1897 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/omap-dmic.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Texas Instruments OMAP4+ Digital Microphone Module | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "ti,omap4-dmic" | ||
5 | - reg: Register location and size as an array: | ||
6 | <MPU access base address, size>, | ||
7 | <L3 interconnect address, size>; | ||
8 | - interrupts: Interrupt number for DMIC | ||
9 | - interrupt-parent: The parent interrupt controller | ||
10 | - ti,hwmods: Name of the hwmod associated with OMAP dmic IP | ||
11 | |||
12 | Example: | ||
13 | |||
14 | dmic: dmic@4012e000 { | ||
15 | compatible = "ti,omap4-dmic"; | ||
16 | reg = <0x4012e000 0x7f>, /* MPU private access */ | ||
17 | <0x4902e000 0x7f>; /* L3 Interconnect */ | ||
18 | interrupts = <0 114 0x4>; | ||
19 | interrupt-parent = <&gic>; | ||
20 | ti,hwmods = "dmic"; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/omap-mcpdm.txt b/Documentation/devicetree/bindings/sound/omap-mcpdm.txt new file mode 100644 index 00000000000..0741dff048d --- /dev/null +++ b/Documentation/devicetree/bindings/sound/omap-mcpdm.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Texas Instruments OMAP4+ McPDM | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "ti,omap4-mcpdm" | ||
5 | - reg: Register location and size as an array: | ||
6 | <MPU access base address, size>, | ||
7 | <L3 interconnect address, size>; | ||
8 | - interrupts: Interrupt number for McPDM | ||
9 | - interrupt-parent: The parent interrupt controller | ||
10 | - ti,hwmods: Name of the hwmod associated to the McPDM | ||
11 | |||
12 | Example: | ||
13 | |||
14 | mcpdm: mcpdm@40132000 { | ||
15 | compatible = "ti,omap4-mcpdm"; | ||
16 | reg = <0x40132000 0x7f>, /* MPU private access */ | ||
17 | <0x49032000 0x7f>; /* L3 Interconnect */ | ||
18 | interrupts = <0 112 0x4>; | ||
19 | interrupt-parent = <&gic>; | ||
20 | ti,hwmods = "mcpdm"; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/tegra-audio-trimslice.txt b/Documentation/devicetree/bindings/sound/tegra-audio-trimslice.txt new file mode 100644 index 00000000000..04b14cfb1f1 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tegra-audio-trimslice.txt | |||
@@ -0,0 +1,14 @@ | |||
1 | NVIDIA Tegra audio complex for TrimSlice | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "nvidia,tegra-audio-trimslice" | ||
5 | - nvidia,i2s-controller : The phandle of the Tegra I2S1 controller | ||
6 | - nvidia,audio-codec : The phandle of the WM8903 audio codec | ||
7 | |||
8 | Example: | ||
9 | |||
10 | sound { | ||
11 | compatible = "nvidia,tegra-audio-trimslice"; | ||
12 | nvidia,i2s-controller = <&tegra_i2s1>; | ||
13 | nvidia,audio-codec = <&codec>; | ||
14 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/tegra-audio-wm8753.txt b/Documentation/devicetree/bindings/sound/tegra-audio-wm8753.txt new file mode 100644 index 00000000000..c4dd39ce616 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tegra-audio-wm8753.txt | |||
@@ -0,0 +1,54 @@ | |||
1 | NVIDIA Tegra audio complex | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "nvidia,tegra-audio-wm8753" | ||
5 | - nvidia,model : The user-visible name of this sound complex. | ||
6 | - nvidia,audio-routing : A list of the connections between audio components. | ||
7 | Each entry is a pair of strings, the first being the connection's sink, | ||
8 | the second being the connection's source. Valid names for sources and | ||
9 | sinks are the WM8753's pins, and the jacks on the board: | ||
10 | |||
11 | WM8753 pins: | ||
12 | |||
13 | * LOUT1 | ||
14 | * LOUT2 | ||
15 | * ROUT1 | ||
16 | * ROUT2 | ||
17 | * MONO1 | ||
18 | * MONO2 | ||
19 | * OUT3 | ||
20 | * OUT4 | ||
21 | * LINE1 | ||
22 | * LINE2 | ||
23 | * RXP | ||
24 | * RXN | ||
25 | * ACIN | ||
26 | * ACOP | ||
27 | * MIC1N | ||
28 | * MIC1 | ||
29 | * MIC2N | ||
30 | * MIC2 | ||
31 | * Mic Bias | ||
32 | |||
33 | Board connectors: | ||
34 | |||
35 | * Headphone Jack | ||
36 | * Mic Jack | ||
37 | |||
38 | - nvidia,i2s-controller : The phandle of the Tegra I2S1 controller | ||
39 | - nvidia,audio-codec : The phandle of the WM8753 audio codec | ||
40 | Example: | ||
41 | |||
42 | sound { | ||
43 | compatible = "nvidia,tegra-audio-wm8753-whistler", | ||
44 | "nvidia,tegra-audio-wm8753" | ||
45 | nvidia,model = "tegra-wm8753-harmony"; | ||
46 | |||
47 | nvidia,audio-routing = | ||
48 | "Headphone Jack", "LOUT1", | ||
49 | "Headphone Jack", "ROUT1"; | ||
50 | |||
51 | nvidia,i2s-controller = <&i2s1>; | ||
52 | nvidia,audio-codec = <&wm8753>; | ||
53 | }; | ||
54 | |||