diff options
| -rw-r--r-- | arch/arm/mach-omap2/board-zoom-peripherals.c | 12 | ||||
| -rw-r--r-- | arch/arm/mach-omap2/board-zoom2.c | 56 |
2 files changed, 12 insertions, 56 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); |
diff --git a/arch/arm/mach-omap2/board-zoom2.c b/arch/arm/mach-omap2/board-zoom2.c index efbcd8fb21ec..00c8f835649f 100644 --- a/arch/arm/mach-omap2/board-zoom2.c +++ b/arch/arm/mach-omap2/board-zoom2.c | |||
| @@ -35,61 +35,6 @@ static void __init omap_zoom2_init_irq(void) | |||
| 35 | omap_gpio_init(); | 35 | omap_gpio_init(); |
| 36 | } | 36 | } |
| 37 | 37 | ||
| 38 | /* EXTMUTE callback function */ | ||
| 39 | void zoom2_set_hs_extmute(int mute) | ||
| 40 | { | ||
| 41 | gpio_set_value(ZOOM2_HEADSET_EXTMUTE_GPIO, mute); | ||
| 42 | } | ||
| 43 | |||
| 44 | static struct twl4030_madc_platform_data zoom2_madc_data = { | ||
| 45 | .irq_line = 1, | ||
| 46 | }; | ||
| 47 | |||
| 48 | static struct twl4030_codec_audio_data zoom2_audio_data = { | ||
| 49 | .audio_mclk = 26000000, | ||
| 50 | .ramp_delay_value = 3, /* 161 ms */ | ||
| 51 | .hs_extmute = 1, | ||
| 52 | .set_hs_extmute = zoom2_set_hs_extmute, | ||
| 53 | }; | ||
| 54 | |||
| 55 | static struct twl4030_codec_data zoom2_codec_data = { | ||
| 56 | .audio_mclk = 26000000, | ||
| 57 | .audio = &zoom2_audio_data, | ||
| 58 | }; | ||
| 59 | |||
| 60 | static struct twl4030_platform_data zoom2_twldata = { | ||
| 61 | .irq_base = TWL4030_IRQ_BASE, | ||
| 62 | .irq_end = TWL4030_IRQ_END, | ||
| 63 | |||
| 64 | /* platform_data for children goes here */ | ||
| 65 | .bci = &zoom2_bci_data, | ||
| 66 | .madc = &zoom2_madc_data, | ||
| 67 | .usb = &zoom2_usb_data, | ||
| 68 | .gpio = &zoom2_gpio_data, | ||
| 69 | .keypad = &zoom2_kp_twl4030_data, | ||
| 70 | .codec = &zoom2_codec_data, | ||
| 71 | .vmmc1 = &zoom2_vmmc1, | ||
| 72 | .vmmc2 = &zoom2_vmmc2, | ||
| 73 | .vsim = &zoom2_vsim, | ||
| 74 | }; | ||
| 75 | |||
| 76 | static struct i2c_board_info __initdata zoom2_i2c_boardinfo[] = { | ||
| 77 | { | ||
| 78 | I2C_BOARD_INFO("twl4030", 0x48), | ||
| 79 | .flags = I2C_CLIENT_WAKE, | ||
| 80 | .irq = INT_34XX_SYS_NIRQ, | ||
| 81 | .platform_data = &zoom2_twldata, | ||
| 82 | }, | ||
| 83 | }; | ||
| 84 | |||
| 85 | static int __init omap3_zoom2_i2c_init(void) | ||
| 86 | { | ||
| 87 | omap_register_i2c_bus(1, 2600, zoom2_i2c_boardinfo, | ||
| 88 | ARRAY_SIZE(zoom2_i2c_boardinfo)); | ||
| 89 | return 0; | ||
| 90 | } | ||
| 91 | |||
| 92 | |||
| 93 | #ifdef CONFIG_OMAP_MUX | 38 | #ifdef CONFIG_OMAP_MUX |
| 94 | static struct omap_board_mux board_mux[] __initdata = { | 39 | static struct omap_board_mux board_mux[] __initdata = { |
| 95 | /* WLAN IRQ - GPIO 162 */ | 40 | /* WLAN IRQ - GPIO 162 */ |
| @@ -156,7 +101,6 @@ static void __init omap_zoom2_init(void) | |||
| 156 | { | 101 | { |
| 157 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); | 102 | omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); |
| 158 | zoom_peripherals_init(); | 103 | zoom_peripherals_init(); |
| 159 | omap3_zoom2_i2c_init(); | ||
| 160 | board_nand_init(zoom_nand_partitions, | 104 | board_nand_init(zoom_nand_partitions, |
| 161 | ARRAY_SIZE(zoom_nand_partitions), ZOOM_NAND_CS); | 105 | ARRAY_SIZE(zoom_nand_partitions), ZOOM_NAND_CS); |
| 162 | zoom_debugboard_init(); | 106 | zoom_debugboard_init(); |
