mfd: dm355evm msp430 driver
[safe/jmp/linux-2.6] / drivers / mfd / twl4030-core.c
index 8ab9ee8..b59c385 100644 (file)
@@ -433,7 +433,7 @@ add_regulator_linked(int num, struct regulator_init_data *pdata,
        if (!pdata)
                return NULL;
 
-       if (consumers && !pdata->consumer_supplies) {
+       if (consumers) {
                pdata->consumer_supplies = consumers;
                pdata->num_consumer_supplies = num_consumers;
        }
@@ -556,9 +556,6 @@ add_children(struct twl4030_platform_data *pdata, unsigned long features)
                static struct regulator_consumer_supply usb3v1 = {
                        .supply =       "usb3v1",
                };
-               static struct regulator_consumer_supply usbcp = {
-                       .supply =       "usbcp",
-               };
 
                /* this is a template that gets copied */
                struct regulator_init_data usb_fixed = {
@@ -573,7 +570,6 @@ add_children(struct twl4030_platform_data *pdata, unsigned long features)
                usb1v5.dev = usb_transceiver;
                usb1v8.dev = usb_transceiver;
                usb3v1.dev = usb_transceiver;
-               usbcp.dev = usb_transceiver;
 
                child = add_regulator_linked(TWL4030_REG_VUSB1V5, &usb_fixed,
                                &usb1v5, 1);
@@ -589,11 +585,6 @@ add_children(struct twl4030_platform_data *pdata, unsigned long features)
                                &usb3v1, 1);
                if (IS_ERR(child))
                        return PTR_ERR(child);
-
-               child = add_regulator_linked(TWL4030_REG_VUSBCP, &usb_fixed,
-                               &usbcp, 1);
-               if (IS_ERR(child))
-                       return PTR_ERR(child);
        }
 
        /* maybe add LDOs that are omitted on cost-reduced parts */
@@ -667,12 +658,7 @@ static void __init clocks_init(void)
                osc = clk_get(NULL, "osc_ck");
        else
                osc = clk_get(NULL, "osc_sys_ck");
-#else
-       /* REVISIT for non-OMAP systems, pass the clock rate from
-        * board init code, using platform_data.
-        */
-       osc = ERR_PTR(-EIO);
-#endif
+
        if (IS_ERR(osc)) {
                printk(KERN_WARNING "Skipping twl4030 internal clock init and "
                                "using bootloader value (unknown osc rate)\n");
@@ -682,6 +668,18 @@ static void __init clocks_init(void)
        rate = clk_get_rate(osc);
        clk_put(osc);
 
+#else
+       /* REVISIT for non-OMAP systems, pass the clock rate from
+        * board init code, using platform_data.
+        */
+       osc = ERR_PTR(-EIO);
+
+       printk(KERN_WARNING "Skipping twl4030 internal clock init and "
+              "using bootloader value (unknown osc rate)\n");
+
+       return;
+#endif
+
        switch (rate) {
        case 19200000:
                ctrl = HFCLK_FREQ_19p2_MHZ;