SDL: Don't use the HIDAPI driver for the Tarantula 8K controller with stock firmware

From 70e9cc86ddbe0f6b580c3c02d1391b3dde4d11fb Mon Sep 17 00:00:00 2001
From: Sam Lantinga <[EMAIL REDACTED]>
Date: Mon, 31 Aug 2026 09:34:57 -0700
Subject: [PATCH] Don't use the HIDAPI driver for the Tarantula 8K controller
 with stock firmware

This controller needs a firmware update before we can interpret its reports.
---
 src/joystick/hidapi/SDL_hidapi_gamesir.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/src/joystick/hidapi/SDL_hidapi_gamesir.c b/src/joystick/hidapi/SDL_hidapi_gamesir.c
index 26f7aa738376b..a991e5bfcf470 100644
--- a/src/joystick/hidapi/SDL_hidapi_gamesir.c
+++ b/src/joystick/hidapi/SDL_hidapi_gamesir.c
@@ -137,6 +137,12 @@ static bool HIDAPI_DriverGameSir_IsEnabled(void)
 
 static bool HIDAPI_DriverGameSir_IsSupportedDevice(SDL_HIDAPI_Device *device, const char *name, SDL_GamepadType type, Uint16 vendor_id, Uint16 product_id, Uint16 version, int interface_number, int interface_class, int interface_subclass, int interface_protocol)
 {
+    if (vendor_id == USB_VENDOR_GAMESIR &&
+        product_id == USB_PRODUCT_GAMESIR_GAMEPAD_TARANTULA_8K &&
+        device && device->version <= 553) {
+        // This controller needs a firmware update
+        return false;
+    }
     return SDL_IsJoystickGameSirController(vendor_id, product_id);
 }