aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorPeter Ujfalusi <peter.ujfalusi@ti.com>2012-12-05 09:39:35 -0500
committerPeter Ujfalusi <peter.ujfalusi@ti.com>2013-01-22 04:34:55 -0500
commitc5913935657f81b8c9cae93d1a4200bba7faffb8 (patch)
tree7914bc3a43d204d424ec43d67e780ec1d9ff15b8 /arch/arm
parent40234bf733042eb4343cb47c816619758e477eeb (diff)
ARM: OMAP: zoom: Audio support via the common omap-twl4030 machine driver
Use the common omap-twl4030 ASoC machine driver for audio. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
Diffstat (limited to 'arch/arm')
-rw-r--r--arch/arm/mach-omap2/board-zoom-peripherals.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c
index 03ec6b2fbde1..f4ea92649672 100644
--- a/arch/arm/mach-omap2/board-zoom-peripherals.c
+++ b/arch/arm/mach-omap2/board-zoom-peripherals.c
@@ -20,6 +20,7 @@
20#include <linux/wl12xx.h> 20#include <linux/wl12xx.h>
21#include <linux/mmc/host.h> 21#include <linux/mmc/host.h>
22#include <linux/platform_data/gpio-omap.h> 22#include <linux/platform_data/gpio-omap.h>
23#include <linux/platform_data/omap-twl4030.h>
23 24
24#include <asm/mach-types.h> 25#include <asm/mach-types.h>
25#include <asm/mach/arch.h> 26#include <asm/mach/arch.h>
@@ -226,6 +227,19 @@ static struct omap2_hsmmc_info mmc[] = {
226 {} /* Terminator */ 227 {} /* Terminator */
227}; 228};
228 229
230static struct omap_tw4030_pdata omap_twl4030_audio_data = {
231 .voice_connected = true,
232 .custom_routing = true,
233
234 .has_hs = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
235 .has_hf = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
236
237 .has_mainmic = true,
238 .has_submic = true,
239 .has_hsmic = true,
240 .has_linein = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
241};
242
229static int zoom_twl_gpio_setup(struct device *dev, 243static int zoom_twl_gpio_setup(struct device *dev,
230 unsigned gpio, unsigned ngpio) 244 unsigned gpio, unsigned ngpio)
231{ 245{
@@ -241,6 +255,10 @@ static int zoom_twl_gpio_setup(struct device *dev,
241 pr_err("Failed to get LCD_PANEL_ENABLE_GPIO (gpio%d).\n", 255 pr_err("Failed to get LCD_PANEL_ENABLE_GPIO (gpio%d).\n",
242 LCD_PANEL_ENABLE_GPIO); 256 LCD_PANEL_ENABLE_GPIO);
243 257
258 /* Audio setup */
259 omap_twl4030_audio_data.jack_detect = gpio + 2;
260 omap_twl4030_audio_init("Zoom2", &omap_twl4030_audio_data);
261
244 return ret; 262 return ret;
245} 263}
246 264