Re: [PATCH 6/7] usb: musb: omap2430: turn off vbus on cable disconnect

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Mar 12, 2013 at 3:37 PM, kishon <kishon@xxxxxx> wrote:
> Hi,
>
>
> On Sunday 10 March 2013 06:38 AM, Grazvydas Ignotas wrote:
>>
>> On USB_EVENT_ID event the musb glue enables VBUS by calling
>> omap2430_musb_set_vbus(musb, 1) that sets the session bit, but on
>> USB_EVENT_NONE reverse action is never made, and that breaks PM.
>>
>> Disable VBUS unconditionally on USB_EVENT_NONE to be sure musb
>> session is ended on cable unplug so that PM works.
>>
>> Signed-off-by: Grazvydas Ignotas <notasas@xxxxxxxxx>
>> ---
>>   drivers/usb/musb/omap2430.c |    1 +
>>   1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/usb/musb/omap2430.c b/drivers/usb/musb/omap2430.c
>> index 2a39c11..d430677 100644
>> --- a/drivers/usb/musb/omap2430.c
>> +++ b/drivers/usb/musb/omap2430.c
>> @@ -296,6 +296,7 @@ static void omap_musb_set_mailbox(struct omap2430_glue
>> *glue)
>>                         pm_runtime_put_autosuspend(dev);
>>                 }
>>
>> +               omap2430_musb_set_vbus(musb, 0);
>>                 if (data->interface_type == MUSB_INTERFACE_UTMI) {
>>                         if (musb->xceiv->otg->set_vbus)
>>                                 otg_set_vbus(musb->xceiv->otg, 0);
>
> Shouldn't this otg_set_vbus be done inside omap2430_musb_set_vbus? Any idea
> why they were doing this only for UTMI?

I would think so too, there is otg_set_vbus() in
omap2430_musb_set_vbus() for enable but not for disable.
I don't know history of this code and didn't want to break existing
functionality.

>
> Thanks
> Kishon



-- 
Gražvydas
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux