From cdb8d0cb993aa28eb65e92f81ef44855d2381595 Mon Sep 17 00:00:00 2001 From: Igor Grinberg Date: Wed, 14 Oct 2009 09:20:24 +0200 Subject: [PATCH] --- yaml --- r: 172604 b: refs/heads/master c: 9c017ca1a0782ccfe26bfb36f03a9ba09370d7f7 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/arm/mach-pxa/cm-x300.c | 32 +++++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 3e84bc89dbc8..b6490ae62c6d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: edaa64c906f1e977396d0bd868079ee632583149 +refs/heads/master: 9c017ca1a0782ccfe26bfb36f03a9ba09370d7f7 diff --git a/trunk/arch/arm/mach-pxa/cm-x300.c b/trunk/arch/arm/mach-pxa/cm-x300.c index 2142fe74666c..8aedc60aaa65 100644 --- a/trunk/arch/arm/mach-pxa/cm-x300.c +++ b/trunk/arch/arm/mach-pxa/cm-x300.c @@ -27,6 +27,8 @@ #include #include +#include + #include #include #include @@ -552,6 +554,35 @@ static void __init cm_x300_init_rtc(void) static inline void cm_x300_init_rtc(void) {} #endif +/* DA9030 */ +struct da903x_subdev_info cm_x300_da9030_subdevs[] = { + { + .name = "da903x-backlight", + .id = DA9030_ID_WLED, + } +}; + +static struct da903x_platform_data cm_x300_da9030_info = { + .num_subdevs = ARRAY_SIZE(cm_x300_da9030_subdevs), + .subdevs = cm_x300_da9030_subdevs, +}; + +static struct i2c_board_info cm_x300_pmic_info = { + I2C_BOARD_INFO("da9030", 0x49), + .irq = IRQ_GPIO(0), + .platform_data = &cm_x300_da9030_info, +}; + +static struct i2c_pxa_platform_data cm_x300_pwr_i2c_info = { + .use_pio = 1, +}; + +static void __init cm_x300_init_da9030(void) +{ + pxa3xx_set_i2c_power_info(&cm_x300_pwr_i2c_info); + i2c_register_board_info(1, &cm_x300_pmic_info, 1); +} + static void __init cm_x300_init_wi2wi(void) { int bt_reset, wlan_en; @@ -610,6 +641,7 @@ static void __init cm_x300_init(void) pxa_set_btuart_info(NULL); pxa_set_stuart_info(NULL); + cm_x300_init_da9030(); cm_x300_init_dm9000(); cm_x300_init_lcd(); cm_x300_init_ohci();