Skip to content

Commit

Permalink
Merge tag 'asoc-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/g…
Browse files Browse the repository at this point in the history
…it/broonie/sound into for-linus

ASoC: Updates for v3.19

Lots and lots of changes this time around, the usual set of driver
updates and a huge bulk of cleanups from Lars-Peter.  Probably the most
interesting thing for most users is the Intel driver updates which will
(with some more machine integration work) enable support for newer x86
laptops.

 - Conversion of AC'97 drivers to use regmap, bringing us closer to the
   removal of the ASoC level I/O code.
 - Clean up a lot of old drivers that were open coding things that have
   subsequently been implemented in the core.
 - Some DAPM performance improvements.
 - Removal of the now seldom used CODEC mutex.
 - Lots of updates for the newer Intel SoC support, including support
   for the DSP and some Cherrytrail and Braswell machine drivers.
 - Support for Samsung boards using rt5631 as the CODEC.
 - Removal of the obsolete AFEB9260 machine driver.
 - Driver support for the TI TS3A227E headset driver used in some
   Chrombeooks.
  • Loading branch information
Takashi Iwai committed Dec 8, 2014
2 parents 77de61c + 1810afd commit e5edba4
Show file tree
Hide file tree
Showing 302 changed files with 17,930 additions and 6,137 deletions.
24 changes: 24 additions & 0 deletions Documentation/devicetree/bindings/sound/arndale.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
Audio Binding for Arndale boards

Required properties:
- compatible : Can be the following,
"samsung,arndale-rt5631"

- samsung,audio-cpu: The phandle of the Samsung I2S controller
- samsung,audio-codec: The phandle of the audio codec

Optional:
- samsung,model: The name of the sound-card

Arndale Boards has many audio daughter cards, one of them is
rt5631/alc5631. Below example shows audio bindings for rt5631/
alc5631 based codec.

Example:

sound {
compatible = "samsung,arndale-rt5631";

samsung,audio-cpu = <&i2s0>
samsung,audio-codec = <&rt5631>;
};
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ Optional properties:
- rx-num-evt : FIFO levels.
- sram-size-playback : size of sram to be allocated during playback
- sram-size-capture : size of sram to be allocated during capture
- interrupts : Interrupt numbers for McASP, currently not used by the driver
- interrupts : Interrupt numbers for McASP
- interrupt-names : Known interrupt names are "tx" and "rx"
- pinctrl-0: Should specify pin control group used for this controller.
- pinctrl-names: Should contain only one value - "default", for more details
Expand Down
15 changes: 10 additions & 5 deletions Documentation/devicetree/bindings/sound/eukrea-tlv320.txt
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
Audio complex for Eukrea boards with tlv320aic23 codec.

Required properties:
- compatible : "eukrea,asoc-tlv320"
- eukrea,model : The user-visible name of this sound complex.
- ssi-controller : The phandle of the SSI controller.
- fsl,mux-int-port : The internal port of the i.MX audio muxer (AUDMUX).
- fsl,mux-ext-port : The external port of the i.MX audio muxer.

- compatible : "eukrea,asoc-tlv320"

- eukrea,model : The user-visible name of this sound complex.

- ssi-controller : The phandle of the SSI controller.

- fsl,mux-int-port : The internal port of the i.MX audio muxer (AUDMUX).

- fsl,mux-ext-port : The external port of the i.MX audio muxer.

Note: The AUDMUX port numbering should start at 1, which is consistent with
hardware manual.
Expand Down
44 changes: 23 additions & 21 deletions Documentation/devicetree/bindings/sound/fsl,esai.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,37 +7,39 @@ other DSPs. It has up to six transmitters and four receivers.

Required properties:

- compatible : Compatible list, must contain "fsl,imx35-esai" or
"fsl,vf610-esai"
- compatible : Compatible list, must contain "fsl,imx35-esai" or
"fsl,vf610-esai"

- reg : Offset and length of the register set for the device.
- reg : Offset and length of the register set for the device.

- interrupts : Contains the spdif interrupt.
- interrupts : Contains the spdif interrupt.

- dmas : Generic dma devicetree binding as described in
Documentation/devicetree/bindings/dma/dma.txt.
- dmas : Generic dma devicetree binding as described in
Documentation/devicetree/bindings/dma/dma.txt.

- dma-names : Two dmas have to be defined, "tx" and "rx".
- dma-names : Two dmas have to be defined, "tx" and "rx".

- clocks: Contains an entry for each entry in clock-names.
- clocks : Contains an entry for each entry in clock-names.

- clock-names : Includes the following entries:
"core" The core clock used to access registers
"extal" The esai baud clock for esai controller used to derive
HCK, SCK and FS.
"fsys" The system clock derived from ahb clock used to derive
HCK, SCK and FS.
- clock-names : Includes the following entries:
"core" The core clock used to access registers
"extal" The esai baud clock for esai controller used to
derive HCK, SCK and FS.
"fsys" The system clock derived from ahb clock used to
derive HCK, SCK and FS.

- fsl,fifo-depth: The number of elements in the transmit and receive FIFOs.
This number is the maximum allowed value for TFCR[TFWM] or RFCR[RFWM].
- fsl,fifo-depth : The number of elements in the transmit and receive
FIFOs. This number is the maximum allowed value for
TFCR[TFWM] or RFCR[RFWM].

- fsl,esai-synchronous: This is a boolean property. If present, indicating
that ESAI would work in the synchronous mode, which means all the settings
for Receiving would be duplicated from Transmition related registers.
that ESAI would work in the synchronous mode, which
means all the settings for Receiving would be
duplicated from Transmition related registers.

- big-endian : If this property is absent, the native endian mode will
be in use as default, or the big endian mode will be in use for all the
device registers.
- big-endian : If this property is absent, the native endian mode
will be in use as default, or the big endian mode
will be in use for all the device registers.

Example:

Expand Down
37 changes: 18 additions & 19 deletions Documentation/devicetree/bindings/sound/fsl,spdif.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,32 +6,31 @@ a fibre cable.

Required properties:

- compatible : Compatible list, must contain "fsl,imx35-spdif".
- compatible : Compatible list, must contain "fsl,imx35-spdif".

- reg : Offset and length of the register set for the device.
- reg : Offset and length of the register set for the device.

- interrupts : Contains the spdif interrupt.
- interrupts : Contains the spdif interrupt.

- dmas : Generic dma devicetree binding as described in
Documentation/devicetree/bindings/dma/dma.txt.
- dmas : Generic dma devicetree binding as described in
Documentation/devicetree/bindings/dma/dma.txt.

- dma-names : Two dmas have to be defined, "tx" and "rx".
- dma-names : Two dmas have to be defined, "tx" and "rx".

- clocks : Contains an entry for each entry in clock-names.
- clocks : Contains an entry for each entry in clock-names.

- clock-names : Includes the following entries:
"core" The core clock of spdif controller
"rxtx<0-7>" Clock source list for tx and rx clock.
This clock list should be identical to
the source list connecting to the spdif
clock mux in "SPDIF Transceiver Clock
Diagram" of SoC reference manual. It
can also be referred to TxClk_Source
bit of register SPDIF_STC.
- clock-names : Includes the following entries:
"core" The core clock of spdif controller.
"rxtx<0-7>" Clock source list for tx and rx clock.
This clock list should be identical to the source
list connecting to the spdif clock mux in "SPDIF
Transceiver Clock Diagram" of SoC reference manual.
It can also be referred to TxClk_Source bit of
register SPDIF_STC.

- big-endian : If this property is absent, the native endian mode will
be in use as default, or the big endian mode will be in use for all the
device registers.
- big-endian : If this property is absent, the native endian mode
will be in use as default, or the big endian mode
will be in use for all the device registers.

Example:

Expand Down
66 changes: 41 additions & 25 deletions Documentation/devicetree/bindings/sound/fsl-sai.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,32 +5,48 @@ which provides a synchronous audio interface that supports fullduplex
serial interfaces with frame synchronization such as I2S, AC97, TDM, and
codec/DSP interfaces.


Required properties:
- compatible: Compatible list, contains "fsl,vf610-sai" or "fsl,imx6sx-sai".
- reg: Offset and length of the register set for the device.
- clocks: Must contain an entry for each entry in clock-names.
- clock-names : Must include the "bus" for register access and "mclk1" "mclk2"
"mclk3" for bit clock and frame clock providing.
- dmas : Generic dma devicetree binding as described in
Documentation/devicetree/bindings/dma/dma.txt.
- dma-names : Two dmas have to be defined, "tx" and "rx".
- pinctrl-names: Must contain a "default" entry.
- pinctrl-NNN: One property must exist for each entry in pinctrl-names.
See ../pinctrl/pinctrl-bindings.txt for details of the property values.
- big-endian: Boolean property, required if all the FTM_PWM registers
are big-endian rather than little-endian.
- lsb-first: Configures whether the LSB or the MSB is transmitted first for
the fifo data. If this property is absent, the MSB is transmitted first as
default, or the LSB is transmitted first.
- fsl,sai-synchronous-rx: This is a boolean property. If present, indicating
that SAI will work in the synchronous mode (sync Tx with Rx) which means
both the transimitter and receiver will send and receive data by following
receiver's bit clocks and frame sync clocks.
- fsl,sai-asynchronous: This is a boolean property. If present, indicating
that SAI will work in the asynchronous mode, which means both transimitter
and receiver will send and receive data by following their own bit clocks
and frame sync clocks separately.

- compatible : Compatible list, contains "fsl,vf610-sai" or
"fsl,imx6sx-sai".

- reg : Offset and length of the register set for the device.

- clocks : Must contain an entry for each entry in clock-names.

- clock-names : Must include the "bus" for register access and
"mclk1", "mclk2", "mclk3" for bit clock and frame
clock providing.
- dmas : Generic dma devicetree binding as described in
Documentation/devicetree/bindings/dma/dma.txt.

- dma-names : Two dmas have to be defined, "tx" and "rx".

- pinctrl-names : Must contain a "default" entry.

- pinctrl-NNN : One property must exist for each entry in
pinctrl-names. See ../pinctrl/pinctrl-bindings.txt
for details of the property values.

- big-endian : Boolean property, required if all the FTM_PWM
registers are big-endian rather than little-endian.

- lsb-first : Configures whether the LSB or the MSB is transmitted
first for the fifo data. If this property is absent,
the MSB is transmitted first as default, or the LSB
is transmitted first.

- fsl,sai-synchronous-rx: This is a boolean property. If present, indicating
that SAI will work in the synchronous mode (sync Tx
with Rx) which means both the transimitter and the
receiver will send and receive data by following
receiver's bit clocks and frame sync clocks.

- fsl,sai-asynchronous: This is a boolean property. If present, indicating
that SAI will work in the asynchronous mode, which
means both transimitter and receiver will send and
receive data by following their own bit clocks and
frame sync clocks separately.

Note:
- If both fsl,sai-asynchronous and fsl,sai-synchronous-rx are absent, the
Expand Down
61 changes: 34 additions & 27 deletions Documentation/devicetree/bindings/sound/imx-audio-sgtl5000.txt
Original file line number Diff line number Diff line change
@@ -1,33 +1,40 @@
Freescale i.MX audio complex with SGTL5000 codec

Required properties:
- compatible : "fsl,imx-audio-sgtl5000"
- model : The user-visible name of this sound complex
- ssi-controller : The phandle of the i.MX SSI controller
- audio-codec : The phandle of the SGTL5000 audio codec
- audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the connection's sink,
the second being the connection's source. Valid names could be power
supplies, SGTL5000 pins, and the jacks on the board:

Power supplies:
* Mic Bias

SGTL5000 pins:
* MIC_IN
* LINE_IN
* HP_OUT
* LINE_OUT

Board connectors:
* Mic Jack
* Line In Jack
* Headphone Jack
* Line Out Jack
* Ext Spk

- mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)
- mux-ext-port : The external port of the i.MX audio muxer

- compatible : "fsl,imx-audio-sgtl5000"

- model : The user-visible name of this sound complex

- ssi-controller : The phandle of the i.MX SSI controller

- audio-codec : The phandle of the SGTL5000 audio codec

- audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the
connection's sink, the second being the connection's
source. Valid names could be power supplies, SGTL5000
pins, and the jacks on the board:

Power supplies:
* Mic Bias

SGTL5000 pins:
* MIC_IN
* LINE_IN
* HP_OUT
* LINE_OUT

Board connectors:
* Mic Jack
* Line In Jack
* Headphone Jack
* Line Out Jack
* Ext Spk

- mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)

- mux-ext-port : The external port of the i.MX audio muxer

Note: The AUDMUX port numbering should start at 1, which is consistent with
hardware manual.
Expand Down
22 changes: 12 additions & 10 deletions Documentation/devicetree/bindings/sound/imx-audio-spdif.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,25 @@ Freescale i.MX audio complex with S/PDIF transceiver

Required properties:

- compatible : "fsl,imx-audio-spdif"
- compatible : "fsl,imx-audio-spdif"

- model : The user-visible name of this sound complex
- model : The user-visible name of this sound complex

- spdif-controller : The phandle of the i.MX S/PDIF controller
- spdif-controller : The phandle of the i.MX S/PDIF controller


Optional properties:

- spdif-out : This is a boolean property. If present, the transmitting
function of S/PDIF will be enabled, indicating there's a physical
S/PDIF out connector/jack on the board or it's connecting to some
other IP block, such as an HDMI encoder/display-controller.
- spdif-out : This is a boolean property. If present, the
transmitting function of S/PDIF will be enabled,
indicating there's a physical S/PDIF out connector
or jack on the board or it's connecting to some
other IP block, such as an HDMI encoder or
display-controller.

- spdif-in : This is a boolean property. If present, the receiving
function of S/PDIF will be enabled, indicating there's a physical
S/PDIF in connector/jack on the board.
- spdif-in : This is a boolean property. If present, the receiving
function of S/PDIF will be enabled, indicating there
is a physical S/PDIF in connector/jack on the board.

* Note: At least one of these two properties should be set in the DT binding.

Expand Down
45 changes: 26 additions & 19 deletions Documentation/devicetree/bindings/sound/imx-audio-wm8962.txt
Original file line number Diff line number Diff line change
@@ -1,25 +1,32 @@
Freescale i.MX audio complex with WM8962 codec

Required properties:
- compatible : "fsl,imx-audio-wm8962"
- model : The user-visible name of this sound complex
- ssi-controller : The phandle of the i.MX SSI controller
- audio-codec : The phandle of the WM8962 audio codec
- audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the connection's sink,
the second being the connection's source. Valid names could be power
supplies, WM8962 pins, and the jacks on the board:

Power supplies:
* Mic Bias

Board connectors:
* Mic Jack
* Headphone Jack
* Ext Spk

- mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)
- mux-ext-port : The external port of the i.MX audio muxer

- compatible : "fsl,imx-audio-wm8962"

- model : The user-visible name of this sound complex

- ssi-controller : The phandle of the i.MX SSI controller

- audio-codec : The phandle of the WM8962 audio codec

- audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the
connection's sink, the second being the connection's
source. Valid names could be power supplies, WM8962
pins, and the jacks on the board:

Power supplies:
* Mic Bias

Board connectors:
* Mic Jack
* Headphone Jack
* Ext Spk

- mux-int-port : The internal port of the i.MX audio muxer (AUDMUX)

- mux-ext-port : The external port of the i.MX audio muxer

Note: The AUDMUX port numbering should start at 1, which is consistent with
hardware manual.
Expand Down
Loading

0 comments on commit e5edba4

Please sign in to comment.