I have a Thinkpad T410s with multitouch monitor, running Ubuntu 10.04. With kernel 2.6.34, suspend fails with messages usbhid 2-1.8:1.1: suspend error -5 pm_op(): usb_dev_suspend+0x0/0x20 returns -5 PM: Device 2-1.8 failed to suspend async: error -5 PM: Some devices failed to suspend That's the ntrig controller, judging by these startup messages. input: N-trig DuoSense as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.8/2-1.8:1.1/input/input10 input: N-trig DuoSense as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.8/2-1.8:1.1/input/input11 input: N-trig DuoSense as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.8/2-1.8:1.1/input/input12 ntrig 0003:1B96:0001.0002: input,hiddev96,hidraw1: USB HID v1.10 Device [N-trig DuoSense] on usb-0000:00:1d.0-1.8/input1 When I blacklist the hid_ntrig module, then suspend works.
I found a workaround for this bug which involves recompiling the hid-ntrig kernel module. In drivers/hid/hid-ntrig.c, comment out or remove line 419-423: /* This is needed for devices with more recent firmware versions */ /*report = hdev->report_enum[HID_FEATURE_REPORT].report_id_hash[0x0a]; if (report) usbhid_submit_report(hdev, report, USB_DIR_OUT); ntrig_report_version(hdev);*/ Rebuild and install the module and suspend works (and the touchscreen, too). Florian