diff options
Diffstat (limited to 'include/linux/mfd/88pm860x.h')
-rw-r--r-- | include/linux/mfd/88pm860x.h | 48 |
1 files changed, 19 insertions, 29 deletions
diff --git a/include/linux/mfd/88pm860x.h b/include/linux/mfd/88pm860x.h index 7b24943779fa..ef3e6b701179 100644 --- a/include/linux/mfd/88pm860x.h +++ b/include/linux/mfd/88pm860x.h | |||
@@ -34,22 +34,6 @@ enum { | |||
34 | PM8606_ID_MAX, | 34 | PM8606_ID_MAX, |
35 | }; | 35 | }; |
36 | 36 | ||
37 | enum { | ||
38 | PM8606_BACKLIGHT1 = 0, | ||
39 | PM8606_BACKLIGHT2, | ||
40 | PM8606_BACKLIGHT3, | ||
41 | }; | ||
42 | |||
43 | enum { | ||
44 | PM8606_LED1_RED = 0, | ||
45 | PM8606_LED1_GREEN, | ||
46 | PM8606_LED1_BLUE, | ||
47 | PM8606_LED2_RED, | ||
48 | PM8606_LED2_GREEN, | ||
49 | PM8606_LED2_BLUE, | ||
50 | PM8607_LED_VIBRATOR, | ||
51 | }; | ||
52 | |||
53 | 37 | ||
54 | /* 8606 Registers */ | 38 | /* 8606 Registers */ |
55 | #define PM8606_DCM_BOOST (0x00) | 39 | #define PM8606_DCM_BOOST (0x00) |
@@ -322,7 +306,7 @@ struct pm860x_chip { | |||
322 | struct regmap *regmap_companion; | 306 | struct regmap *regmap_companion; |
323 | 307 | ||
324 | int buck3_double; /* DVC ramp slope double */ | 308 | int buck3_double; /* DVC ramp slope double */ |
325 | unsigned short companion_addr; | 309 | int companion_addr; |
326 | unsigned short osc_vote; | 310 | unsigned short osc_vote; |
327 | int id; | 311 | int id; |
328 | int irq_mode; | 312 | int irq_mode; |
@@ -340,16 +324,12 @@ enum { | |||
340 | }; | 324 | }; |
341 | 325 | ||
342 | struct pm860x_backlight_pdata { | 326 | struct pm860x_backlight_pdata { |
343 | int id; | ||
344 | int pwm; | 327 | int pwm; |
345 | int iset; | 328 | int iset; |
346 | unsigned long flags; | ||
347 | }; | 329 | }; |
348 | 330 | ||
349 | struct pm860x_led_pdata { | 331 | struct pm860x_led_pdata { |
350 | int id; | ||
351 | int iset; | 332 | int iset; |
352 | unsigned long flags; | ||
353 | }; | 333 | }; |
354 | 334 | ||
355 | struct pm860x_rtc_pdata { | 335 | struct pm860x_rtc_pdata { |
@@ -379,15 +359,29 @@ struct pm860x_platform_data { | |||
379 | struct pm860x_rtc_pdata *rtc; | 359 | struct pm860x_rtc_pdata *rtc; |
380 | struct pm860x_touch_pdata *touch; | 360 | struct pm860x_touch_pdata *touch; |
381 | struct pm860x_power_pdata *power; | 361 | struct pm860x_power_pdata *power; |
382 | struct regulator_init_data *regulator; | 362 | struct regulator_init_data *buck1; |
383 | 363 | struct regulator_init_data *buck2; | |
384 | unsigned short companion_addr; /* I2C address of companion chip */ | 364 | struct regulator_init_data *buck3; |
365 | struct regulator_init_data *ldo1; | ||
366 | struct regulator_init_data *ldo2; | ||
367 | struct regulator_init_data *ldo3; | ||
368 | struct regulator_init_data *ldo4; | ||
369 | struct regulator_init_data *ldo5; | ||
370 | struct regulator_init_data *ldo6; | ||
371 | struct regulator_init_data *ldo7; | ||
372 | struct regulator_init_data *ldo8; | ||
373 | struct regulator_init_data *ldo9; | ||
374 | struct regulator_init_data *ldo10; | ||
375 | struct regulator_init_data *ldo12; | ||
376 | struct regulator_init_data *ldo_vibrator; | ||
377 | struct regulator_init_data *ldo14; | ||
378 | |||
379 | int companion_addr; /* I2C address of companion chip */ | ||
385 | int i2c_port; /* Controlled by GI2C or PI2C */ | 380 | int i2c_port; /* Controlled by GI2C or PI2C */ |
386 | int irq_mode; /* Clear interrupt by read/write(0/1) */ | 381 | int irq_mode; /* Clear interrupt by read/write(0/1) */ |
387 | int irq_base; /* IRQ base number of 88pm860x */ | 382 | int irq_base; /* IRQ base number of 88pm860x */ |
388 | int num_leds; | 383 | int num_leds; |
389 | int num_backlights; | 384 | int num_backlights; |
390 | int num_regulators; | ||
391 | }; | 385 | }; |
392 | 386 | ||
393 | extern int pm8606_osc_enable(struct pm860x_chip *, unsigned short); | 387 | extern int pm8606_osc_enable(struct pm860x_chip *, unsigned short); |
@@ -408,8 +402,4 @@ extern int pm860x_page_bulk_write(struct i2c_client *, int, int, | |||
408 | extern int pm860x_page_set_bits(struct i2c_client *, int, unsigned char, | 402 | extern int pm860x_page_set_bits(struct i2c_client *, int, unsigned char, |
409 | unsigned char); | 403 | unsigned char); |
410 | 404 | ||
411 | extern int pm860x_device_init(struct pm860x_chip *chip, | ||
412 | struct pm860x_platform_data *pdata) __devinit ; | ||
413 | extern void pm860x_device_exit(struct pm860x_chip *chip) __devexit ; | ||
414 | |||
415 | #endif /* __LINUX_MFD_88PM860X_H */ | 405 | #endif /* __LINUX_MFD_88PM860X_H */ |