aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/board-zoom-peripherals.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2/board-zoom-peripherals.c')
-rw-r--r--arch/arm/mach-omap2/board-zoom-peripherals.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-zoom-peripherals.c b/arch/arm/mach-omap2/board-zoom-peripherals.c
index 189a6d1600b2..bc8232845d7a 100644
--- a/arch/arm/mach-omap2/board-zoom-peripherals.c
+++ b/arch/arm/mach-omap2/board-zoom-peripherals.c
@@ -26,6 +26,8 @@
26#include <plat/common.h> 26#include <plat/common.h>
27#include <plat/usb.h> 27#include <plat/usb.h>
28 28
29#include <mach/board-zoom.h>
30
29#include "mux.h" 31#include "mux.h"
30#include "hsmmc.h" 32#include "hsmmc.h"
31 33
@@ -238,6 +240,11 @@ static int zoom_twl_gpio_setup(struct device *dev,
238 return 0; 240 return 0;
239} 241}
240 242
243/* EXTMUTE callback function */
244void zoom2_set_hs_extmute(int mute)
245{
246 gpio_set_value(ZOOM2_HEADSET_EXTMUTE_GPIO, mute);
247}
241 248
242static int zoom_batt_table[] = { 249static int zoom_batt_table[] = {
243/* 0 C*/ 250/* 0 C*/
@@ -307,6 +314,11 @@ static struct i2c_board_info __initdata zoom_i2c_boardinfo[] = {
307 314
308static int __init omap_i2c_init(void) 315static int __init omap_i2c_init(void)
309{ 316{
317 if (machine_is_omap_zoom2()) {
318 zoom_audio_data.ramp_delay_value = 3; /* 161 ms */
319 zoom_audio_data.hs_extmute = 1;
320 zoom_audio_data.set_hs_extmute = zoom2_set_hs_extmute;
321 }
310 omap_register_i2c_bus(1, 2400, zoom_i2c_boardinfo, 322 omap_register_i2c_bus(1, 2400, zoom_i2c_boardinfo,
311 ARRAY_SIZE(zoom_i2c_boardinfo)); 323 ARRAY_SIZE(zoom_i2c_boardinfo));
312 omap_register_i2c_bus(2, 400, NULL, 0); 324 omap_register_i2c_bus(2, 400, NULL, 0);