Re: [PATCH v2] Input: xpad - add Voyetra Turtle Beach PC Rematch Gamepad

[email protected] Mon, 03 Aug 2026 02:01:13 +0000
Newsgroups org.kernel.vger.linux-input
Message-ID <[email protected]>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [Medium] The PC Rematch Gamepad (Wireless) (PID 0x6014) is incorrectly assigned `XTYPE_XBOX360W` instead of `XTYPE_XBOX360`, which will likely prevent the device from functioning.
- [Low] The new device entries in `xpad_device[]` violate the explicit sorting requirements of the array.
--

--- Patch [1]: [PATCH v2] Input: xpad - add Voyetra Turtle Beach PC Rematch Gamepad ---
commit 4317954c8794979c77f86d1618e25d242148ef54
Author: Dongxu Su <[email protected]>

Input: xpad - add Voyetra Turtle Beach PC Rematch Gamepad

This commit adds support for the Voyetra Turtle Beach PC Rematch Gamepad,
a triple-mode (wired, 2.4G wireless, Bluetooth) PC game controller. It
adds four new product IDs to the xpad_device array and adds the vendor
to the XInput whitelist.

> diff --git a/drivers/input/joystick/xpad.c b/drivers/input/joystick/xpad.c
> index feb8f368f834e..7f593fc6ebdff 100644
> --- a/drivers/input/joystick/xpad.c
> +++ b/drivers/input/joystick/xpad.c
> @@ -267,6 +267,10 @@ static const struct xpad_device {
>  	{ 0x1038, 0x1431, "SteelSeries Stratus Duo", 0, XTYPE_XBOX360 },
>  	{ 0x10f5, 0x7005, "Turtle Beach Recon Controller", 0, XTYPE_XBOXONE },
>  	{ 0x10f5, 0x7008, "Turtle Beach Recon Controller", MAP_SHARE_BUTTON, XTYPE_XBOXONE },
> +	{ 0x10f5, 0x6013, "PC Rematch Gamepad", 0, XTYPE_XBOX360 },

[Severity: Low]
This isn't a bug, but the xpad_device array requires sorting by vendor ID
and product ID. Should the new 0x60xx entries be placed before the 0x70xx
entries for vendor 0x10f5?

> +	{ 0x10f5, 0x6014, "PC Rematch Gamepad (Wireless)", 0, XTYPE_XBOX360W },

[Severity: Medium]
Does this 2.4G wireless dongle actually use the proprietary Microsoft
multi-controller receiver format (Protocol 129)?

Typically, standard 3rd-party 2.4G dongles act transparently as wired XInput
controllers (Protocol 1). If this dongle sends standard packets (e.g.,
data[1] == 0x14) rather than the legacy receiver format, assigning
XTYPE_XBOX360W will route it to xpad360w_process_packet() where the packets
will be silently discarded because they fail the multi-controller handshake
checks (such as data[1] != 0x01).

Should this be assigned XTYPE_XBOX360 instead?

> +	{ 0x10f5, 0x6015, "PC Rematch Gamepad", 0, XTYPE_XBOXONE },
> +	{ 0x10f5, 0x6016, "PC Rematch Gamepad (Wireless)", 0, XTYPE_XBOXONE },
>  	{ 0x10f5, 0x7073, "Turtle Beach Stealth Ultra Controller", MAP_SHARE_BUTTON, XTYPE_XBOXONE },

[ ... ]

-- 
Sashiko AI review ยท https://sashiko.dev/#/patchset/[email protected]?part=1