summaryrefslogtreecommitdiffstats
path: root/include/linux/mfd
diff options
context:
space:
mode:
authorHaojian Zhuang <haojian.zhuang@marvell.com>2010-01-06 17:04:18 -0500
committerSamuel Ortiz <sameo@linux.intel.com>2010-03-07 22:17:01 +0100
commitbbd51b1ff1bf57b9ed7f062486a415509968d4d9 (patch)
treea7a4270a34b8f3fa0661af088b139c8d9d8314d5 /include/linux/mfd
parent0df883df8e8aea79b501f6262b595e66dec175dc (diff)
mfd: Split 88pm8607 driver
Create 88pm8607-i2c driver to support all I2C operation of 88PM8607. Signed-off-by: Haojian Zhuang <haojian.zhuang@marvell.com> Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
Diffstat (limited to 'include/linux/mfd')
-rw-r--r--include/linux/mfd/88pm8607.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/include/linux/mfd/88pm8607.h b/include/linux/mfd/88pm8607.h
index f41b428d2ce..6e4dcdca02a 100644
--- a/include/linux/mfd/88pm8607.h
+++ b/include/linux/mfd/88pm8607.h
@@ -33,8 +33,8 @@ enum {
PM8607_ID_RG_MAX,
};
-#define CHIP_ID (0x40)
-#define CHIP_ID_MASK (0xF8)
+#define PM8607_ID (0x40) /* 8607 chip ID */
+#define PM8607_ID_MASK (0xF8) /* 8607 chip ID mask */
/* Interrupt Registers */
#define PM8607_STATUS_1 (0x01)
@@ -185,6 +185,7 @@ struct pm8607_chip {
struct device *dev;
struct mutex io_lock;
struct i2c_client *client;
+ struct i2c_device_id id;
int (*read)(struct pm8607_chip *chip, int reg, int bytes, void *dest);
int (*write)(struct pm8607_chip *chip, int reg, int bytes, void *src);
@@ -214,4 +215,9 @@ extern int pm8607_bulk_write(struct pm8607_chip *, int, int,
unsigned char *);
extern int pm8607_set_bits(struct pm8607_chip *, int, unsigned char,
unsigned char);
-#endif /* __LINUX_MFD_88PM8607_H */
+
+extern int pm860x_device_init(struct pm8607_chip *chip,
+ struct pm8607_platform_data *pdata);
+extern void pm860x_device_exit(struct pm8607_chip *chip);
+
+#endif /* __LINUX_MFD_88PM860X_H */