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

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

 



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?

> 
>>>
>>> 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 */
>>
> 

--
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