Laurent Pinchart wrote:
> Hi Alan,
>
> On Thursday 07 August 2008, Alan Jenkins wrote:
>   
>> Oliver Neukum wrote:
>>     
>>> Am Mittwoch 06 August 2008 17:23:43 schrieb Alan Jenkins:
>>>       
>>>> [  290.127788] uvcvideo 1-8:1.0: no reset_resume for driver uvcvideo?
>>>>         
>>> [..]
>>>
>>>       
>>>> [  290.128909]  [<c023465e>] usb_rebind_intf+0x27/0x4e
>>>> [  290.128916]  [<c02346eb>] do_unbind_rebind+0x4d/0x5a
>>>> [  290.128924]  [<c0234738>] usb_external_resume_device+0x40/0x51
>>>> [  290.128933]  [<c020cd87>] device_resume+0x8a/0x2d2
>>>> [  290.128941]  [<c01334e2>] suspend_devices_and_enter+0x10f/0x138
>>>> [  290.128954]  [<c013363a>] enter_state+0x10b/0x164
>>>> [  290.128963]  [<c0133721>] state_store+0x8e/0xa4
>>>> [  290.128972]  [<c0133693>] state_store+0x0/0xa4
>>>> [  290.128981]  [<c01a3087>] kobj_attr_store+0x18/0x1c
>>>> [  290.128991]  [<c018bedc>] sysfs_write_file+0xaf/0xdc
>>>> [  290.129000]  [<c018be2d>] sysfs_write_file+0x0/0xdc
>>>> [  290.129007]  [<c015ec41>] vfs_write+0x83/0xf6
>>>> [  290.129016]  [<c015efd2>] sys_write+0x3c/0x63
>>>> [  290.129024]  [<c01035c1>] sysenter_do_call+0x12/0x21
>>>> [  290.129035]  [<c02b0000>] wait_for_common+0xe0/0xe3
>>>>         
>>>     if (reset_resume) {
>>>             if (driver->reset_resume) {
>>>                     status = driver->reset_resume(intf);
>>>                     if (status)
>>>                             dev_err(&intf->dev, "%s error %d\n",
>>>                                             "reset_resume", status);
>>>             } else {
>>>                     intf->needs_binding = 1;
>>>
>>> It doesn't have reset_resume, so it is marked for rebinding. That in turn
>>> triggers the warning because the parent is still asleep. That shouldn't
>>> happen if we walk the device tree properly. Can you add a printk
>>> to device_pm_add() to print out the parent? We need to rule out that the
>>> device tree is bad.
>>>
>>>     Regards
>>>             Oliver
>>>       
>> Done.  (For the record, I've posted the results at
>> <http://bugzilla.kernel.org/show_bug.cgi?id=11263>).
>>     
>
> I've added a reset_resume method to the UVC driver. Could you please test the 
> latest SVN revision and tell me if it helps ?
>   
Alan Stern said the problem was that USB needed to move to the new PM
ops.  He posted a patch for this which fixed my problem (the scary
WARNING with call-trace).

So I'll try to test SVN but it's not very interesting :-).

Ta
Alan
_______________________________________________
Linux-uvc-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/linux-uvc-devel

Reply via email to