HID: usbhid: change return error of usbhid_output_report
authorBenjamin Tissoires <benjamin.tissoires@redhat.com>
Mon, 10 Feb 2014 17:58:51 +0000 (12:58 -0500)
committerJiri Kosina <jkosina@suse.cz>
Mon, 17 Feb 2014 13:55:00 +0000 (14:55 +0100)
If there is no urbout when sending a output report, ENOSYS (Function
not implemented) is a better error than EIO (I/O error).

Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
Reviewed-by: David Herrmann <dh.herrmann@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/usbhid/hid-core.c

index b9a770f4d7aef9812e74379a7c8ba5513d8da8d4..0d1d87533f4851b3b94b2b19ccc860b445535554 100644 (file)
@@ -922,7 +922,7 @@ static int usbhid_output_report(struct hid_device *hid, __u8 *buf, size_t count)
        int actual_length, skipped_report_id = 0, ret;
 
        if (!usbhid->urbout)
-               return -EIO;
+               return -ENOSYS;
 
        if (buf[0] == 0x0) {
                /* Don't send the Report ID */