Commit 840f0e43 authored by Mark Brown's avatar Mark Brown

Merge remote-tracking branch 'asoc/topic/tegra' into asoc-next

parents 049d4140 b4345006
...@@ -13,6 +13,25 @@ Required properties: ...@@ -13,6 +13,25 @@ Required properties:
- #gpio-cells : Should be two. The first cell is the pin number and the - #gpio-cells : Should be two. The first cell is the pin number and the
second cell is used to specify optional parameters (currently unused). second cell is used to specify optional parameters (currently unused).
Pins on the device (for linking into audio routes):
* SPK_OUTP
* SPK_OUTN
* HP_OUT_L
* HP_OUT_R
* AUX_OUT_P
* AUX_OUT_N
* LINE_IN_L
* LINE_IN_R
* PHONE_P
* PHONE_N
* MIC1_P
* MIC1_N
* MIC2_P
* MIC2_N
* MICBIAS1
* DMICDAT
Example: Example:
alc5632: alc5632@1e { alc5632: alc5632@1e {
......
...@@ -11,28 +11,8 @@ Required properties: ...@@ -11,28 +11,8 @@ Required properties:
- nvidia,audio-routing : A list of the connections between audio components. - nvidia,audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the connection's sink, Each entry is a pair of strings, the first being the connection's sink,
the second being the connection's source. Valid names for sources and the second being the connection's source. Valid names for sources and
sinks are the ALC5632's pins: sinks are the ALC5632's pins as documented in the binding for the device
and:
ALC5632 pins:
* SPK_OUTP
* SPK_OUTN
* HP_OUT_L
* HP_OUT_R
* AUX_OUT_P
* AUX_OUT_N
* LINE_IN_L
* LINE_IN_R
* PHONE_P
* PHONE_N
* MIC1_P
* MIC1_N
* MIC2_P
* MIC2_N
* MICBIAS1
* DMICDAT
Board connectors:
* Headset Stereophone * Headset Stereophone
* Int Spk * Int Spk
......
...@@ -11,32 +11,12 @@ Required properties: ...@@ -11,32 +11,12 @@ Required properties:
- nvidia,audio-routing : A list of the connections between audio components. - nvidia,audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the connection's sink, Each entry is a pair of strings, the first being the connection's sink,
the second being the connection's source. Valid names for sources and the second being the connection's source. Valid names for sources and
sinks are the RT5640's pins, and the jacks on the board: sinks are the RT5640's pins (as documented in its binding), and the jacks
on the board:
RT5640 pins:
* DMIC1
* DMIC2
* MICBIAS1
* IN1P
* IN1R
* IN2P
* IN2R
* HPOL
* HPOR
* LOUTL
* LOUTR
* MONOP
* MONON
* SPOLP
* SPOLN
* SPORP
* SPORN
Board connectors:
* Headphones * Headphones
* Speakers * Speakers
* Mic Jack
- nvidia,i2s-controller : The phandle of the Tegra I2S controller that's - nvidia,i2s-controller : The phandle of the Tegra I2S controller that's
connected to the CODEC. connected to the CODEC.
......
...@@ -11,28 +11,8 @@ Required properties: ...@@ -11,28 +11,8 @@ Required properties:
- nvidia,audio-routing : A list of the connections between audio components. - nvidia,audio-routing : A list of the connections between audio components.
Each entry is a pair of strings, the first being the connection's sink, Each entry is a pair of strings, the first being the connection's sink,
the second being the connection's source. Valid names for sources and the second being the connection's source. Valid names for sources and
sinks are the WM8903's pins, and the jacks on the board: sinks are the WM8903's pins (documented in the WM8903 binding document),
and the jacks on the board:
WM8903 pins:
* IN1L
* IN1R
* IN2L
* IN2R
* IN3L
* IN3R
* DMICDAT
* HPOUTL
* HPOUTR
* LINEOUTL
* LINEOUTR
* LOP
* LON
* ROP
* RON
* MICBIAS
Board connectors:
* Headphone Jack * Headphone Jack
* Int Spk * Int Spk
......
...@@ -18,6 +18,26 @@ Optional properties: ...@@ -18,6 +18,26 @@ Optional properties:
- realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin. - realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin.
Pins on the device (for linking into audio routes):
* DMIC1
* DMIC2
* MICBIAS1
* IN1P
* IN1R
* IN2P
* IN2R
* HPOL
* HPOR
* LOUTL
* LOUTR
* MONOP
* MONON
* SPOLP
* SPOLN
* SPORP
* SPORN
Example: Example:
rt5640 { rt5640 {
......
...@@ -28,6 +28,25 @@ Optional properties: ...@@ -28,6 +28,25 @@ Optional properties:
performed. If any entry has the value 0xffffffff, that GPIO's performed. If any entry has the value 0xffffffff, that GPIO's
configuration will not be modified. configuration will not be modified.
Pins on the device (for linking into audio routes):
* IN1L
* IN1R
* IN2L
* IN2R
* IN3L
* IN3R
* DMICDAT
* HPOUTL
* HPOUTR
* LINEOUTL
* LINEOUTR
* LOP
* LON
* ROP
* RON
* MICBIAS
Example: Example:
codec: wm8903@1a { codec: wm8903@1a {
......
config SND_SOC_TEGRA config SND_SOC_TEGRA
tristate "SoC Audio for the Tegra System-on-Chip" tristate "SoC Audio for the Tegra System-on-Chip"
depends on ARCH_TEGRA && TEGRA20_APB_DMA depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST
select REGMAP_MMIO select REGMAP_MMIO
select SND_SOC_GENERIC_DMAENGINE_PCM if TEGRA20_APB_DMA select SND_SOC_GENERIC_DMAENGINE_PCM
help help
Say Y or M here if you want support for SoC audio on Tegra. Say Y or M here if you want support for SoC audio on Tegra.
...@@ -61,7 +61,7 @@ config SND_SOC_TEGRA30_I2S ...@@ -61,7 +61,7 @@ config SND_SOC_TEGRA30_I2S
config SND_SOC_TEGRA_RT5640 config SND_SOC_TEGRA_RT5640
tristate "SoC Audio support for Tegra boards using an RT5640 codec" tristate "SoC Audio support for Tegra boards using an RT5640 codec"
depends on SND_SOC_TEGRA && I2C depends on SND_SOC_TEGRA && I2C && GPIOLIB
select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC
select SND_SOC_RT5640 select SND_SOC_RT5640
...@@ -71,7 +71,7 @@ config SND_SOC_TEGRA_RT5640 ...@@ -71,7 +71,7 @@ config SND_SOC_TEGRA_RT5640
config SND_SOC_TEGRA_WM8753 config SND_SOC_TEGRA_WM8753
tristate "SoC Audio support for Tegra boards using a WM8753 codec" tristate "SoC Audio support for Tegra boards using a WM8753 codec"
depends on SND_SOC_TEGRA && I2C depends on SND_SOC_TEGRA && I2C && GPIOLIB
select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC
select SND_SOC_WM8753 select SND_SOC_WM8753
...@@ -81,7 +81,7 @@ config SND_SOC_TEGRA_WM8753 ...@@ -81,7 +81,7 @@ config SND_SOC_TEGRA_WM8753
config SND_SOC_TEGRA_WM8903 config SND_SOC_TEGRA_WM8903
tristate "SoC Audio support for Tegra boards using a WM8903 codec" tristate "SoC Audio support for Tegra boards using a WM8903 codec"
depends on SND_SOC_TEGRA && I2C depends on SND_SOC_TEGRA && I2C && GPIOLIB
select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC
select SND_SOC_WM8903 select SND_SOC_WM8903
...@@ -92,7 +92,7 @@ config SND_SOC_TEGRA_WM8903 ...@@ -92,7 +92,7 @@ config SND_SOC_TEGRA_WM8903
config SND_SOC_TEGRA_WM9712 config SND_SOC_TEGRA_WM9712
tristate "SoC Audio support for Tegra boards using a WM9712 codec" tristate "SoC Audio support for Tegra boards using a WM9712 codec"
depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC && GPIOLIB
select SND_SOC_TEGRA20_AC97 select SND_SOC_TEGRA20_AC97
select SND_SOC_WM9712 select SND_SOC_WM9712
help help
...@@ -110,7 +110,7 @@ config SND_SOC_TEGRA_TRIMSLICE ...@@ -110,7 +110,7 @@ config SND_SOC_TEGRA_TRIMSLICE
config SND_SOC_TEGRA_ALC5632 config SND_SOC_TEGRA_ALC5632
tristate "SoC Audio support for Tegra boards using an ALC5632 codec" tristate "SoC Audio support for Tegra boards using an ALC5632 codec"
depends on SND_SOC_TEGRA && I2C depends on SND_SOC_TEGRA && I2C && GPIOLIB
select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC
select SND_SOC_ALC5632 select SND_SOC_ALC5632
help help
......
...@@ -334,12 +334,6 @@ static int tegra20_ac97_platform_probe(struct platform_device *pdev) ...@@ -334,12 +334,6 @@ static int tegra20_ac97_platform_probe(struct platform_device *pdev)
} }
mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); mem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
if (!mem) {
dev_err(&pdev->dev, "No memory resource\n");
ret = -ENODEV;
goto err_clk_put;
}
regs = devm_ioremap_resource(&pdev->dev, mem); regs = devm_ioremap_resource(&pdev->dev, mem);
if (IS_ERR(regs)) { if (IS_ERR(regs)) {
ret = PTR_ERR(regs); ret = PTR_ERR(regs);
...@@ -432,8 +426,6 @@ static int tegra20_ac97_platform_probe(struct platform_device *pdev) ...@@ -432,8 +426,6 @@ static int tegra20_ac97_platform_probe(struct platform_device *pdev)
return 0; return 0;
err_unregister_pcm:
tegra_pcm_platform_unregister(&pdev->dev);
err_unregister_component: err_unregister_component:
snd_soc_unregister_component(&pdev->dev); snd_soc_unregister_component(&pdev->dev);
err_asoc_utils_fini: err_asoc_utils_fini:
......
...@@ -13,8 +13,6 @@ ...@@ -13,8 +13,6 @@
* published by the Free Software Foundation. * published by the Free Software Foundation.
*/ */
#include <asm/mach-types.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/slab.h> #include <linux/slab.h>
......
...@@ -99,6 +99,7 @@ static struct snd_soc_jack_gpio tegra_rt5640_hp_jack_gpio = { ...@@ -99,6 +99,7 @@ static struct snd_soc_jack_gpio tegra_rt5640_hp_jack_gpio = {
static const struct snd_soc_dapm_widget tegra_rt5640_dapm_widgets[] = { static const struct snd_soc_dapm_widget tegra_rt5640_dapm_widgets[] = {
SND_SOC_DAPM_HP("Headphones", NULL), SND_SOC_DAPM_HP("Headphones", NULL),
SND_SOC_DAPM_SPK("Speakers", NULL), SND_SOC_DAPM_SPK("Speakers", NULL),
SND_SOC_DAPM_MIC("Mic Jack", NULL),
}; };
static const struct snd_kcontrol_new tegra_rt5640_controls[] = { static const struct snd_kcontrol_new tegra_rt5640_controls[] = {
......
...@@ -28,8 +28,6 @@ ...@@ -28,8 +28,6 @@
* *
*/ */
#include <asm/mach-types.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
#include <linux/slab.h> #include <linux/slab.h>
......
...@@ -24,8 +24,6 @@ ...@@ -24,8 +24,6 @@
* *
*/ */
#include <asm/mach-types.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/of.h> #include <linux/of.h>
#include <linux/platform_device.h> #include <linux/platform_device.h>
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment