All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] HID: Supporting rumble with Thrustmaster Dual Trigger 3-in-1
@ 2009-06-26 13:59 rubenatch
  0 siblings, 0 replies; only message in thread
From: rubenatch @ 2009-06-26 13:59 UTC (permalink / raw)
  To: jkosina; +Cc: linux-kernel

[-- Attachment #1: Type: TEXT/PLAIN, Size: 2948 bytes --]

From: Rubén Aós Garralda <rubenatch@gmail.com>

This patch enables rumble in Thrustmaster Dual 3-in-1 trigger gamepads (in 
both PC and PS3 modes). It uses the same code as Thrustmaster FireStorm 
Dual Power 2/3, so it only modifies hid-core.c (to put the devices in the 
"forbidden list" and hid-tmff.c to add the new USB IDs.

---

diff -uprN linux-source-2.6.30/drivers/hid/hid-core.c linux-source-test/drivers/hid/hid-core.c
--- linux-source-2.6.30/drivers/hid/hid-core.c	2009-06-10 05:05:27.000000000 +0200
+++ linux-source-test/drivers/hid/hid-core.c	2009-06-26 15:33:48.000000000 +0200
@@ -1309,6 +1309,8 @@ static const struct hid_device_id hid_bl
  	{ HID_USB_DEVICE(USB_VENDOR_ID_SUNPLUS, USB_DEVICE_ID_SUNPLUS_WDESKTOP) },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb300) },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb304) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb323) },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb324) },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb651) },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb654) },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_TOPSEED, USB_DEVICE_ID_TOPSEED_CYBERLINK) },
diff -uprN linux-source-2.6.30/drivers/hid/hid-tmff.c linux-source-test/drivers/hid/hid-tmff.c
--- linux-source-2.6.30/drivers/hid/hid-tmff.c	2009-06-10 05:05:27.000000000 +0200
+++ linux-source-test/drivers/hid/hid-tmff.c	2009-06-26 15:35:27.000000000 +0200
@@ -236,7 +236,11 @@ err:
  static const struct hid_device_id tm_devices[] = {
  	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb300),
  		.driver_data = (unsigned long)ff_rumble },
-	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb304),
+	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb304),	/* FireStorm Dual Power 2 (and 3)
+		.driver_data = (unsigned long)ff_rumble },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb323),	/* Dual Trigger 3-in-1 (PC Mode) */
+		.driver_data = (unsigned long)ff_rumble },
+	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb324),	/* Dual Trigger 3-in-1 (PS3 Mode) */
  		.driver_data = (unsigned long)ff_rumble },
  	{ HID_USB_DEVICE(USB_VENDOR_ID_THRUSTMASTER, 0xb651),	/* FGT Rumble Force Wheel */
  		.driver_data = (unsigned long)ff_rumble },
diff -uprN linux-source-2.6.30/drivers/hid/Kconfig linux-source-test/drivers/hid/Kconfig
--- linux-source-2.6.30/drivers/hid/Kconfig	2009-06-10 05:05:27.000000000 +0200
+++ linux-source-test/drivers/hid/Kconfig	2009-06-26 15:58:15.000000000 +0200
@@ -268,8 +268,9 @@ config THRUSTMASTER_FF
  	depends on USB_HID
  	select INPUT_FF_MEMLESS
  	help
-	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or
-	  a THRUSTMASTER Ferrari GT Rumble Force or Force Feedback Wheel.
+	  Say Y here if you have a THRUSTMASTER FireStore Dual Power 2 or 3,
+	  a THRUSTMASTER Dual Trigger 3-in-1 or a THRUSTMASTER Ferrari GT
+	  Rumble Force or Force Feedback Wheel.

  config ZEROPLUS_FF
  	tristate "Zeroplus based game controller support"

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2009-06-26 14:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-06-26 13:59 [PATCH] HID: Supporting rumble with Thrustmaster Dual Trigger 3-in-1 rubenatch

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.