diff options
author | Philippe Langlais <philippe.langlais@stericsson.com> | 2011-10-12 15:02:50 +0200 |
---|---|---|
committer | Mathieu J. Poirier <mathieu.poirier@linaro.org> | 2011-11-10 11:01:01 -0700 |
commit | 0906cd46da41f896f621a74052c7fdaae62cab98 (patch) | |
tree | 5963b4e213fa64118d2ff3a30fccb415b2a11585 /arch/arm/mach-ux500/board-u5500.c | |
parent | 8ee548b5391e07f5a5a249ac07a61a617ad8bcb6 (diff) |
u5500: board: add regulators
ST-Ericsson Linux next: -
ST-Ericsson ID: WP257121
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I77938bf592016094130cec9f2ab484da2cd55d10
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/20655
Reviewed-by: Vijaya Kumar K-1 <vijay.kilari@stericsson.com>
Reviewed-by: Bengt JONSSON <bengt.g.jonsson@stericsson.com>
Conflicts:
arch/arm/mach-ux500/Makefile
arch/arm/mach-ux500/board-u5500.c
Conflicts:
arch/arm/mach-ux500/Makefile
Diffstat (limited to 'arch/arm/mach-ux500/board-u5500.c')
-rw-r--r-- | arch/arm/mach-ux500/board-u5500.c | 100 |
1 files changed, 51 insertions, 49 deletions
diff --git a/arch/arm/mach-ux500/board-u5500.c b/arch/arm/mach-ux500/board-u5500.c index b79c3eb30d5..e1c4176b20c 100644 --- a/arch/arm/mach-ux500/board-u5500.c +++ b/arch/arm/mach-ux500/board-u5500.c @@ -31,6 +31,7 @@ #include "pins-db5500.h" #include "devices-db5500.h" +#include "board-u5500.h" /* * GPIO @@ -126,7 +127,7 @@ static struct synaptics_rmi4_platform_data rmi4_i2c_platformdata = { .x_flip = false, .y_flip = true, #endif - .regulator_en = false, + .regulator_en = true, }; /* @@ -193,49 +194,6 @@ static struct i2c_board_info __initdata u5500_i2c2_devices[] = { }, }; -static struct resource ab5500_resources[] = { - [0] = { - /*TODO Change this when prcmu driver arrives */ - .start = IRQ_DB5500_AB5500, - .end = IRQ_DB5500_AB5500, - .flags = IORESOURCE_IRQ - } -}; - -static struct ab5500_platform_data ab5500_plf_data = { - .irq = { - .base = IRQ_AB5500_BASE, - .count = AB5500_NR_IRQS, - }, -}; - -static struct platform_device u5500_ab5500_device = { - .name = "ab5500-core", - .id = 0, - .dev = { - .platform_data = &ab5500_plf_data, - }, - .num_resources = 1, - .resource = ab5500_resources, -}; - -static struct platform_device *u5500_platform_devices[] __initdata = { - &u5500_ab5500_device, - &u5500_mcde_device, - &ux500_hwmem_device, - &u5500_b2r2_device, -}; - -static void __init u5500_i2c_init(void) -{ - db5500_add_i2c1(&u5500_i2c1_data); - db5500_add_i2c2(&u5500_i2c2_data); - db5500_add_i2c3(&u5500_i2c3_data); - - i2c_register_board_info(1, ARRAY_AND_SIZE(u5500_i2c1_devices)); - i2c_register_board_info(2, ARRAY_AND_SIZE(u5500_i2c2_devices)); -} - /* * MSP */ @@ -299,6 +257,15 @@ static struct i2s_board_info stm_i2s_board_info[] __initdata = { }, }; +static void __init u5500_msp_init(void) +{ + db5500_add_msp0_i2s(&u5500_msp0_data); + db5500_add_msp1_i2s(&u5500_msp1_data); + db5500_add_msp2_i2s(&u5500_msp2_data); + + i2s_register_board_info(ARRAY_AND_SIZE(stm_i2s_board_info)); +} + /* * SPI */ @@ -313,13 +280,48 @@ static void __init u5500_spi_init(void) db5500_add_spi1(&u5500_spi1_data); } -static void __init u5500_msp_init(void) +static struct resource ab5500_resources[] = { + [0] = { + /*TODO Change this when prcmu driver arrives */ + .start = IRQ_DB5500_AB5500, + .end = IRQ_DB5500_AB5500, + .flags = IORESOURCE_IRQ + } +}; + +static struct ab5500_platform_data ab5500_plf_data = { + .irq = { + .base = IRQ_AB5500_BASE, + .count = AB5500_NR_IRQS, + }, + .regulator = &u5500_ab5500_regulator_data, +}; + +static struct platform_device u5500_ab5500_device = { + .name = "ab5500-core", + .id = 0, + .dev = { + .platform_data = &ab5500_plf_data, + }, + .num_resources = 1, + .resource = ab5500_resources, +}; + +static struct platform_device *u5500_platform_devices[] __initdata = { + &u5500_ab5500_device, + &u5500_mcde_device, + &ux500_hwmem_device, + &u5500_b2r2_device, +}; + +static void __init u5500_i2c_init(void) { - db5500_add_msp0_i2s(&u5500_msp0_data); - db5500_add_msp1_i2s(&u5500_msp1_data); - db5500_add_msp2_i2s(&u5500_msp2_data); + db5500_add_i2c1(&u5500_i2c1_data); + db5500_add_i2c2(&u5500_i2c2_data); + db5500_add_i2c3(&u5500_i2c3_data); - i2s_register_board_info(ARRAY_AND_SIZE(stm_i2s_board_info)); + i2c_register_board_info(1, ARRAY_AND_SIZE(u5500_i2c1_devices)); + i2c_register_board_info(2, ARRAY_AND_SIZE(u5500_i2c2_devices)); } static void __init u5500_uart_init(void) |