Skip to content

Commit 19f4c2b

Browse files
bentissJiri Kosina
authored andcommitted
HID: sony: do not bail out when the sixaxis refuses the output report
When setting the operational mode, some third party (Speedlink Strike-FX) gamepads refuse the output report. Failing here means we refuse to initialize the gamepad while this should be harmless. The weird part is that the initial commit that added this: a7de9b8 ("HID: sony: Enable Gasia third-party PS3 controllers") mentions this very same controller as one requiring this output report. Anyway, it's broken for one user at least, so let's change it. We will report an error, but at least the controller should work. And no, these devices present themselves as legacy Sony controllers (VID:PID of 054C:0268, as in the official ones) so there are no ways of discriminating them from the official ones. https://bugzilla.redhat.com/show_bug.cgi?id=1255325 Reported-and-tested-by: Max Fedotov <[email protected]> Signed-off-by: Benjamin Tissoires <[email protected]> Signed-off-by: Jiri Kosina <[email protected]>
1 parent c2848f2 commit 19f4c2b

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

drivers/hid/hid-sony.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1420,8 +1420,10 @@ static int sixaxis_set_operational_usb(struct hid_device *hdev)
14201420
}
14211421

14221422
ret = hid_hw_output_report(hdev, buf, 1);
1423-
if (ret < 0)
1424-
hid_err(hdev, "can't set operational mode: step 3\n");
1423+
if (ret < 0) {
1424+
hid_info(hdev, "can't set operational mode: step 3, ignoring\n");
1425+
ret = 0;
1426+
}
14251427

14261428
out:
14271429
kfree(buf);

0 commit comments

Comments
 (0)