mfd: twl4030 regulator bug fixes
This contains two bugfixes to the initial twl4030 regulator support patch related to USB: (a) always overwrite the old list of consumers ... else the regulator handles all use the same "usb1v5" name; (b) don't set up the "usbcp" regulator, which turns out to be managed through separate controls, usually ULPI directly from the OTG controller. Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Signed-off-by: Samuel Ortiz <sameo@openedhand.com>
This commit is contained in:
parent
dad759ff8b
commit
b73eac7871
|
@ -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 */
|
||||
|
|
|
@ -354,6 +354,5 @@ int twl4030_set_gpio_debounce(int gpio, int enable);
|
|||
#define TWL4030_REG_VUSB1V5 17
|
||||
#define TWL4030_REG_VUSB1V8 18
|
||||
#define TWL4030_REG_VUSB3V1 19
|
||||
#define TWL4030_REG_VUSBCP 20
|
||||
|
||||
#endif /* End of __TWL4030_H */
|
||||
|
|
Loading…
Reference in New Issue