mfd: Add all twl4030 regulators to the twl4030 mfd driver
authorJuha Keski-Saari <ext-juha.1.keski-saari@nokia.com>
Fri, 11 Dec 2009 10:12:15 +0000 (11:12 +0100)
committerSamuel Ortiz <sameo@linux.intel.com>
Sun, 13 Dec 2009 18:21:59 +0000 (19:21 +0100)
Add all twl4030 regulators to the twl4030 mfd driver and
twl4030_platform_data

Signed-off-by: Juha Keski-Saari <ext-juha.1.keski-saari@nokia.com>
Acked-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
drivers/mfd/twl4030-core.c
include/linux/i2c/twl4030.h

index 334c86f..e4a5d48 100644 (file)
@@ -625,11 +625,21 @@ add_children(struct twl4030_platform_data *pdata, unsigned long features)
        }
 
        if (twl_has_regulator()) {
-               /*
                child = add_regulator(TWL4030_REG_VPLL1, pdata->vpll1);
                if (IS_ERR(child))
                        return PTR_ERR(child);
-               */
+
+               child = add_regulator(TWL4030_REG_VIO, pdata->vio);
+               if (IS_ERR(child))
+                       return PTR_ERR(child);
+
+               child = add_regulator(TWL4030_REG_VDD1, pdata->vdd1);
+               if (IS_ERR(child))
+                       return PTR_ERR(child);
+
+               child = add_regulator(TWL4030_REG_VDD2, pdata->vdd2);
+               if (IS_ERR(child))
+                       return PTR_ERR(child);
 
                child = add_regulator(TWL4030_REG_VMMC1, pdata->vmmc1);
                if (IS_ERR(child))
@@ -645,6 +655,18 @@ add_children(struct twl4030_platform_data *pdata, unsigned long features)
                                pdata->vaux2);
                if (IS_ERR(child))
                        return PTR_ERR(child);
+
+               child = add_regulator(TWL4030_REG_VINTANA1, pdata->vintana1);
+               if (IS_ERR(child))
+                       return PTR_ERR(child);
+
+               child = add_regulator(TWL4030_REG_VINTANA2, pdata->vintana2);
+               if (IS_ERR(child))
+                       return PTR_ERR(child);
+
+               child = add_regulator(TWL4030_REG_VINTDIG, pdata->vintdig);
+               if (IS_ERR(child))
+                       return PTR_ERR(child);
        }
 
        /* maybe add LDOs that are omitted on cost-reduced parts */
index efa62eb..a50bcf8 100644 (file)
@@ -484,8 +484,12 @@ struct twl4030_platform_data {
        struct regulator_init_data              *vaux2;
        struct regulator_init_data              *vaux3;
        struct regulator_init_data              *vaux4;
-
-       /* REVISIT more to come ... _nothing_ should be hard-wired */
+       struct regulator_init_data              *vio;
+       struct regulator_init_data              *vdd1;
+       struct regulator_init_data              *vdd2;
+       struct regulator_init_data              *vintana1;
+       struct regulator_init_data              *vintana2;
+       struct regulator_init_data              *vintdig;
 };
 
 /*----------------------------------------------------------------------*/