Skip to content

Commit

Permalink
Input: xpad - use correct product id for x360w controllers
Browse files Browse the repository at this point in the history
[ Upstream commit b6fc513da50c5dbc457a8ad6b58b046a6a68fd9d ]

currently the controllers get the same product id as the wireless
receiver. However the controllers actually have their own product id.

The patch makes the driver expose the same product id as the windows
driver.

This improves compatibility when running applications with WINE.

see paroj/xpad#54

Signed-off-by: Pavel Rojtberg <rojtberg@gmail.com>
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
  • Loading branch information
paroj authored and followmsi committed Dec 5, 2018
1 parent c57e53a commit 0233f27
Showing 1 changed file with 6 additions and 0 deletions.
6 changes: 6 additions & 0 deletions drivers/input/joystick/xpad.c
Expand Up @@ -1379,6 +1379,12 @@ static int xpad_init_input(struct usb_xpad *xpad)
input_dev->name = xpad->name;
input_dev->phys = xpad->phys;
usb_to_input_id(xpad->udev, &input_dev->id);

if (xpad->xtype == XTYPE_XBOX360W) {
/* x360w controllers and the receiver have different ids */
input_dev->id.product = 0x02a1;
}

input_dev->dev.parent = &xpad->intf->dev;

input_set_drvdata(input_dev, xpad);
Expand Down

0 comments on commit 0233f27

Please sign in to comment.