aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/hid/hid-lg4ff.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/drivers/hid/hid-lg4ff.c b/drivers/hid/hid-lg4ff.c
index fe15b3bdffcf..4ea7ccaa15ea 100644
--- a/drivers/hid/hid-lg4ff.c
+++ b/drivers/hid/hid-lg4ff.c
@@ -43,6 +43,11 @@
43#define G27_REV_MAJ 0x12 43#define G27_REV_MAJ 0x12
44#define G27_REV_MIN 0x38 44#define G27_REV_MIN 0x38
45 45
46#define DFP_X_MIN 0
47#define DFP_X_MAX 16383
48#define DFP_PEDAL_MIN 0
49#define DFP_PEDAL_MAX 255
50
46#define to_hid_device(pdev) container_of(pdev, struct hid_device, dev) 51#define to_hid_device(pdev) container_of(pdev, struct hid_device, dev)
47 52
48static void hid_lg4ff_set_range_dfp(struct hid_device *hid, u16 range); 53static void hid_lg4ff_set_range_dfp(struct hid_device *hid, u16 range);
@@ -593,6 +598,18 @@ int lg4ff_init(struct hid_device *hid)
593 return error; 598 return error;
594 dbg_hid("sysfs interface created\n"); 599 dbg_hid("sysfs interface created\n");
595 600
601 /* Set default axes parameters */
602 switch (lg4ff_devices[i].product_id) {
603 case USB_DEVICE_ID_LOGITECH_DFP_WHEEL:
604 dbg_hid("Setting axes parameters for Driving Force Pro\n");
605 input_set_abs_params(dev, ABS_X, DFP_X_MIN, DFP_X_MAX, 0, 0);
606 input_set_abs_params(dev, ABS_Y, DFP_PEDAL_MIN, DFP_PEDAL_MAX, 0, 0);
607 input_set_abs_params(dev, ABS_RZ, DFP_PEDAL_MIN, DFP_PEDAL_MAX, 0, 0);
608 break;
609 default:
610 break;
611 }
612
596 /* Set the maximum range to start with */ 613 /* Set the maximum range to start with */
597 entry->range = entry->max_range; 614 entry->range = entry->max_range;
598 if (entry->set_range != NULL) 615 if (entry->set_range != NULL)