|
@@ -20,6 +20,7 @@
|
|
|
#include <linux/wl12xx.h>
|
|
|
#include <linux/mmc/host.h>
|
|
|
#include <linux/platform_data/gpio-omap.h>
|
|
|
+#include <linux/platform_data/omap-twl4030.h>
|
|
|
|
|
|
#include <asm/mach-types.h>
|
|
|
#include <asm/mach/arch.h>
|
|
@@ -226,6 +227,19 @@ static struct omap2_hsmmc_info mmc[] = {
|
|
|
{} /* Terminator */
|
|
|
};
|
|
|
|
|
|
+static struct omap_tw4030_pdata omap_twl4030_audio_data = {
|
|
|
+ .voice_connected = true,
|
|
|
+ .custom_routing = true,
|
|
|
+
|
|
|
+ .has_hs = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
|
|
|
+ .has_hf = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
|
|
|
+
|
|
|
+ .has_mainmic = true,
|
|
|
+ .has_submic = true,
|
|
|
+ .has_hsmic = true,
|
|
|
+ .has_linein = OMAP_TWL4030_LEFT | OMAP_TWL4030_RIGHT,
|
|
|
+};
|
|
|
+
|
|
|
static int zoom_twl_gpio_setup(struct device *dev,
|
|
|
unsigned gpio, unsigned ngpio)
|
|
|
{
|
|
@@ -241,6 +255,10 @@ static int zoom_twl_gpio_setup(struct device *dev,
|
|
|
pr_err("Failed to get LCD_PANEL_ENABLE_GPIO (gpio%d).\n",
|
|
|
LCD_PANEL_ENABLE_GPIO);
|
|
|
|
|
|
+ /* Audio setup */
|
|
|
+ omap_twl4030_audio_data.jack_detect = gpio + 2;
|
|
|
+ omap_twl4030_audio_init("Zoom2", &omap_twl4030_audio_data);
|
|
|
+
|
|
|
return ret;
|
|
|
}
|
|
|
|