Re: [PATCH v4] xpad: Add GPD Win 2 Controller USB IDs

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, May 31, 2018 at 10:44 AM, Cameron Gutman <aicommander@xxxxxxxxx> wrote:
> On 05/31/2018 10:10 AM, Dmitry Torokhov wrote:
>> Hi Ethan,
>>
>> - stable@ to BCC
>>
>> On Thu, May 31, 2018 at 5:12 AM, Ethan Lee <flibitijibibo@xxxxxxxxx> wrote:
>>> Aaand right as I send these I see git-send-email auto-CC'd stable directly
>>> again. Sorry!
>>>
>>> -Ethan
>>>
>>>
>>> On 05/31/2018 08:10 AM, flibitijibibo@xxxxxxxxx wrote:
>>>>
>>>> From: Ethan Lee <flibitijibibo@xxxxxxxxx>
>>>>
>>>> GPD Win 2 Website: http://www.gpd.hk/gpdwin2.asp
>>>>
>>>> Tested on a unit from the first production run sent to Indiegogo backers
>>
>> So I understand that adding this new VID/PID pair to the xpad driver
>> makes controller recognize the device,
>> but the button/axis mapping is not what it should be. Does it mean
>> that the mapping is different from other xpad controllers, or the
>> mapping that we are using is messed up for all/most of them?
>
> If I'm understanding correctly, the mapping is "correct" in that it
> matches what other xpad devices use, but xpad's mapping in general
> is a bit weird, like using BTN_TRIGGER_HAPPY instead of BTN_DPAD.
>
> I think that is actually a minor issue now after we started reporting
> d-pads as buttons and axes on Xbox 360 wireless gamepads. The only
> devices that would still need to use BTN_TRIGGER_HAPPY are dancepads,
> and applications supporting those are likely very flexible with their
> mappings already.
>
>>
>> It looks like the mapping we use is quite a mess, I wonder if we could
>> not bite the bullet and unify it so it follows
>> Documentation/input/gamepad.rst... I would make users update their
>> existing configs, but the new installations would be more sensible.
>> Just a thought... Or you could tell me that nobody pays attention to
>> what kernel sends and everyone remaps anyway...
>
> Did you see anything else wrong with the mapping besides the dpad?

DPAD with BTN_TRIGGER_HAPPY is the main issue.

>
>>
>>>>
>>>> Signed-off-by: Ethan Lee <flibitijibibo@xxxxxxxxx>
>>>> Cc: stable@xxxxxxxxxxxxxxx
>>>> ---
>>>>   drivers/input/joystick/xpad.c | 2 ++
>>>>   1 file changed, 2 insertions(+)
>>>>
>>>> diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
>>>> index 06e9650b3b30..a89b81b35932 100644
>>>> --- a/drivers/input/joystick/xpad.c
>>>> +++ b/drivers/input/joystick/xpad.c
>>>> @@ -123,6 +123,7 @@ static const struct xpad_device {
>>>>         u8 mapping;
>>>>         u8 xtype;
>>>>   } xpad_device[] = {
>>>> +       { 0x0079, 0x18d4, "GPD Win 2 Controller", 0, XTYPE_XBOX360 },
>>>>         { 0x044f, 0x0f00, "Thrustmaster Wheel", 0, XTYPE_XBOX },
>>>>         { 0x044f, 0x0f03, "Thrustmaster Wheel", 0, XTYPE_XBOX },
>>>>         { 0x044f, 0x0f07, "Thrustmaster, Inc. Controller", 0, XTYPE_XBOX
>>>> },
>>>> @@ -409,6 +410,7 @@ static const signed short xpad_abs_triggers[] = {
>>>>     static const struct usb_device_id xpad_table[] = {
>>>>         { USB_INTERFACE_INFO('X', 'B', 0) },    /* X-Box USB-IF not
>>>> approved class */
>>>> +       XPAD_XBOX360_VENDOR(0x0079),            /* GPD Win 2 Controller */
>>>>         XPAD_XBOX360_VENDOR(0x044f),            /* Thrustmaster X-Box 360
>>>> controllers */
>>>>         XPAD_XBOX360_VENDOR(0x045e),            /* Microsoft X-Box 360
>>>> controllers */
>>>>         XPAD_XBOXONE_VENDOR(0x045e),            /* Microsoft X-Box One
>>>> controllers */
>>>
>>
>



-- 
Dmitry
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux