diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-08-16 13:42:58 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2010-08-16 13:42:58 -0400 |
commit | e4862f2f6f5653dfb67f3ba2b6f0bc74516ed51a (patch) | |
tree | 1db5a0540a4eecfad9b7daee476b985e82ddc810 /arch/arm/mach-omap2/board-rx51-peripherals.c | |
parent | ec62dbd7eb8e3dddb221da89ecbcea0fc3dee8c1 (diff) | |
parent | b2c1e07b81a126e5846dfc3d36f559d861df59f4 (diff) |
Merge branch 'for-2.6.36' into for-2.6.37
Fairly simple conflicts, the most serious ones are the i.MX ones which I
suspect now need another rename.
Conflicts:
arch/arm/mach-mx2/clock_imx27.c
arch/arm/mach-mx2/devices.c
arch/arm/mach-omap2/board-rx51-peripherals.c
arch/arm/mach-omap2/board-zoom2.c
sound/soc/fsl/mpc5200_dma.c
sound/soc/fsl/mpc5200_dma.h
sound/soc/fsl/mpc8610_hpcd.c
sound/soc/pxa/spitz.c
Diffstat (limited to 'arch/arm/mach-omap2/board-rx51-peripherals.c')
-rw-r--r-- | arch/arm/mach-omap2/board-rx51-peripherals.c | 98 |
1 files changed, 60 insertions, 38 deletions
diff --git a/arch/arm/mach-omap2/board-rx51-peripherals.c b/arch/arm/mach-omap2/board-rx51-peripherals.c index 28978c08bced..897d960fe16f 100644 --- a/arch/arm/mach-omap2/board-rx51-peripherals.c +++ b/arch/arm/mach-omap2/board-rx51-peripherals.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <sound/tlv320aic3x.h> | 26 | #include <sound/tlv320aic3x.h> |
27 | 27 | ||
28 | #include <plat/mcspi.h> | 28 | #include <plat/mcspi.h> |
29 | #include <plat/mux.h> | ||
30 | #include <plat/board.h> | 29 | #include <plat/board.h> |
31 | #include <plat/common.h> | 30 | #include <plat/common.h> |
32 | #include <plat/dma.h> | 31 | #include <plat/dma.h> |
@@ -34,6 +33,11 @@ | |||
34 | #include <plat/onenand.h> | 33 | #include <plat/onenand.h> |
35 | #include <plat/gpmc-smc91x.h> | 34 | #include <plat/gpmc-smc91x.h> |
36 | 35 | ||
36 | #include <sound/tlv320aic3x.h> | ||
37 | #include <sound/tpa6130a2-plat.h> | ||
38 | |||
39 | #include <../drivers/staging/iio/light/tsl2563.h> | ||
40 | |||
37 | #include "mux.h" | 41 | #include "mux.h" |
38 | #include "hsmmc.h" | 42 | #include "hsmmc.h" |
39 | 43 | ||
@@ -52,6 +56,12 @@ enum { | |||
52 | 56 | ||
53 | static struct wl12xx_platform_data wl1251_pdata; | 57 | static struct wl12xx_platform_data wl1251_pdata; |
54 | 58 | ||
59 | #if defined(CONFIG_SENSORS_TSL2563) || defined(CONFIG_SENSORS_TSL2563_MODULE) | ||
60 | static struct tsl2563_platform_data rx51_tsl2563_platform_data = { | ||
61 | .cover_comp_gain = 16, | ||
62 | }; | ||
63 | #endif | ||
64 | |||
55 | static struct omap2_mcspi_device_config wl1251_mcspi_config = { | 65 | static struct omap2_mcspi_device_config wl1251_mcspi_config = { |
56 | .turbo_mode = 0, | 66 | .turbo_mode = 0, |
57 | .single_channel = 1, | 67 | .single_channel = 1, |
@@ -176,6 +186,10 @@ static void __init rx51_add_gpio_keys(void) | |||
176 | #endif /* CONFIG_KEYBOARD_GPIO || CONFIG_KEYBOARD_GPIO_MODULE */ | 186 | #endif /* CONFIG_KEYBOARD_GPIO || CONFIG_KEYBOARD_GPIO_MODULE */ |
177 | 187 | ||
178 | static int board_keymap[] = { | 188 | static int board_keymap[] = { |
189 | /* | ||
190 | * Note that KEY(x, 8, KEY_XXX) entries represent "entrire row | ||
191 | * connected to the ground" matrix state. | ||
192 | */ | ||
179 | KEY(0, 0, KEY_Q), | 193 | KEY(0, 0, KEY_Q), |
180 | KEY(0, 1, KEY_O), | 194 | KEY(0, 1, KEY_O), |
181 | KEY(0, 2, KEY_P), | 195 | KEY(0, 2, KEY_P), |
@@ -183,6 +197,7 @@ static int board_keymap[] = { | |||
183 | KEY(0, 4, KEY_BACKSPACE), | 197 | KEY(0, 4, KEY_BACKSPACE), |
184 | KEY(0, 6, KEY_A), | 198 | KEY(0, 6, KEY_A), |
185 | KEY(0, 7, KEY_S), | 199 | KEY(0, 7, KEY_S), |
200 | |||
186 | KEY(1, 0, KEY_W), | 201 | KEY(1, 0, KEY_W), |
187 | KEY(1, 1, KEY_D), | 202 | KEY(1, 1, KEY_D), |
188 | KEY(1, 2, KEY_F), | 203 | KEY(1, 2, KEY_F), |
@@ -191,6 +206,7 @@ static int board_keymap[] = { | |||
191 | KEY(1, 5, KEY_J), | 206 | KEY(1, 5, KEY_J), |
192 | KEY(1, 6, KEY_K), | 207 | KEY(1, 6, KEY_K), |
193 | KEY(1, 7, KEY_L), | 208 | KEY(1, 7, KEY_L), |
209 | |||
194 | KEY(2, 0, KEY_E), | 210 | KEY(2, 0, KEY_E), |
195 | KEY(2, 1, KEY_DOT), | 211 | KEY(2, 1, KEY_DOT), |
196 | KEY(2, 2, KEY_UP), | 212 | KEY(2, 2, KEY_UP), |
@@ -198,6 +214,8 @@ static int board_keymap[] = { | |||
198 | KEY(2, 5, KEY_Z), | 214 | KEY(2, 5, KEY_Z), |
199 | KEY(2, 6, KEY_X), | 215 | KEY(2, 6, KEY_X), |
200 | KEY(2, 7, KEY_C), | 216 | KEY(2, 7, KEY_C), |
217 | KEY(2, 8, KEY_F9), | ||
218 | |||
201 | KEY(3, 0, KEY_R), | 219 | KEY(3, 0, KEY_R), |
202 | KEY(3, 1, KEY_V), | 220 | KEY(3, 1, KEY_V), |
203 | KEY(3, 2, KEY_B), | 221 | KEY(3, 2, KEY_B), |
@@ -206,20 +224,23 @@ static int board_keymap[] = { | |||
206 | KEY(3, 5, KEY_SPACE), | 224 | KEY(3, 5, KEY_SPACE), |
207 | KEY(3, 6, KEY_SPACE), | 225 | KEY(3, 6, KEY_SPACE), |
208 | KEY(3, 7, KEY_LEFT), | 226 | KEY(3, 7, KEY_LEFT), |
227 | |||
209 | KEY(4, 0, KEY_T), | 228 | KEY(4, 0, KEY_T), |
210 | KEY(4, 1, KEY_DOWN), | 229 | KEY(4, 1, KEY_DOWN), |
211 | KEY(4, 2, KEY_RIGHT), | 230 | KEY(4, 2, KEY_RIGHT), |
212 | KEY(4, 4, KEY_LEFTCTRL), | 231 | KEY(4, 4, KEY_LEFTCTRL), |
213 | KEY(4, 5, KEY_RIGHTALT), | 232 | KEY(4, 5, KEY_RIGHTALT), |
214 | KEY(4, 6, KEY_LEFTSHIFT), | 233 | KEY(4, 6, KEY_LEFTSHIFT), |
234 | KEY(4, 8, KEY_F10), | ||
235 | |||
215 | KEY(5, 0, KEY_Y), | 236 | KEY(5, 0, KEY_Y), |
237 | KEY(5, 8, KEY_F11), | ||
238 | |||
216 | KEY(6, 0, KEY_U), | 239 | KEY(6, 0, KEY_U), |
240 | |||
217 | KEY(7, 0, KEY_I), | 241 | KEY(7, 0, KEY_I), |
218 | KEY(7, 1, KEY_F7), | 242 | KEY(7, 1, KEY_F7), |
219 | KEY(7, 2, KEY_F8), | 243 | KEY(7, 2, KEY_F8), |
220 | KEY(0xff, 2, KEY_F9), | ||
221 | KEY(0xff, 4, KEY_F10), | ||
222 | KEY(0xff, 5, KEY_F11), | ||
223 | }; | 244 | }; |
224 | 245 | ||
225 | static struct matrix_keymap_data board_map_data = { | 246 | static struct matrix_keymap_data board_map_data = { |
@@ -301,48 +322,29 @@ static struct omap2_hsmmc_info mmc[] __initdata = { | |||
301 | {} /* Terminator */ | 322 | {} /* Terminator */ |
302 | }; | 323 | }; |
303 | 324 | ||
304 | static struct regulator_consumer_supply rx51_vmmc1_supply = { | 325 | static struct regulator_consumer_supply rx51_vmmc1_supply = |
305 | .supply = "vmmc", | 326 | REGULATOR_SUPPLY("vmmc", "mmci-omap-hs.0"); |
306 | .dev_name = "mmci-omap-hs.0", | ||
307 | }; | ||
308 | 327 | ||
309 | static struct regulator_consumer_supply rx51_vaux3_supply = { | 328 | static struct regulator_consumer_supply rx51_vaux3_supply = |
310 | .supply = "vmmc", | 329 | REGULATOR_SUPPLY("vmmc", "mmci-omap-hs.1"); |
311 | .dev_name = "mmci-omap-hs.1", | ||
312 | }; | ||
313 | 330 | ||
314 | static struct regulator_consumer_supply rx51_vsim_supply = { | 331 | static struct regulator_consumer_supply rx51_vsim_supply = |
315 | .supply = "vmmc_aux", | 332 | REGULATOR_SUPPLY("vmmc_aux", "mmci-omap-hs.1"); |
316 | .dev_name = "mmci-omap-hs.1", | ||
317 | }; | ||
318 | 333 | ||
319 | static struct regulator_consumer_supply rx51_vmmc2_supplies[] = { | 334 | static struct regulator_consumer_supply rx51_vmmc2_supplies[] = { |
320 | /* tlv320aic3x analog supplies */ | 335 | /* tlv320aic3x analog supplies */ |
321 | { | 336 | REGULATOR_SUPPLY("AVDD", "2-0018"), |
322 | .supply = "AVDD", | 337 | REGULATOR_SUPPLY("DRVDD", "2-0018"), |
323 | .dev_name = "2-0018", | 338 | /* tpa6130a2 */ |
324 | }, | 339 | REGULATOR_SUPPLY("Vdd", "2-0060"), |
325 | { | ||
326 | .supply = "DRVDD", | ||
327 | .dev_name = "2-0018", | ||
328 | }, | ||
329 | /* Keep vmmc as last item. It is not iterated for newer boards */ | 340 | /* Keep vmmc as last item. It is not iterated for newer boards */ |
330 | { | 341 | REGULATOR_SUPPLY("vmmc", "mmci-omap-hs.1"), |
331 | .supply = "vmmc", | ||
332 | .dev_name = "mmci-omap-hs.1", | ||
333 | }, | ||
334 | }; | 342 | }; |
335 | 343 | ||
336 | static struct regulator_consumer_supply rx51_vio_supplies[] = { | 344 | static struct regulator_consumer_supply rx51_vio_supplies[] = { |
337 | /* tlv320aic3x digital supplies */ | 345 | /* tlv320aic3x digital supplies */ |
338 | { | 346 | REGULATOR_SUPPLY("IOVDD", "2-0018"), |
339 | .supply = "IOVDD", | 347 | REGULATOR_SUPPLY("DVDD", "2-0018"), |
340 | .dev_name = "2-0018" | ||
341 | }, | ||
342 | { | ||
343 | .supply = "DVDD", | ||
344 | .dev_name = "2-0018" | ||
345 | }, | ||
346 | }; | 348 | }; |
347 | 349 | ||
348 | #if defined(CONFIG_FB_OMAP2) || defined(CONFIG_FB_OMAP2_MODULE) | 350 | #if defined(CONFIG_FB_OMAP2) || defined(CONFIG_FB_OMAP2_MODULE) |
@@ -363,6 +365,7 @@ static struct regulator_init_data rx51_vaux1 = { | |||
363 | .name = "V28", | 365 | .name = "V28", |
364 | .min_uV = 2800000, | 366 | .min_uV = 2800000, |
365 | .max_uV = 2800000, | 367 | .max_uV = 2800000, |
368 | .always_on = true, /* due battery cover sensor */ | ||
366 | .valid_modes_mask = REGULATOR_MODE_NORMAL | 369 | .valid_modes_mask = REGULATOR_MODE_NORMAL |
367 | | REGULATOR_MODE_STANDBY, | 370 | | REGULATOR_MODE_STANDBY, |
368 | .valid_ops_mask = REGULATOR_CHANGE_MODE | 371 | .valid_ops_mask = REGULATOR_CHANGE_MODE |
@@ -707,6 +710,15 @@ static struct twl4030_platform_data rx51_twldata __initdata = { | |||
707 | .vio = &rx51_vio, | 710 | .vio = &rx51_vio, |
708 | }; | 711 | }; |
709 | 712 | ||
713 | static struct aic3x_pdata rx51_aic3x_data __initdata = { | ||
714 | .gpio_reset = 60, | ||
715 | }; | ||
716 | |||
717 | static struct tpa6130a2_platform_data rx51_tpa6130a2_data __initdata = { | ||
718 | .id = TPA6130A2, | ||
719 | .power_gpio = 98, | ||
720 | }; | ||
721 | |||
710 | static struct i2c_board_info __initdata rx51_peripherals_i2c_board_info_1[] = { | 722 | static struct i2c_board_info __initdata rx51_peripherals_i2c_board_info_1[] = { |
711 | { | 723 | { |
712 | I2C_BOARD_INFO("twl5030", 0x48), | 724 | I2C_BOARD_INFO("twl5030", 0x48), |
@@ -722,7 +734,7 @@ static struct aic3x_setup_data rx51_aic34_setup = { | |||
722 | .gpio_func[1] = AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT, | 734 | .gpio_func[1] = AIC3X_GPIO2_FUNC_DIGITAL_MIC_INPUT, |
723 | }; | 735 | }; |
724 | 736 | ||
725 | static struct aic3x_pdata rx51_aic34_data = { | 737 | static struct aic3x_pdata rx51_aic3x_data = { |
726 | .setup = &rx51_aic34_setup, | 738 | .setup = &rx51_aic34_setup, |
727 | .gpio_reset = 60, | 739 | .gpio_reset = 60, |
728 | }; | 740 | }; |
@@ -730,8 +742,18 @@ static struct aic3x_pdata rx51_aic34_data = { | |||
730 | static struct i2c_board_info __initdata rx51_peripherals_i2c_board_info_2[] = { | 742 | static struct i2c_board_info __initdata rx51_peripherals_i2c_board_info_2[] = { |
731 | { | 743 | { |
732 | I2C_BOARD_INFO("tlv320aic3x", 0x18), | 744 | I2C_BOARD_INFO("tlv320aic3x", 0x18), |
733 | .platform_data = &rx51_aic34_data, | 745 | .platform_data = &rx51_aic3x_data, |
734 | }, | 746 | }, |
747 | #if defined(CONFIG_SENSORS_TSL2563) || defined(CONFIG_SENSORS_TSL2563_MODULE) | ||
748 | { | ||
749 | I2C_BOARD_INFO("tsl2563", 0x29), | ||
750 | .platform_data = &rx51_tsl2563_platform_data, | ||
751 | }, | ||
752 | #endif | ||
753 | { | ||
754 | I2C_BOARD_INFO("tpa6130a2", 0x60), | ||
755 | .platform_data = &rx51_tpa6130a2_data, | ||
756 | } | ||
735 | }; | 757 | }; |
736 | 758 | ||
737 | static int __init rx51_i2c_init(void) | 759 | static int __init rx51_i2c_init(void) |