diff options
Diffstat (limited to 'arch/arm/mach-omap2/board-zoom-peripherals.c')
-rw-r--r-- | arch/arm/mach-omap2/board-zoom-peripherals.c | 12 |
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 6b3984964cc5..3c6530475710 100644 --- a/arch/arm/mach-omap2/board-zoom-peripherals.c +++ b/arch/arm/mach-omap2/board-zoom-peripherals.c | |||
@@ -24,6 +24,8 @@ | |||
24 | #include <plat/common.h> | 24 | #include <plat/common.h> |
25 | #include <plat/usb.h> | 25 | #include <plat/usb.h> |
26 | 26 | ||
27 | #include <mach/board-zoom.h> | ||
28 | |||
27 | #include "mux.h" | 29 | #include "mux.h" |
28 | #include "hsmmc.h" | 30 | #include "hsmmc.h" |
29 | 31 | ||
@@ -188,6 +190,11 @@ static int zoom_twl_gpio_setup(struct device *dev, | |||
188 | return 0; | 190 | return 0; |
189 | } | 191 | } |
190 | 192 | ||
193 | /* EXTMUTE callback function */ | ||
194 | void zoom2_set_hs_extmute(int mute) | ||
195 | { | ||
196 | gpio_set_value(ZOOM2_HEADSET_EXTMUTE_GPIO, mute); | ||
197 | } | ||
191 | 198 | ||
192 | static int zoom_batt_table[] = { | 199 | static int zoom_batt_table[] = { |
193 | /* 0 C*/ | 200 | /* 0 C*/ |
@@ -257,6 +264,11 @@ static struct i2c_board_info __initdata zoom_i2c_boardinfo[] = { | |||
257 | 264 | ||
258 | static int __init omap_i2c_init(void) | 265 | static int __init omap_i2c_init(void) |
259 | { | 266 | { |
267 | if (machine_is_omap_zoom2()) { | ||
268 | zoom_audio_data.ramp_delay_value = 3; /* 161 ms */ | ||
269 | zoom_audio_data.hs_extmute = 1; | ||
270 | zoom_audio_data.set_hs_extmute = zoom2_set_hs_extmute; | ||
271 | } | ||
260 | omap_register_i2c_bus(1, 2400, zoom_i2c_boardinfo, | 272 | omap_register_i2c_bus(1, 2400, zoom_i2c_boardinfo, |
261 | ARRAY_SIZE(zoom_i2c_boardinfo)); | 273 | ARRAY_SIZE(zoom_i2c_boardinfo)); |
262 | omap_register_i2c_bus(2, 400, NULL, 0); | 274 | omap_register_i2c_bus(2, 400, NULL, 0); |