Skip to content

Commit

Permalink
mfd: Add platform data and devices for MAX8997 LED control
Browse files Browse the repository at this point in the history
MAX8997 device does not support LED control function of it.
To enable MAX8997-LED driver, platform data and devices for LED are updated.

Signed-off-by: Donggeun Kim <dg77.kim@samsung.com>
Signed-off-by: MyungJoo Ham <myungjoo.ham@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
  • Loading branch information
Donggeun Kim authored and Samuel Ortiz committed Jan 8, 2012
1 parent 1e351a9 commit f6dd2db
Show file tree
Hide file tree
Showing 2 changed files with 26 additions and 2 deletions.
3 changes: 2 additions & 1 deletion drivers/mfd/max8997.c
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,8 @@ static struct mfd_cell max8997_devs[] = {
{ .name = "max8997-battery", },
{ .name = "max8997-haptic", },
{ .name = "max8997-muic", },
{ .name = "max8997-flash", },
{ .name = "max8997-led", .id = 1 },
{ .name = "max8997-led", .id = 2 },
};

int max8997_read_reg(struct i2c_client *i2c, u8 reg, u8 *dest)
Expand Down
25 changes: 24 additions & 1 deletion include/linux/mfd/max8997.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,28 @@ struct max8997_muic_platform_data {
int num_init_data;
};

enum max8997_led_mode {
MAX8997_NONE,
MAX8997_FLASH_MODE,
MAX8997_MOVIE_MODE,
MAX8997_FLASH_PIN_CONTROL_MODE,
MAX8997_MOVIE_PIN_CONTROL_MODE,
};

/**
* struct max8997_led_platform_data
* The number of LED devices for MAX8997 is two
* @mode: LED mode for each LED device
* @brightness: initial brightness for each LED device
* range:
* [0 - 31]: MAX8997_FLASH_MODE and MAX8997_FLASH_PIN_CONTROL_MODE
* [0 - 15]: MAX8997_MOVIE_MODE and MAX8997_MOVIE_PIN_CONTROL_MODE
*/
struct max8997_led_platform_data {
enum max8997_led_mode mode[2];
u8 brightness[2];
};

struct max8997_platform_data {
/* IRQ */
int irq_base;
Expand Down Expand Up @@ -172,7 +194,8 @@ struct max8997_platform_data {

/* HAPTIC: Not implemented */
/* RTC: Not implemented */
/* Flash: Not implemented */
/* ---- LED ---- */
struct max8997_led_platform_data *led_pdata;
};

#endif /* __LINUX_MFD_MAX8998_H */

0 comments on commit f6dd2db

Please sign in to comment.