diff options
| -rw-r--r-- | Documentation/devicetree/bindings/sound/alc5632.txt | 19 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt | 24 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt | 26 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt | 24 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/sound/rt5640.txt | 20 | ||||
| -rw-r--r-- | Documentation/devicetree/bindings/sound/wm8903.txt | 19 | ||||
| -rw-r--r-- | sound/soc/tegra/Kconfig | 14 | ||||
| -rw-r--r-- | sound/soc/tegra/tegra20_ac97.c | 8 | ||||
| -rw-r--r-- | sound/soc/tegra/tegra_alc5632.c | 2 | ||||
| -rw-r--r-- | sound/soc/tegra/tegra_rt5640.c | 1 | ||||
| -rw-r--r-- | sound/soc/tegra/tegra_wm8753.c | 2 | ||||
| -rw-r--r-- | sound/soc/tegra/trimslice.c | 2 |
12 files changed, 73 insertions, 88 deletions
diff --git a/Documentation/devicetree/bindings/sound/alc5632.txt b/Documentation/devicetree/bindings/sound/alc5632.txt index 8608f747dcfe..ffd886d110bd 100644 --- a/Documentation/devicetree/bindings/sound/alc5632.txt +++ b/Documentation/devicetree/bindings/sound/alc5632.txt | |||
| @@ -13,6 +13,25 @@ Required properties: | |||
| 13 | - #gpio-cells : Should be two. The first cell is the pin number and the | 13 | - #gpio-cells : Should be two. The first cell is the pin number and the |
| 14 | second cell is used to specify optional parameters (currently unused). | 14 | second cell is used to specify optional parameters (currently unused). |
| 15 | 15 | ||
| 16 | Pins on the device (for linking into audio routes): | ||
| 17 | |||
| 18 | * SPK_OUTP | ||
| 19 | * SPK_OUTN | ||
| 20 | * HP_OUT_L | ||
| 21 | * HP_OUT_R | ||
| 22 | * AUX_OUT_P | ||
| 23 | * AUX_OUT_N | ||
| 24 | * LINE_IN_L | ||
| 25 | * LINE_IN_R | ||
| 26 | * PHONE_P | ||
| 27 | * PHONE_N | ||
| 28 | * MIC1_P | ||
| 29 | * MIC1_N | ||
| 30 | * MIC2_P | ||
| 31 | * MIC2_N | ||
| 32 | * MICBIAS1 | ||
| 33 | * DMICDAT | ||
| 34 | |||
| 16 | Example: | 35 | Example: |
| 17 | 36 | ||
| 18 | alc5632: alc5632@1e { | 37 | alc5632: alc5632@1e { |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt index 05ffecb57103..8b8903ef0800 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-alc5632.txt | |||
| @@ -11,28 +11,8 @@ Required properties: | |||
| 11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
| 12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
| 13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
| 14 | sinks are the ALC5632's pins: | 14 | sinks are the ALC5632's pins as documented in the binding for the device |
| 15 | 15 | and: | |
| 16 | ALC5632 pins: | ||
| 17 | |||
| 18 | * SPK_OUTP | ||
| 19 | * SPK_OUTN | ||
| 20 | * HP_OUT_L | ||
| 21 | * HP_OUT_R | ||
| 22 | * AUX_OUT_P | ||
| 23 | * AUX_OUT_N | ||
| 24 | * LINE_IN_L | ||
| 25 | * LINE_IN_R | ||
| 26 | * PHONE_P | ||
| 27 | * PHONE_N | ||
| 28 | * MIC1_P | ||
| 29 | * MIC1_N | ||
| 30 | * MIC2_P | ||
| 31 | * MIC2_N | ||
| 32 | * MICBIAS1 | ||
| 33 | * DMICDAT | ||
| 34 | |||
| 35 | Board connectors: | ||
| 36 | 16 | ||
| 37 | * Headset Stereophone | 17 | * Headset Stereophone |
| 38 | * Int Spk | 18 | * Int Spk |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt index d130818700b2..dc6224994d69 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5640.txt | |||
| @@ -11,32 +11,12 @@ Required properties: | |||
| 11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
| 12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
| 13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
| 14 | sinks are the RT5640's pins, and the jacks on the board: | 14 | sinks are the RT5640's pins (as documented in its binding), and the jacks |
| 15 | 15 | on the board: | |
| 16 | RT5640 pins: | ||
| 17 | |||
| 18 | * DMIC1 | ||
| 19 | * DMIC2 | ||
| 20 | * MICBIAS1 | ||
| 21 | * IN1P | ||
| 22 | * IN1R | ||
| 23 | * IN2P | ||
| 24 | * IN2R | ||
| 25 | * HPOL | ||
| 26 | * HPOR | ||
| 27 | * LOUTL | ||
| 28 | * LOUTR | ||
| 29 | * MONOP | ||
| 30 | * MONON | ||
| 31 | * SPOLP | ||
| 32 | * SPOLN | ||
| 33 | * SPORP | ||
| 34 | * SPORN | ||
| 35 | |||
| 36 | Board connectors: | ||
| 37 | 16 | ||
| 38 | * Headphones | 17 | * Headphones |
| 39 | * Speakers | 18 | * Speakers |
| 19 | * Mic Jack | ||
| 40 | 20 | ||
| 41 | - nvidia,i2s-controller : The phandle of the Tegra I2S controller that's | 21 | - nvidia,i2s-controller : The phandle of the Tegra I2S controller that's |
| 42 | connected to the CODEC. | 22 | connected to the CODEC. |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt index 3bf722deb722..4b44dfb6ca0d 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-wm8903.txt | |||
| @@ -11,28 +11,8 @@ Required properties: | |||
| 11 | - nvidia,audio-routing : A list of the connections between audio components. | 11 | - nvidia,audio-routing : A list of the connections between audio components. |
| 12 | Each entry is a pair of strings, the first being the connection's sink, | 12 | Each entry is a pair of strings, the first being the connection's sink, |
| 13 | the second being the connection's source. Valid names for sources and | 13 | the second being the connection's source. Valid names for sources and |
| 14 | sinks are the WM8903's pins, and the jacks on the board: | 14 | sinks are the WM8903's pins (documented in the WM8903 binding document), |
| 15 | 15 | and the jacks on the board: | |
| 16 | WM8903 pins: | ||
| 17 | |||
| 18 | * IN1L | ||
| 19 | * IN1R | ||
| 20 | * IN2L | ||
| 21 | * IN2R | ||
| 22 | * IN3L | ||
| 23 | * IN3R | ||
| 24 | * DMICDAT | ||
| 25 | * HPOUTL | ||
| 26 | * HPOUTR | ||
| 27 | * LINEOUTL | ||
| 28 | * LINEOUTR | ||
| 29 | * LOP | ||
| 30 | * LON | ||
| 31 | * ROP | ||
| 32 | * RON | ||
| 33 | * MICBIAS | ||
| 34 | |||
| 35 | Board connectors: | ||
| 36 | 16 | ||
| 37 | * Headphone Jack | 17 | * Headphone Jack |
| 38 | * Int Spk | 18 | * Int Spk |
diff --git a/Documentation/devicetree/bindings/sound/rt5640.txt b/Documentation/devicetree/bindings/sound/rt5640.txt index 005bcb24d72d..068a1141b06f 100644 --- a/Documentation/devicetree/bindings/sound/rt5640.txt +++ b/Documentation/devicetree/bindings/sound/rt5640.txt | |||
| @@ -18,6 +18,26 @@ Optional properties: | |||
| 18 | 18 | ||
| 19 | - realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin. | 19 | - realtek,ldo1-en-gpios : The GPIO that controls the CODEC's LDO1_EN pin. |
| 20 | 20 | ||
| 21 | Pins on the device (for linking into audio routes): | ||
| 22 | |||
| 23 | * DMIC1 | ||
| 24 | * DMIC2 | ||
| 25 | * MICBIAS1 | ||
| 26 | * IN1P | ||
| 27 | * IN1R | ||
| 28 | * IN2P | ||
| 29 | * IN2R | ||
| 30 | * HPOL | ||
| 31 | * HPOR | ||
| 32 | * LOUTL | ||
| 33 | * LOUTR | ||
| 34 | * MONOP | ||
| 35 | * MONON | ||
| 36 | * SPOLP | ||
| 37 | * SPOLN | ||
| 38 | * SPORP | ||
| 39 | * SPORN | ||
| 40 | |||
| 21 | Example: | 41 | Example: |
| 22 | 42 | ||
| 23 | rt5640 { | 43 | rt5640 { |
diff --git a/Documentation/devicetree/bindings/sound/wm8903.txt b/Documentation/devicetree/bindings/sound/wm8903.txt index f102cbc42694..94ec32c194bb 100644 --- a/Documentation/devicetree/bindings/sound/wm8903.txt +++ b/Documentation/devicetree/bindings/sound/wm8903.txt | |||
| @@ -28,6 +28,25 @@ Optional properties: | |||
| 28 | performed. If any entry has the value 0xffffffff, that GPIO's | 28 | performed. If any entry has the value 0xffffffff, that GPIO's |
| 29 | configuration will not be modified. | 29 | configuration will not be modified. |
| 30 | 30 | ||
| 31 | Pins on the device (for linking into audio routes): | ||
| 32 | |||
| 33 | * IN1L | ||
| 34 | * IN1R | ||
| 35 | * IN2L | ||
| 36 | * IN2R | ||
| 37 | * IN3L | ||
| 38 | * IN3R | ||
| 39 | * DMICDAT | ||
| 40 | * HPOUTL | ||
| 41 | * HPOUTR | ||
| 42 | * LINEOUTL | ||
| 43 | * LINEOUTR | ||
| 44 | * LOP | ||
| 45 | * LON | ||
| 46 | * ROP | ||
| 47 | * RON | ||
| 48 | * MICBIAS | ||
| 49 | |||
| 31 | Example: | 50 | Example: |
| 32 | 51 | ||
| 33 | codec: wm8903@1a { | 52 | codec: wm8903@1a { |
diff --git a/sound/soc/tegra/Kconfig b/sound/soc/tegra/Kconfig index 995b120c2cd0..8fc653ca3ab4 100644 --- a/sound/soc/tegra/Kconfig +++ b/sound/soc/tegra/Kconfig | |||
| @@ -1,8 +1,8 @@ | |||
| 1 | config SND_SOC_TEGRA | 1 | config SND_SOC_TEGRA |
| 2 | tristate "SoC Audio for the Tegra System-on-Chip" | 2 | tristate "SoC Audio for the Tegra System-on-Chip" |
| 3 | depends on ARCH_TEGRA && TEGRA20_APB_DMA | 3 | depends on (ARCH_TEGRA && TEGRA20_APB_DMA) || COMPILE_TEST |
| 4 | select REGMAP_MMIO | 4 | select REGMAP_MMIO |
| 5 | select SND_SOC_GENERIC_DMAENGINE_PCM if TEGRA20_APB_DMA | 5 | select SND_SOC_GENERIC_DMAENGINE_PCM |
| 6 | help | 6 | help |
| 7 | Say Y or M here if you want support for SoC audio on Tegra. | 7 | Say Y or M here if you want support for SoC audio on Tegra. |
| 8 | 8 | ||
| @@ -61,7 +61,7 @@ config SND_SOC_TEGRA30_I2S | |||
| 61 | 61 | ||
| 62 | config SND_SOC_TEGRA_RT5640 | 62 | config SND_SOC_TEGRA_RT5640 |
| 63 | tristate "SoC Audio support for Tegra boards using an RT5640 codec" | 63 | tristate "SoC Audio support for Tegra boards using an RT5640 codec" |
| 64 | depends on SND_SOC_TEGRA && I2C | 64 | depends on SND_SOC_TEGRA && I2C && GPIOLIB |
| 65 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC | 65 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC |
| 66 | select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC | 66 | select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC |
| 67 | select SND_SOC_RT5640 | 67 | select SND_SOC_RT5640 |
| @@ -71,7 +71,7 @@ config SND_SOC_TEGRA_RT5640 | |||
| 71 | 71 | ||
| 72 | config SND_SOC_TEGRA_WM8753 | 72 | config SND_SOC_TEGRA_WM8753 |
| 73 | tristate "SoC Audio support for Tegra boards using a WM8753 codec" | 73 | tristate "SoC Audio support for Tegra boards using a WM8753 codec" |
| 74 | depends on SND_SOC_TEGRA && I2C | 74 | depends on SND_SOC_TEGRA && I2C && GPIOLIB |
| 75 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC | 75 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC |
| 76 | select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC | 76 | select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC |
| 77 | select SND_SOC_WM8753 | 77 | select SND_SOC_WM8753 |
| @@ -81,7 +81,7 @@ config SND_SOC_TEGRA_WM8753 | |||
| 81 | 81 | ||
| 82 | config SND_SOC_TEGRA_WM8903 | 82 | config SND_SOC_TEGRA_WM8903 |
| 83 | tristate "SoC Audio support for Tegra boards using a WM8903 codec" | 83 | tristate "SoC Audio support for Tegra boards using a WM8903 codec" |
| 84 | depends on SND_SOC_TEGRA && I2C | 84 | depends on SND_SOC_TEGRA && I2C && GPIOLIB |
| 85 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC | 85 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC |
| 86 | select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC | 86 | select SND_SOC_TEGRA30_I2S if ARCH_TEGRA_3x_SOC |
| 87 | select SND_SOC_WM8903 | 87 | select SND_SOC_WM8903 |
| @@ -92,7 +92,7 @@ config SND_SOC_TEGRA_WM8903 | |||
| 92 | 92 | ||
| 93 | config SND_SOC_TEGRA_WM9712 | 93 | config SND_SOC_TEGRA_WM9712 |
| 94 | tristate "SoC Audio support for Tegra boards using a WM9712 codec" | 94 | tristate "SoC Audio support for Tegra boards using a WM9712 codec" |
| 95 | depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC | 95 | depends on SND_SOC_TEGRA && ARCH_TEGRA_2x_SOC && GPIOLIB |
| 96 | select SND_SOC_TEGRA20_AC97 | 96 | select SND_SOC_TEGRA20_AC97 |
| 97 | select SND_SOC_WM9712 | 97 | select SND_SOC_WM9712 |
| 98 | help | 98 | help |
| @@ -110,7 +110,7 @@ config SND_SOC_TEGRA_TRIMSLICE | |||
| 110 | 110 | ||
| 111 | config SND_SOC_TEGRA_ALC5632 | 111 | config SND_SOC_TEGRA_ALC5632 |
| 112 | tristate "SoC Audio support for Tegra boards using an ALC5632 codec" | 112 | tristate "SoC Audio support for Tegra boards using an ALC5632 codec" |
| 113 | depends on SND_SOC_TEGRA && I2C | 113 | depends on SND_SOC_TEGRA && I2C && GPIOLIB |
| 114 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC | 114 | select SND_SOC_TEGRA20_I2S if ARCH_TEGRA_2x_SOC |
| 115 | select SND_SOC_ALC5632 | 115 | select SND_SOC_ALC5632 |
| 116 | help | 116 | help |
diff --git a/sound/soc/tegra/tegra20_ac97.c b/sound/soc/tegra/tegra20_ac97.c index 6c486625321b..ae27bcd586d2 100644 --- a/sound/soc/tegra/tegra20_ac97.c +++ b/sound/soc/tegra/tegra20_ac97.c | |||
| @@ -334,12 +334,6 @@ static int tegra20_ac97_platform_probe(struct platform_device *pdev) | |||
| 334 | } | 334 | } |
| 335 | 335 | ||
| 336 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 336 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
| 337 | if (!mem) { | ||
| 338 | dev_err(&pdev->dev, "No memory resource\n"); | ||
| 339 | ret = -ENODEV; | ||
| 340 | goto err_clk_put; | ||
| 341 | } | ||
| 342 | |||
| 343 | regs = devm_ioremap_resource(&pdev->dev, mem); | 337 | regs = devm_ioremap_resource(&pdev->dev, mem); |
| 344 | if (IS_ERR(regs)) { | 338 | if (IS_ERR(regs)) { |
| 345 | ret = PTR_ERR(regs); | 339 | ret = PTR_ERR(regs); |
| @@ -432,8 +426,6 @@ static int tegra20_ac97_platform_probe(struct platform_device *pdev) | |||
| 432 | 426 | ||
| 433 | return 0; | 427 | return 0; |
| 434 | 428 | ||
| 435 | err_unregister_pcm: | ||
| 436 | tegra_pcm_platform_unregister(&pdev->dev); | ||
| 437 | err_unregister_component: | 429 | err_unregister_component: |
| 438 | snd_soc_unregister_component(&pdev->dev); | 430 | snd_soc_unregister_component(&pdev->dev); |
| 439 | err_asoc_utils_fini: | 431 | err_asoc_utils_fini: |
diff --git a/sound/soc/tegra/tegra_alc5632.c b/sound/soc/tegra/tegra_alc5632.c index 48d05d9e1002..c61ea3a1030f 100644 --- a/sound/soc/tegra/tegra_alc5632.c +++ b/sound/soc/tegra/tegra_alc5632.c | |||
| @@ -13,8 +13,6 @@ | |||
| 13 | * published by the Free Software Foundation. | 13 | * published by the Free Software Foundation. |
| 14 | */ | 14 | */ |
| 15 | 15 | ||
| 16 | #include <asm/mach-types.h> | ||
| 17 | |||
| 18 | #include <linux/module.h> | 16 | #include <linux/module.h> |
| 19 | #include <linux/platform_device.h> | 17 | #include <linux/platform_device.h> |
| 20 | #include <linux/slab.h> | 18 | #include <linux/slab.h> |
diff --git a/sound/soc/tegra/tegra_rt5640.c b/sound/soc/tegra/tegra_rt5640.c index 08794f915a94..4511c5a875ec 100644 --- a/sound/soc/tegra/tegra_rt5640.c +++ b/sound/soc/tegra/tegra_rt5640.c | |||
| @@ -99,6 +99,7 @@ static struct snd_soc_jack_gpio tegra_rt5640_hp_jack_gpio = { | |||
| 99 | static const struct snd_soc_dapm_widget tegra_rt5640_dapm_widgets[] = { | 99 | static const struct snd_soc_dapm_widget tegra_rt5640_dapm_widgets[] = { |
| 100 | SND_SOC_DAPM_HP("Headphones", NULL), | 100 | SND_SOC_DAPM_HP("Headphones", NULL), |
| 101 | SND_SOC_DAPM_SPK("Speakers", NULL), | 101 | SND_SOC_DAPM_SPK("Speakers", NULL), |
| 102 | SND_SOC_DAPM_MIC("Mic Jack", NULL), | ||
| 102 | }; | 103 | }; |
| 103 | 104 | ||
| 104 | static const struct snd_kcontrol_new tegra_rt5640_controls[] = { | 105 | static const struct snd_kcontrol_new tegra_rt5640_controls[] = { |
diff --git a/sound/soc/tegra/tegra_wm8753.c b/sound/soc/tegra/tegra_wm8753.c index f87fc53e9b8c..8e774d1a243c 100644 --- a/sound/soc/tegra/tegra_wm8753.c +++ b/sound/soc/tegra/tegra_wm8753.c | |||
| @@ -28,8 +28,6 @@ | |||
| 28 | * | 28 | * |
| 29 | */ | 29 | */ |
| 30 | 30 | ||
| 31 | #include <asm/mach-types.h> | ||
| 32 | |||
| 33 | #include <linux/module.h> | 31 | #include <linux/module.h> |
| 34 | #include <linux/platform_device.h> | 32 | #include <linux/platform_device.h> |
| 35 | #include <linux/slab.h> | 33 | #include <linux/slab.h> |
diff --git a/sound/soc/tegra/trimslice.c b/sound/soc/tegra/trimslice.c index 05c68aab5cf0..734bfcd21148 100644 --- a/sound/soc/tegra/trimslice.c +++ b/sound/soc/tegra/trimslice.c | |||
| @@ -24,8 +24,6 @@ | |||
| 24 | * | 24 | * |
| 25 | */ | 25 | */ |
| 26 | 26 | ||
| 27 | #include <asm/mach-types.h> | ||
| 28 | |||
| 29 | #include <linux/module.h> | 27 | #include <linux/module.h> |
| 30 | #include <linux/of.h> | 28 | #include <linux/of.h> |
| 31 | #include <linux/platform_device.h> | 29 | #include <linux/platform_device.h> |
