aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/mfd/wm8994/core.h
diff options
context:
space:
mode:
authorMark Brown <broonie@opensource.wolfsonmicro.com>2010-08-31 19:25:12 +0100
committerMark Brown <broonie@opensource.wolfsonmicro.com>2010-11-26 15:16:19 +0000
commit559e0df6b3ffbc218a11bb9dada5320a217cb7a6 (patch)
tree5f42260e7bb90657215eb7daa3faceb52d2b9256 /include/linux/mfd/wm8994/core.h
parentASoC: Remove redundant hw_write initialisation in WM8737 (diff)
downloadlinux-dev-559e0df6b3ffbc218a11bb9dada5320a217cb7a6.tar.xz
linux-dev-559e0df6b3ffbc218a11bb9dada5320a217cb7a6.zip
mfd: Add initial WM8958 support
The WM8958 is a derivative of the WM8994 which is register compatible with the addition of some extra features, mostly in the CODEC side. The major change visible at the MFD level is that rather than a single DBVDD supply we now have three separate DBVDDs so we must request and enable a different set of supplies. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Acked-by: Samuel Ortiz <sameo@linux.intel.com> Acked-by: Liam Girdwood <lrg@slimlogic.co.uk>
Diffstat (limited to '')
-rw-r--r--include/linux/mfd/wm8994/core.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/include/linux/mfd/wm8994/core.h b/include/linux/mfd/wm8994/core.h
index de79baee4925..3fd36845ca45 100644
--- a/include/linux/mfd/wm8994/core.h
+++ b/include/linux/mfd/wm8994/core.h
@@ -17,6 +17,11 @@
#include <linux/interrupt.h>
+enum wm8994_type {
+ WM8994 = 0,
+ WM8958 = 1,
+};
+
struct regulator_dev;
struct regulator_bulk_data;
@@ -48,6 +53,8 @@ struct wm8994 {
struct mutex io_lock;
struct mutex irq_lock;
+ enum wm8994_type type;
+
struct device *dev;
int (*read_dev)(struct wm8994 *wm8994, unsigned short reg,
int bytes, void *dest);
@@ -68,6 +75,7 @@ struct wm8994 {
u16 gpio_regs[WM8994_NUM_GPIO_REGS];
struct regulator_dev *dbvdd;
+ int num_supplies;
struct regulator_bulk_data *supplies;
};