]> Pileus Git - ~andy/linux/blobdiff - drivers/mfd/mc13xxx.h
Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/cmarinas...
[~andy/linux] / drivers / mfd / mc13xxx.h
index bbba06feea0617f6b6119c3ff4f9947e1f6c0ea7..460ec5c7b18c1f14597244fbfad68efb2f716fe5 100644 (file)
 #include <linux/regmap.h>
 #include <linux/mfd/mc13xxx.h>
 
-enum mc13xxx_id {
-       MC13XXX_ID_MC13783,
-       MC13XXX_ID_MC13892,
-       MC13XXX_ID_INVALID,
+#define MC13XXX_NUMREGS 0x3f
+
+struct mc13xxx;
+
+struct mc13xxx_variant {
+       const char *name;
+       void (*print_revision)(struct mc13xxx *mc13xxx, u32 revision);
 };
 
-#define MC13XXX_NUMREGS 0x3f
+extern struct mc13xxx_variant
+               mc13xxx_variant_mc13783,
+               mc13xxx_variant_mc13892,
+               mc13xxx_variant_mc34708;
 
 struct mc13xxx {
        struct regmap *regmap;
 
        struct device *dev;
-       enum mc13xxx_id ictype;
+       const struct mc13xxx_variant *variant;
 
        struct mutex lock;
        int irq;