On 07/05/13 10:47, Kishon Vijay Abraham I wrote: > Hi, > > On Tuesday 07 May 2013 01:28 PM, Mark Brown wrote: >> On Tue, May 07, 2013 at 10:42:53AM +0530, Kishon Vijay Abraham I wrote: >>> On Monday 06 May 2013 08:10 PM, Mark Brown wrote: >>>> On Mon, May 06, 2013 at 06:47:04PM +0530, Kishon Vijay Abraham I >>>> wrote: >>>> >>>>> + if (palmas_usb->linkstat != PALMAS_USB_STATE_VBUS) { >>>>> + if (palmas_usb->vbus_reg) { >>>>> + ret = regulator_enable(palmas_usb->vbus_reg); >>>>> + if (ret) { >>>>> + dev_dbg(palmas_usb->dev, >>>>> + "regulator enable failed\n"); >>>>> + goto ret0; >> >>>> This is very bad karma, why is the regulator optional? >> >>> The platform can provide it's own vbus control in which case this is >>> not needed. >> >> So why is there no interaction with this external VBUS control and how >> does the driver distinguish between that and an error getting the >> regulator? > > The platform specifies if it provides its own VBUS control by the dt > property ti,no_control_vbus. So the driver will give an error only > when *ti,no_control_vbus* is not set. Graeme? > > Thanks > Kishon That is correct, but as currently there are only two users I guess this depends on Laxmans usecase. If he doesn't need this extra complexity I would remove it for now. It was originally done with another SoC in mind! Graeme -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html