How do I configure WakeOnUSB properly?
It seems that something may be wrong with the system's ACPI table since none of the USB* devices are tied to a PCI bus.
On my laptop, when I plug in my USB keyboard, I can see the pci path 0000:00:1d.0 in dmesg
output:
input: ... as /devices/pci0000:00/0000:00:1d.0/usb6/6-2/6-2.3/6-2.3:1.0/input/input14
From there I can find the ACPI device name in /proc/acpi/wakeup
, and echo it in to enable it:
USB0 S3 enabled pci:000:00:1d.0
I would assume that since the mapping of pci bus to ACPI device is missing for your system, it won't be possible to get it working. You may need to start debugging the DSDT to get much further. http://acpi.sourceforge.net/dsdt/index.php
I found on Ubuntu Lucid 10.04.3 with 2.6.32-37 that using /proc/acpi/wakeup
is worthless. It seems /sys
is the only thing that matters.
My usb-wakeup
script linked below walks the /sys
tree in reverse to enable just usbhid devices, aka the keyboard and mouse. It also enables their parent hubs and controllers. This is what it took for me to get it working. The udev rule triggers the script on boot, and when any usbhid device is plugged in.
The udev script requires the script to be in /usr/local/sbin
, and make sure to make the script executable, chmod 755 /usr/local/sbin/usb-wakeup
.
/etc/udev/rules.d/56-wakeupusb.rules
/usr/local/sbin/usb-wakeup