Am Montag, 5. April 2010 11:42:28 schrieb Dominik Brodowski: > On Sun, Apr 04, 2010 at 06:28:59PM -0400, Alan Stern wrote: > > On Sun, 4 Apr 2010, Dominik Brodowski wrote: > > The logic for autosuspend is more or less contained in > > drivers/usb/core/driver.c:autosuspend_check(). It gets called from > > usb_autopm_do_interface(), called by usb_autopm_put_interface(). > > (That's in 2.6.33; in 2.6.34-rc the arrangement is a little different > > but not too much.) If you add some debugging statements to those > > routines you ought to be able to figure out what's going on. > > usb_autopm_put_interface() gets called, the bus rt_idle function is called, > which does nothing on interfaces: > > [ 470.809499] btusb 7-1:1.0: calling bus rt_idle > [ 470.809507] btusb 7-1:1.0: usb_autopm_put_interface: cnt 0 -> 0 > > rt_suspending usb 7-1 is never attempted, probably because it thinks > children are busy. Setting the interface's ignore_children to true doesn't > help. The device tree looks like this: Please capture the outputs of BT_DBG in your syslog. This will tell you whether the device is marked busy. Also, does your device support remote wakeup? Regards Oliver -- 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