Am Montag, 19. Dezember 2011, 18:02:03 schrieb Henrik Rydberg: > static int bcm5974_suspend(struct usb_interface *iface, pm_message_t message) > @@ -870,6 +884,9 @@ static int bcm5974_probe(struct usb_interface *iface, > dev->tp_data, dev->cfg.tp_datalen, > bcm5974_irq_trackpad, dev, 1); > > + /* Required for autosuspend */ > + iface->needs_remote_wakeup = 1; > + > /* create bcm5974 device */ > usb_make_path(udev, dev->phys, sizeof(dev->phys)); > strlcat(dev->phys, "/input0", sizeof(dev->phys)); It is not nice to set needs_remote_wakeup on suspend() because it influences the decision of usbcore to suspend at all, in particular manually set quirks will not be fully honored if you do it this way. In addition it will never be reset, even as the device is closed. Please set it in open() and clear it in close() Regards Oliver -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html