aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/board-cm-t35.c
diff options
context:
space:
mode:
authorIgor Grinberg <grinberg@compulab.co.il>2011-12-13 13:48:51 -0500
committerTony Lindgren <tony@atomide.com>2011-12-13 13:48:51 -0500
commitb74f149cc9f58583ec22ba5180d2b5d00920bfbe (patch)
tree9a80a159192fa1c9a229fcd4b001dcd0f01ee52b /arch/arm/mach-omap2/board-cm-t35.c
parent4390f5b2cb1f568c1d4b3e5bbf57158f6809627a (diff)
ARM: OMAP3: cm-t35: Add regulator for ads7846 touchscreen
ads7846 driver fails to find the regulator supply and as a result the touchscreen is not working. Fix this by adding a regulator supply for the ads7846 driver. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> [tony@atomide.com: updated subject] Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/board-cm-t35.c')
-rw-r--r--arch/arm/mach-omap2/board-cm-t35.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-cm-t35.c b/arch/arm/mach-omap2/board-cm-t35.c
index 510b6a2ff0fa..a4dbbe7adb73 100644
--- a/arch/arm/mach-omap2/board-cm-t35.c
+++ b/arch/arm/mach-omap2/board-cm-t35.c
@@ -343,6 +343,10 @@ static struct regulator_consumer_supply cm_t35_vdvi_supply[] = {
343 REGULATOR_SUPPLY("vdvi", "omapdss"), 343 REGULATOR_SUPPLY("vdvi", "omapdss"),
344}; 344};
345 345
346static struct regulator_consumer_supply cm_t35_vio_supplies[] = {
347 REGULATOR_SUPPLY("vcc", "spi1.0"),
348};
349
346/* VMMC1 for MMC1 pins CMD, CLK, DAT0..DAT3 (20 mA, plus card == max 220 mA) */ 350/* VMMC1 for MMC1 pins CMD, CLK, DAT0..DAT3 (20 mA, plus card == max 220 mA) */
347static struct regulator_init_data cm_t35_vmmc1 = { 351static struct regulator_init_data cm_t35_vmmc1 = {
348 .constraints = { 352 .constraints = {
@@ -373,6 +377,19 @@ static struct regulator_init_data cm_t35_vsim = {
373 .consumer_supplies = cm_t35_vsim_supply, 377 .consumer_supplies = cm_t35_vsim_supply,
374}; 378};
375 379
380static struct regulator_init_data cm_t35_vio = {
381 .constraints = {
382 .min_uV = 1800000,
383 .max_uV = 1800000,
384 .apply_uV = true,
385 .valid_modes_mask = REGULATOR_MODE_NORMAL
386 | REGULATOR_MODE_STANDBY,
387 .valid_ops_mask = REGULATOR_CHANGE_MODE,
388 },
389 .num_consumer_supplies = ARRAY_SIZE(cm_t35_vio_supplies),
390 .consumer_supplies = cm_t35_vio_supplies,
391};
392
376static uint32_t cm_t35_keymap[] = { 393static uint32_t cm_t35_keymap[] = {
377 KEY(0, 0, KEY_A), KEY(0, 1, KEY_B), KEY(0, 2, KEY_LEFT), 394 KEY(0, 0, KEY_A), KEY(0, 1, KEY_B), KEY(0, 2, KEY_LEFT),
378 KEY(1, 0, KEY_UP), KEY(1, 1, KEY_ENTER), KEY(1, 2, KEY_DOWN), 395 KEY(1, 0, KEY_UP), KEY(1, 1, KEY_ENTER), KEY(1, 2, KEY_DOWN),
@@ -456,6 +473,7 @@ static struct twl4030_platform_data cm_t35_twldata = {
456 .gpio = &cm_t35_gpio_data, 473 .gpio = &cm_t35_gpio_data,
457 .vmmc1 = &cm_t35_vmmc1, 474 .vmmc1 = &cm_t35_vmmc1,
458 .vsim = &cm_t35_vsim, 475 .vsim = &cm_t35_vsim,
476 .vio = &cm_t35_vio,
459}; 477};
460 478
461static void __init cm_t35_init_i2c(void) 479static void __init cm_t35_init_i2c(void)