Hi,

Robert Jarzmik <robert.jarz...@free.fr> writes:
> Felipe Balbi <ba...@ti.com> writes:
>
>> pxa27x disconnects pullups on suspend but doesn't
>> notify the gadget driver about it, so gadget driver
>> can't disable the endpoints it was using.
>>
>> This causes problems on resume because gadget core
>> will think endpoints are still enabled and just
>> ignore the following usb_ep_enable().
>>
>> Fix this problem by calling
>> gadget_driver->disconnect().
> Thanks for doing this for me.
>> @@ -2535,6 +2535,7 @@ static int pxa_udc_suspend(struct platform_device 
>> *_dev, pm_message_t state)
>>      udc_disable(udc);
>>      udc->pullup_resume = udc->pullup_on;
>>      dplus_pullup(udc, 0);
>> +    udc->driver->disconnect(&udc->gadget);
> If no driver is bound, this will segfault, right ?
> Shouldn't an "if (udc->driver)" protect this line ?

good catch. v2 coming shortly.

-- 
balbi

Attachment: signature.asc
Description: PGP signature

Reply via email to