diff options
author | Takashi Iwai <tiwai@suse.de> | 2014-03-13 04:53:25 -0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2014-03-13 04:53:25 -0400 |
commit | 5fdb83f190ee2218d113a46b190b70aa1c979325 (patch) | |
tree | fbb95a73b111c2e4d0320393754c11a9ec026b39 /Documentation/devicetree/bindings | |
parent | 4c16ecc4c0715e0b6b3c7b72976c05b0e212cd0f (diff) | |
parent | deeed33850c8a376addabbf971df433b2a1ba74c (diff) |
Merge tag 'asoc-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into for-next
ASoC: Updates for v3.15
Quite a busy release for ASoC this time, more on janitorial work than
exciting new features but welcome nontheless:
- Lots of cleanups from Takashi for enumerations; the original API for
these was error prone so he's refactored lots of code to use more
modern APIs which avoid issues.
- Elimination of the ASoC level wrappers for I2C and SPI moving us
closer to converting to regmap completely and avoiding some
randconfig hassle.
- Provide both manually and transparently locked DAPM APIs rather than
a mix of the two fixing some concurrency issues.
- Start converting CODEC drivers to use separate bus interface drivers
rather than having them all in one file helping avoid dependency
issues.
- DPCM support for Intel Haswell and Bay Trail platforms.
- Lots of work on improvements for simple-card, DaVinci and the Renesas
rcar drivers.
- New drivers for Analog Devices ADAU1977, TI PCM512x and parts of the
CSR SiRF SoC.
Diffstat (limited to 'Documentation/devicetree/bindings')
22 files changed, 360 insertions, 17 deletions
diff --git a/Documentation/devicetree/bindings/arm/omap/omap.txt b/Documentation/devicetree/bindings/arm/omap/omap.txt index 34dc40cffdfd..af9b4a0d902b 100644 --- a/Documentation/devicetree/bindings/arm/omap/omap.txt +++ b/Documentation/devicetree/bindings/arm/omap/omap.txt | |||
@@ -91,7 +91,7 @@ Boards: | |||
91 | compatible = "ti,omap3-beagle", "ti,omap3" | 91 | compatible = "ti,omap3-beagle", "ti,omap3" |
92 | 92 | ||
93 | - OMAP3 Tobi with Overo : Commercial expansion board with daughter board | 93 | - OMAP3 Tobi with Overo : Commercial expansion board with daughter board |
94 | compatible = "ti,omap3-tobi", "ti,omap3-overo", "ti,omap3" | 94 | compatible = "gumstix,omap3-overo-tobi", "gumstix,omap3-overo", "ti,omap3" |
95 | 95 | ||
96 | - OMAP4 SDP : Software Development Board | 96 | - OMAP4 SDP : Software Development Board |
97 | compatible = "ti,omap4-sdp", "ti,omap4430" | 97 | compatible = "ti,omap4-sdp", "ti,omap4430" |
diff --git a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt index a6a352c2771e..5992dceec7af 100644 --- a/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt +++ b/Documentation/devicetree/bindings/clock/renesas,cpg-mstp-clocks.txt | |||
@@ -21,9 +21,9 @@ Required Properties: | |||
21 | must appear in the same order as the output clocks. | 21 | must appear in the same order as the output clocks. |
22 | - #clock-cells: Must be 1 | 22 | - #clock-cells: Must be 1 |
23 | - clock-output-names: The name of the clocks as free-form strings | 23 | - clock-output-names: The name of the clocks as free-form strings |
24 | - renesas,indices: Indices of the gate clocks into the group (0 to 31) | 24 | - renesas,clock-indices: Indices of the gate clocks into the group (0 to 31) |
25 | 25 | ||
26 | The clocks, clock-output-names and renesas,indices properties contain one | 26 | The clocks, clock-output-names and renesas,clock-indices properties contain one |
27 | entry per gate clock. The MSTP groups are sparsely populated. Unimplemented | 27 | entry per gate clock. The MSTP groups are sparsely populated. Unimplemented |
28 | gate clocks must not be declared. | 28 | gate clocks must not be declared. |
29 | 29 | ||
diff --git a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt index 68b83ecc3850..ee9be9961524 100644 --- a/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt +++ b/Documentation/devicetree/bindings/dma/fsl-imx-sdma.txt | |||
@@ -1,12 +1,16 @@ | |||
1 | * Freescale Smart Direct Memory Access (SDMA) Controller for i.MX | 1 | * Freescale Smart Direct Memory Access (SDMA) Controller for i.MX |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "fsl,imx31-sdma", "fsl,imx31-to1-sdma", | 4 | - compatible : Should be one of |
5 | "fsl,imx31-to2-sdma", "fsl,imx35-sdma", "fsl,imx35-to1-sdma", | 5 | "fsl,imx25-sdma" |
6 | "fsl,imx35-to2-sdma", "fsl,imx51-sdma", "fsl,imx53-sdma" or | 6 | "fsl,imx31-sdma", "fsl,imx31-to1-sdma", "fsl,imx31-to2-sdma" |
7 | "fsl,imx6q-sdma". The -to variants should be preferred since they | 7 | "fsl,imx35-sdma", "fsl,imx35-to1-sdma", "fsl,imx35-to2-sdma" |
8 | allow to determnine the correct ROM script addresses needed for | 8 | "fsl,imx51-sdma" |
9 | the driver to work without additional firmware. | 9 | "fsl,imx53-sdma" |
10 | "fsl,imx6q-sdma" | ||
11 | The -to variants should be preferred since they allow to determnine the | ||
12 | correct ROM script addresses needed for the driver to work without additional | ||
13 | firmware. | ||
10 | - reg : Should contain SDMA registers location and length | 14 | - reg : Should contain SDMA registers location and length |
11 | - interrupts : Should contain SDMA interrupt | 15 | - interrupts : Should contain SDMA interrupt |
12 | - #dma-cells : Must be <3>. | 16 | - #dma-cells : Must be <3>. |
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt index 1a1ac2e560e9..f47e56bcf78d 100644 --- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt +++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt | |||
@@ -18,6 +18,7 @@ atmel,24c02 i2c serial eeprom (24cxx) | |||
18 | atmel,at97sc3204t i2c trusted platform module (TPM) | 18 | atmel,at97sc3204t i2c trusted platform module (TPM) |
19 | capella,cm32181 CM32181: Ambient Light Sensor | 19 | capella,cm32181 CM32181: Ambient Light Sensor |
20 | catalyst,24c32 i2c serial eeprom | 20 | catalyst,24c32 i2c serial eeprom |
21 | cirrus,cs42l51 Cirrus Logic CS42L51 audio codec | ||
21 | dallas,ds1307 64 x 8, Serial, I2C Real-Time Clock | 22 | dallas,ds1307 64 x 8, Serial, I2C Real-Time Clock |
22 | dallas,ds1338 I2C RTC with 56-Byte NV RAM | 23 | dallas,ds1338 I2C RTC with 56-Byte NV RAM |
23 | dallas,ds1339 I2C Serial Real-Time Clock | 24 | dallas,ds1339 I2C Serial Real-Time Clock |
diff --git a/Documentation/devicetree/bindings/misc/atmel-ssc.txt b/Documentation/devicetree/bindings/misc/atmel-ssc.txt index 60960b2755f4..efc98ea1f23d 100644 --- a/Documentation/devicetree/bindings/misc/atmel-ssc.txt +++ b/Documentation/devicetree/bindings/misc/atmel-ssc.txt | |||
@@ -17,6 +17,14 @@ Required properties for devices compatible with "atmel,at91sam9g45-ssc": | |||
17 | See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. | 17 | See Documentation/devicetree/bindings/dma/atmel-dma.txt for details. |
18 | - dma-names: Must be "tx", "rx". | 18 | - dma-names: Must be "tx", "rx". |
19 | 19 | ||
20 | Optional properties: | ||
21 | - atmel,clk-from-rk-pin: bool property. | ||
22 | - When SSC works in slave mode, according to the hardware design, the | ||
23 | clock can get from TK pin, and also can get from RK pin. So, add | ||
24 | this parameter to choose where the clock from. | ||
25 | - By default the clock is from TK pin, if the clock from RK pin, this | ||
26 | property is needed. | ||
27 | |||
20 | Examples: | 28 | Examples: |
21 | - PDC transfer: | 29 | - PDC transfer: |
22 | ssc0: ssc@fffbc000 { | 30 | ssc0: ssc@fffbc000 { |
diff --git a/Documentation/devicetree/bindings/net/opencores-ethoc.txt b/Documentation/devicetree/bindings/net/opencores-ethoc.txt new file mode 100644 index 000000000000..2dc127c30d9b --- /dev/null +++ b/Documentation/devicetree/bindings/net/opencores-ethoc.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * OpenCores MAC 10/100 Mbps | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "opencores,ethoc". | ||
5 | - reg: two memory regions (address and length), | ||
6 | first region is for the device registers and descriptor rings, | ||
7 | second is for the device packet memory. | ||
8 | - interrupts: interrupt for the device. | ||
9 | |||
10 | Optional properties: | ||
11 | - clocks: phandle to refer to the clk used as per | ||
12 | Documentation/devicetree/bindings/clock/clock-bindings.txt | ||
13 | |||
14 | Examples: | ||
15 | |||
16 | enet0: ethoc@fd030000 { | ||
17 | compatible = "opencores,ethoc"; | ||
18 | reg = <0xfd030000 0x4000 0xfd800000 0x4000>; | ||
19 | interrupts = <1>; | ||
20 | local-mac-address = [00 50 c2 13 6f 00]; | ||
21 | clocks = <&osc>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/sti-dwmac.txt b/Documentation/devicetree/bindings/net/sti-dwmac.txt new file mode 100644 index 000000000000..3dd3d0bf112f --- /dev/null +++ b/Documentation/devicetree/bindings/net/sti-dwmac.txt | |||
@@ -0,0 +1,58 @@ | |||
1 | STMicroelectronics SoC DWMAC glue layer controller | ||
2 | |||
3 | The device node has following properties. | ||
4 | |||
5 | Required properties: | ||
6 | - compatible : Can be "st,stih415-dwmac", "st,stih416-dwmac" or | ||
7 | "st,stid127-dwmac". | ||
8 | - reg : Offset of the glue configuration register map in system | ||
9 | configuration regmap pointed by st,syscon property and size. | ||
10 | |||
11 | - reg-names : Should be "sti-ethconf". | ||
12 | |||
13 | - st,syscon : Should be phandle to system configuration node which | ||
14 | encompases this glue registers. | ||
15 | |||
16 | - st,tx-retime-src: On STi Parts for Giga bit speeds, 125Mhz clocks can be | ||
17 | wired up in from different sources. One via TXCLK pin and other via CLK_125 | ||
18 | pin. This wiring is totally board dependent. However the retiming glue | ||
19 | logic should be configured accordingly. Possible values for this property | ||
20 | |||
21 | "txclk" - if 125Mhz clock is wired up via txclk line. | ||
22 | "clk_125" - if 125Mhz clock is wired up via clk_125 line. | ||
23 | |||
24 | This property is only valid for Giga bit setup( GMII, RGMII), and it is | ||
25 | un-used for non-giga bit (MII and RMII) setups. Also note that internal | ||
26 | clockgen can not generate stable 125Mhz clock. | ||
27 | |||
28 | - st,ext-phyclk: This boolean property indicates who is generating the clock | ||
29 | for tx and rx. This property is only valid for RMII case where the clock can | ||
30 | be generated from the MAC or PHY. | ||
31 | |||
32 | - clock-names: should be "sti-ethclk". | ||
33 | - clocks: Should point to ethernet clockgen which can generate phyclk. | ||
34 | |||
35 | |||
36 | Example: | ||
37 | |||
38 | ethernet0: dwmac@fe810000 { | ||
39 | device_type = "network"; | ||
40 | compatible = "st,stih416-dwmac", "snps,dwmac", "snps,dwmac-3.710"; | ||
41 | reg = <0xfe810000 0x8000>, <0x8bc 0x4>; | ||
42 | reg-names = "stmmaceth", "sti-ethconf"; | ||
43 | interrupts = <0 133 0>, <0 134 0>, <0 135 0>; | ||
44 | interrupt-names = "macirq", "eth_wake_irq", "eth_lpi"; | ||
45 | phy-mode = "mii"; | ||
46 | |||
47 | st,syscon = <&syscfg_rear>; | ||
48 | |||
49 | snps,pbl = <32>; | ||
50 | snps,mixed-burst; | ||
51 | |||
52 | resets = <&softreset STIH416_ETH0_SOFTRESET>; | ||
53 | reset-names = "stmmaceth"; | ||
54 | pinctrl-0 = <&pinctrl_mii0>; | ||
55 | pinctrl-names = "default"; | ||
56 | clocks = <&CLK_S_GMAC0_PHY>; | ||
57 | clock-names = "stmmaceth"; | ||
58 | }; | ||
diff --git a/Documentation/devicetree/bindings/pinctrl/brcm,capri-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/brcm,bcm11351-pinctrl.txt index 9e9e9ef9f852..c119debe6bab 100644 --- a/Documentation/devicetree/bindings/pinctrl/brcm,capri-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/brcm,bcm11351-pinctrl.txt | |||
@@ -1,4 +1,4 @@ | |||
1 | Broadcom Capri Pin Controller | 1 | Broadcom BCM281xx Pin Controller |
2 | 2 | ||
3 | This is a pin controller for the Broadcom BCM281xx SoC family, which includes | 3 | This is a pin controller for the Broadcom BCM281xx SoC family, which includes |
4 | BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs. | 4 | BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs. |
@@ -7,14 +7,14 @@ BCM11130, BCM11140, BCM11351, BCM28145, and BCM28155 SoCs. | |||
7 | 7 | ||
8 | Required Properties: | 8 | Required Properties: |
9 | 9 | ||
10 | - compatible: Must be "brcm,capri-pinctrl". | 10 | - compatible: Must be "brcm,bcm11351-pinctrl" |
11 | - reg: Base address of the PAD Controller register block and the size | 11 | - reg: Base address of the PAD Controller register block and the size |
12 | of the block. | 12 | of the block. |
13 | 13 | ||
14 | For example, the following is the bare minimum node: | 14 | For example, the following is the bare minimum node: |
15 | 15 | ||
16 | pinctrl@35004800 { | 16 | pinctrl@35004800 { |
17 | compatible = "brcm,capri-pinctrl"; | 17 | compatible = "brcm,bcm11351-pinctrl"; |
18 | reg = <0x35004800 0x430>; | 18 | reg = <0x35004800 0x430>; |
19 | }; | 19 | }; |
20 | 20 | ||
@@ -119,7 +119,7 @@ Optional Properties (for HDMI pins): | |||
119 | Example: | 119 | Example: |
120 | // pin controller node | 120 | // pin controller node |
121 | pinctrl@35004800 { | 121 | pinctrl@35004800 { |
122 | compatible = "brcm,capri-pinctrl"; | 122 | compatible = "brcmbcm11351-pinctrl"; |
123 | reg = <0x35004800 0x430>; | 123 | reg = <0x35004800 0x430>; |
124 | 124 | ||
125 | // pin configuration node | 125 | // pin configuration node |
diff --git a/Documentation/devicetree/bindings/sound/da9055.txt b/Documentation/devicetree/bindings/sound/da9055.txt new file mode 100644 index 000000000000..ed1b7cc6f249 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/da9055.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * Dialog DA9055 Audio CODEC | ||
2 | |||
3 | DA9055 provides Audio CODEC support (I2C only). | ||
4 | |||
5 | The Audio CODEC device in DA9055 has it's own I2C address which is configurable, | ||
6 | so the device is instantiated separately from the PMIC (MFD) device. | ||
7 | |||
8 | For details on accompanying PMIC I2C device, see the following: | ||
9 | Documentation/devicetree/bindings/mfd/da9055.txt | ||
10 | |||
11 | Required properties: | ||
12 | |||
13 | - compatible: "dlg,da9055-codec" | ||
14 | - reg: Specifies the I2C slave address | ||
15 | |||
16 | |||
17 | Example: | ||
18 | |||
19 | codec: da9055-codec@1a { | ||
20 | compatible = "dlg,da9055-codec"; | ||
21 | reg = <0x1a>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt b/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt index 865178d5cdf3..963e100514c2 100644 --- a/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt +++ b/Documentation/devicetree/bindings/sound/davinci-evm-audio.txt | |||
@@ -5,12 +5,19 @@ Required properties: | |||
5 | - ti,model : The user-visible name of this sound complex. | 5 | - ti,model : The user-visible name of this sound complex. |
6 | - ti,audio-codec : The phandle of the TLV320AIC3x audio codec | 6 | - ti,audio-codec : The phandle of the TLV320AIC3x audio codec |
7 | - ti,mcasp-controller : The phandle of the McASP controller | 7 | - ti,mcasp-controller : The phandle of the McASP controller |
8 | - ti,codec-clock-rate : The Codec Clock rate (in Hz) applied to the Codec | ||
9 | - ti,audio-routing : A list of the connections between audio components. | 8 | - ti,audio-routing : A list of the connections between audio components. |
10 | Each entry is a pair of strings, the first being the connection's sink, | 9 | Each entry is a pair of strings, the first being the connection's sink, |
11 | the second being the connection's source. Valid names for sources and | 10 | the second being the connection's source. Valid names for sources and |
12 | sinks are the codec's pins, and the jacks on the board: | 11 | sinks are the codec's pins, and the jacks on the board: |
13 | 12 | ||
13 | Optional properties: | ||
14 | - ti,codec-clock-rate : The Codec Clock rate (in Hz) applied to the Codec. | ||
15 | - clocks : Reference to the master clock | ||
16 | - clock-names : The clock should be named "mclk" | ||
17 | - Either codec-clock-rate or the codec-clock reference has to be defined. If | ||
18 | the both are defined the driver attempts to set referenced clock to the | ||
19 | defined rate and takes the rate from the clock reference. | ||
20 | |||
14 | Board connectors: | 21 | Board connectors: |
15 | 22 | ||
16 | * Headphone Jack | 23 | * Headphone Jack |
diff --git a/Documentation/devicetree/bindings/sound/eukrea-tlv320.txt b/Documentation/devicetree/bindings/sound/eukrea-tlv320.txt new file mode 100644 index 000000000000..0d7985c864af --- /dev/null +++ b/Documentation/devicetree/bindings/sound/eukrea-tlv320.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | Audio complex for Eukrea boards with tlv320aic23 codec. | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "eukrea,asoc-tlv320" | ||
5 | - eukrea,model : The user-visible name of this sound complex. | ||
6 | - ssi-controller : The phandle of the SSI controller. | ||
7 | - fsl,mux-int-port : The internal port of the i.MX audio muxer (AUDMUX). | ||
8 | - fsl,mux-ext-port : The external port of the i.MX audio muxer. | ||
9 | |||
10 | Note: The AUDMUX port numbering should start at 1, which is consistent with | ||
11 | hardware manual. | ||
12 | |||
13 | Example: | ||
14 | |||
15 | sound { | ||
16 | compatible = "eukrea,asoc-tlv320"; | ||
17 | eukrea,model = "imx51-eukrea-tlv320aic23"; | ||
18 | ssi-controller = <&ssi2>; | ||
19 | fsl,mux-int-port = <2>; | ||
20 | fsl,mux-ext-port = <3>; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/fsl,esai.txt b/Documentation/devicetree/bindings/sound/fsl,esai.txt index d7b99fa637b5..aeb8c4a0b88d 100644 --- a/Documentation/devicetree/bindings/sound/fsl,esai.txt +++ b/Documentation/devicetree/bindings/sound/fsl,esai.txt | |||
@@ -34,6 +34,10 @@ Required properties: | |||
34 | that ESAI would work in the synchronous mode, which means all the settings | 34 | that ESAI would work in the synchronous mode, which means all the settings |
35 | for Receiving would be duplicated from Transmition related registers. | 35 | for Receiving would be duplicated from Transmition related registers. |
36 | 36 | ||
37 | - big-endian : If this property is absent, the native endian mode will | ||
38 | be in use as default, or the big endian mode will be in use for all the | ||
39 | device registers. | ||
40 | |||
37 | Example: | 41 | Example: |
38 | 42 | ||
39 | esai: esai@02024000 { | 43 | esai: esai@02024000 { |
@@ -46,5 +50,6 @@ esai: esai@02024000 { | |||
46 | dma-names = "rx", "tx"; | 50 | dma-names = "rx", "tx"; |
47 | fsl,fifo-depth = <128>; | 51 | fsl,fifo-depth = <128>; |
48 | fsl,esai-synchronous; | 52 | fsl,esai-synchronous; |
53 | big-endian; | ||
49 | status = "disabled"; | 54 | status = "disabled"; |
50 | }; | 55 | }; |
diff --git a/Documentation/devicetree/bindings/sound/fsl,spdif.txt b/Documentation/devicetree/bindings/sound/fsl,spdif.txt index f2ae335670f5..3e9e82c8eab3 100644 --- a/Documentation/devicetree/bindings/sound/fsl,spdif.txt +++ b/Documentation/devicetree/bindings/sound/fsl,spdif.txt | |||
@@ -29,6 +29,10 @@ Required properties: | |||
29 | can also be referred to TxClk_Source | 29 | can also be referred to TxClk_Source |
30 | bit of register SPDIF_STC. | 30 | bit of register SPDIF_STC. |
31 | 31 | ||
32 | - big-endian : If this property is absent, the native endian mode will | ||
33 | be in use as default, or the big endian mode will be in use for all the | ||
34 | device registers. | ||
35 | |||
32 | Example: | 36 | Example: |
33 | 37 | ||
34 | spdif: spdif@02004000 { | 38 | spdif: spdif@02004000 { |
@@ -50,5 +54,6 @@ spdif: spdif@02004000 { | |||
50 | "rxtx5", "rxtx6", | 54 | "rxtx5", "rxtx6", |
51 | "rxtx7"; | 55 | "rxtx7"; |
52 | 56 | ||
57 | big-endian; | ||
53 | status = "okay"; | 58 | status = "okay"; |
54 | }; | 59 | }; |
diff --git a/Documentation/devicetree/bindings/sound/pcm512x.txt b/Documentation/devicetree/bindings/sound/pcm512x.txt new file mode 100644 index 000000000000..faff75e64573 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/pcm512x.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | PCM512x audio CODECs | ||
2 | |||
3 | These devices support both I2C and SPI (configured with pin strapping | ||
4 | on the board). | ||
5 | |||
6 | Required properties: | ||
7 | |||
8 | - compatible : One of "ti,pcm5121" or "ti,pcm5122" | ||
9 | |||
10 | - reg : the I2C address of the device for I2C, the chip select | ||
11 | number for SPI. | ||
12 | |||
13 | - AVDD-supply, DVDD-supply, and CPVDD-supply : power supplies for the | ||
14 | device, as covered in bindings/regulator/regulator.txt | ||
15 | |||
16 | Optional properties: | ||
17 | |||
18 | - clocks : A clock specifier for the clock connected as SCLK. If this | ||
19 | is absent the device will be configured to clock from BCLK. | ||
20 | |||
21 | Example: | ||
22 | |||
23 | pcm5122: pcm5122@4c { | ||
24 | compatible = "ti,pcm5122"; | ||
25 | reg = <0x4c>; | ||
26 | |||
27 | AVDD-supply = <®_3v3_analog>; | ||
28 | DVDD-supply = <®_1v8>; | ||
29 | CPVDD-supply = <®_3v3>; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/simple-card.txt b/Documentation/devicetree/bindings/sound/simple-card.txt index 19c84df5fffa..b30c222f9cd3 100644 --- a/Documentation/devicetree/bindings/sound/simple-card.txt +++ b/Documentation/devicetree/bindings/sound/simple-card.txt | |||
@@ -8,13 +8,18 @@ Required properties: | |||
8 | 8 | ||
9 | Optional properties: | 9 | Optional properties: |
10 | 10 | ||
11 | - simple-audio-card,name : User specified audio sound card name, one string | ||
12 | property. | ||
11 | - simple-audio-card,format : CPU/CODEC common audio format. | 13 | - simple-audio-card,format : CPU/CODEC common audio format. |
12 | "i2s", "right_j", "left_j" , "dsp_a" | 14 | "i2s", "right_j", "left_j" , "dsp_a" |
13 | "dsp_b", "ac97", "pdm", "msb", "lsb" | 15 | "dsp_b", "ac97", "pdm", "msb", "lsb" |
16 | - simple-audio-card,widgets : Please refer to widgets.txt. | ||
14 | - simple-audio-card,routing : A list of the connections between audio components. | 17 | - simple-audio-card,routing : A list of the connections between audio components. |
15 | Each entry is a pair of strings, the first being the | 18 | Each entry is a pair of strings, the first being the |
16 | connection's sink, the second being the connection's | 19 | connection's sink, the second being the connection's |
17 | source. | 20 | source. |
21 | - dai-tdm-slot-num : Please refer to tdm-slot.txt. | ||
22 | - dai-tdm-slot-width : Please refer to tdm-slot.txt. | ||
18 | 23 | ||
19 | Required subnodes: | 24 | Required subnodes: |
20 | 25 | ||
@@ -42,11 +47,19 @@ Example: | |||
42 | 47 | ||
43 | sound { | 48 | sound { |
44 | compatible = "simple-audio-card"; | 49 | compatible = "simple-audio-card"; |
50 | simple-audio-card,name = "VF610-Tower-Sound-Card"; | ||
45 | simple-audio-card,format = "left_j"; | 51 | simple-audio-card,format = "left_j"; |
52 | simple-audio-card,widgets = | ||
53 | "Microphone", "Microphone Jack", | ||
54 | "Headphone", "Headphone Jack", | ||
55 | "Speaker", "External Speaker"; | ||
46 | simple-audio-card,routing = | 56 | simple-audio-card,routing = |
47 | "MIC_IN", "Mic Jack", | 57 | "MIC_IN", "Microphone Jack", |
48 | "Headphone Jack", "HP_OUT", | 58 | "Headphone Jack", "HP_OUT", |
49 | "Ext Spk", "LINE_OUT"; | 59 | "External Speaker", "LINE_OUT"; |
60 | |||
61 | dai-tdm-slot-num = <2>; | ||
62 | dai-tdm-slot-width = <8>; | ||
50 | 63 | ||
51 | simple-audio-card,cpu { | 64 | simple-audio-card,cpu { |
52 | sound-dai = <&sh_fsi2 0>; | 65 | sound-dai = <&sh_fsi2 0>; |
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt b/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt new file mode 100644 index 000000000000..062f5ec36f9b --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio-codec.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | SiRF internal audio CODEC | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : "sirf,atlas6-audio-codec" or "sirf,prima2-audio-codec" | ||
6 | |||
7 | - reg : the register address of the device. | ||
8 | |||
9 | - clocks: the clock of SiRF internal audio codec | ||
10 | |||
11 | Example: | ||
12 | |||
13 | audiocodec: audiocodec@b0040000 { | ||
14 | compatible = "sirf,atlas6-audio-codec"; | ||
15 | reg = <0xb0040000 0x10000>; | ||
16 | clocks = <&clks 27>; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio-port.txt b/Documentation/devicetree/bindings/sound/sirf-audio-port.txt new file mode 100644 index 000000000000..1f66de3c8f00 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio-port.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | * SiRF SoC audio port | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "sirf,audio-port" | ||
5 | - reg: Base address and size entries: | ||
6 | - dmas: List of DMA controller phandle and DMA request line ordered pairs. | ||
7 | - dma-names: Identifier string for each DMA request line in the dmas property. | ||
8 | These strings correspond 1:1 with the ordered pairs in dmas. | ||
9 | |||
10 | One of the DMA channels will be responsible for transmission (should be | ||
11 | named "tx") and one for reception (should be named "rx"). | ||
12 | |||
13 | Example: | ||
14 | |||
15 | audioport: audioport@b0040000 { | ||
16 | compatible = "sirf,audio-port"; | ||
17 | reg = <0xb0040000 0x10000>; | ||
18 | dmas = <&dmac1 3>, <&dmac1 8>; | ||
19 | dma-names = "rx", "tx"; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/sirf-audio.txt b/Documentation/devicetree/bindings/sound/sirf-audio.txt new file mode 100644 index 000000000000..c88882ca3704 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/sirf-audio.txt | |||
@@ -0,0 +1,41 @@ | |||
1 | * SiRF atlas6 and prima2 internal audio codec and port based audio setups | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "sirf,sirf-audio-card" | ||
5 | - sirf,audio-platform: phandle for the platform node | ||
6 | - sirf,audio-codec: phandle for the SiRF internal codec node | ||
7 | |||
8 | Optional properties: | ||
9 | - hp-pa-gpios: Need to be present if the board need control external | ||
10 | headphone amplifier. | ||
11 | - spk-pa-gpios: Need to be present if the board need control external | ||
12 | speaker amplifier. | ||
13 | - hp-switch-gpios: Need to be present if the board capable to detect jack | ||
14 | insertion, removal. | ||
15 | |||
16 | Available audio endpoints for the audio-routing table: | ||
17 | |||
18 | Board connectors: | ||
19 | * Headset Stereophone | ||
20 | * Ext Spk | ||
21 | * Line In | ||
22 | * Mic | ||
23 | |||
24 | SiRF internal audio codec pins: | ||
25 | * HPOUTL | ||
26 | * HPOUTR | ||
27 | * SPKOUT | ||
28 | * Ext Mic | ||
29 | * Mic Bias | ||
30 | |||
31 | Example: | ||
32 | |||
33 | sound { | ||
34 | compatible = "sirf,sirf-audio-card"; | ||
35 | sirf,audio-codec = <&audiocodec>; | ||
36 | sirf,audio-platform = <&audioport>; | ||
37 | hp-pa-gpios = <&gpio 44 0>; | ||
38 | spk-pa-gpios = <&gpio 46 0>; | ||
39 | hp-switch-gpios = <&gpio 45 0>; | ||
40 | }; | ||
41 | |||
diff --git a/Documentation/devicetree/bindings/sound/tdm-slot.txt b/Documentation/devicetree/bindings/sound/tdm-slot.txt new file mode 100644 index 000000000000..6a2c84247f91 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tdm-slot.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | TDM slot: | ||
2 | |||
3 | This specifies audio DAI's TDM slot. | ||
4 | |||
5 | TDM slot properties: | ||
6 | dai-tdm-slot-num : Number of slots in use. | ||
7 | dai-tdm-slot-width : Width in bits for each slot. | ||
8 | |||
9 | For instance: | ||
10 | dai-tdm-slot-num = <2>; | ||
11 | dai-tdm-slot-width = <8>; | ||
12 | |||
13 | And for each spcified driver, there could be one .of_xlate_tdm_slot_mask() | ||
14 | to specify a explicit mapping of the channels and the slots. If it's absent | ||
15 | the default snd_soc_of_xlate_tdm_slot_mask() will be used to generating the | ||
16 | tx and rx masks. | ||
17 | |||
18 | For snd_soc_of_xlate_tdm_slot_mask(), the tx and rx masks will use a 1 bit | ||
19 | for an active slot as default, and the default active bits are at the LSB of | ||
20 | the masks. | ||
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt b/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt new file mode 100644 index 000000000000..5e2741af27be --- /dev/null +++ b/Documentation/devicetree/bindings/sound/tlv320aic32x4.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | Texas Instruments - tlv320aic32x4 Codec module | ||
2 | |||
3 | The tlv320aic32x4 serial control bus communicates through I2C protocols | ||
4 | |||
5 | Required properties: | ||
6 | - compatible: Should be "ti,tlv320aic32x4" | ||
7 | - reg: I2C slave address | ||
8 | - supply-*: Required supply regulators are: | ||
9 | "iov" - digital IO power supply | ||
10 | "ldoin" - LDO power supply | ||
11 | "dv" - Digital core power supply | ||
12 | "av" - Analog core power supply | ||
13 | If you supply ldoin, dv and av are optional. Otherwise they are required | ||
14 | See regulator/regulator.txt for more information about the detailed binding | ||
15 | format. | ||
16 | |||
17 | Optional properties: | ||
18 | - reset-gpios: Reset-GPIO phandle with args as described in gpio/gpio.txt | ||
19 | - clocks/clock-names: Clock named 'mclk' for the master clock of the codec. | ||
20 | See clock/clock-bindings.txt for information about the detailed format. | ||
21 | |||
22 | |||
23 | Example: | ||
24 | |||
25 | codec: tlv320aic32x4@18 { | ||
26 | compatible = "ti,tlv320aic32x4"; | ||
27 | reg = <0x18>; | ||
28 | clocks = <&clks 201>; | ||
29 | clock-names = "mclk"; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt index 9d8ea14db490..5e6040c2c2e9 100644 --- a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt +++ b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt | |||
@@ -6,7 +6,6 @@ Required properties: | |||
6 | 6 | ||
7 | - compatible - "string" - One of: | 7 | - compatible - "string" - One of: |
8 | "ti,tlv320aic3x" - Generic TLV320AIC3x device | 8 | "ti,tlv320aic3x" - Generic TLV320AIC3x device |
9 | "ti,tlv320aic32x4" - TLV320AIC32x4 | ||
10 | "ti,tlv320aic33" - TLV320AIC33 | 9 | "ti,tlv320aic33" - TLV320AIC33 |
11 | "ti,tlv320aic3007" - TLV320AIC3007 | 10 | "ti,tlv320aic3007" - TLV320AIC3007 |
12 | "ti,tlv320aic3106" - TLV320AIC3106 | 11 | "ti,tlv320aic3106" - TLV320AIC3106 |
diff --git a/Documentation/devicetree/bindings/sound/widgets.txt b/Documentation/devicetree/bindings/sound/widgets.txt new file mode 100644 index 000000000000..b6de5ba3b2de --- /dev/null +++ b/Documentation/devicetree/bindings/sound/widgets.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | Widgets: | ||
2 | |||
3 | This mainly specifies audio off-codec DAPM widgets. | ||
4 | |||
5 | Each entry is a pair of strings in DT: | ||
6 | |||
7 | "template-wname", "user-supplied-wname" | ||
8 | |||
9 | The "template-wname" being the template widget name and currently includes: | ||
10 | "Microphone", "Line", "Headphone" and "Speaker". | ||
11 | |||
12 | The "user-supplied-wname" being the user specified widget name. | ||
13 | |||
14 | For instance: | ||
15 | simple-audio-widgets = | ||
16 | "Microphone", "Microphone Jack", | ||
17 | "Line", "Line In Jack", | ||
18 | "Line", "Line Out Jack", | ||
19 | "Headphone", "Headphone Jack", | ||
20 | "Speaker", "Speaker External"; | ||