lkml.org 
[lkml]   [2016]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.4 13/49] HID: sony: do not bail out when the sixaxis refuses the output report
    Date
    4.4-stable review patch.  If anyone has any objections, please let me know.

    ------------------

    From: Benjamin Tissoires <benjamin.tissoires@redhat.com>

    commit 19f4c2ba869517048add62c202f9645b6adf5dfb upstream.

    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 <thesourcehim@gmail.com>
    Signed-off-by: Benjamin Tissoires <benjamin.tissoires@redhat.com>
    Signed-off-by: Jiri Kosina <jkosina@suse.cz>
    Cc: Laura Abbott <labbott@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    drivers/hid/hid-sony.c | 6 ++++--
    1 file changed, 4 insertions(+), 2 deletions(-)

    --- a/drivers/hid/hid-sony.c
    +++ b/drivers/hid/hid-sony.c
    @@ -1418,8 +1418,10 @@ static int sixaxis_set_operational_usb(s
    }

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

    out:
    kfree(buf);

    \
     
     \ /
      Last update: 2016-09-17 09:56    [W:3.540 / U:0.084 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site