mirror of
https://github.com/torvalds/linux.git
synced 2024-11-12 15:11:50 +00:00
HID: usbhid: enable remote wakeup for keyboards
This patch (as1365) enables remote wakeup by default for USB keyboard devices. Keyboards in general are supposed to be wakeup devices, but the correct place to enable it depends on the device's bus; no single approach will work for all keyboard devices. In particular, this covers only USB keyboards (and then only those supporting the boot protocol). Signed-off-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
This commit is contained in:
parent
20a3ce7e49
commit
3d61510f4e
@ -1026,12 +1026,15 @@ static int usbhid_start(struct hid_device *hid)
|
||||
/* Some keyboards don't work until their LEDs have been set.
|
||||
* Since BIOSes do set the LEDs, it must be safe for any device
|
||||
* that supports the keyboard boot protocol.
|
||||
* In addition, enable remote wakeup by default for all keyboard
|
||||
* devices supporting the boot protocol.
|
||||
*/
|
||||
if (interface->desc.bInterfaceSubClass == USB_INTERFACE_SUBCLASS_BOOT &&
|
||||
interface->desc.bInterfaceProtocol ==
|
||||
USB_INTERFACE_PROTOCOL_KEYBOARD)
|
||||
USB_INTERFACE_PROTOCOL_KEYBOARD) {
|
||||
usbhid_set_leds(hid);
|
||||
|
||||
device_set_wakeup_enable(&dev->dev, 1);
|
||||
}
|
||||
return 0;
|
||||
|
||||
fail:
|
||||
|
@ -313,6 +313,7 @@ static int usb_kbd_probe(struct usb_interface *iface,
|
||||
goto fail2;
|
||||
|
||||
usb_set_intfdata(iface, kbd);
|
||||
device_set_wakeup_enable(&dev->dev, 1);
|
||||
return 0;
|
||||
|
||||
fail2:
|
||||
|
Loading…
Reference in New Issue
Block a user