Added quirks for VRS wheelbase
This commit is contained in:
@@ -23,6 +23,12 @@ static const struct hid_device_id pidff_wheel_devices[] = {
|
||||
.driver_data = PIDFF_QUIRK_FIX_WHEEL_DIRECTION | PIDFF_QUIRK_FIX_PERIODIC_ENVELOPE },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MOZA, USB_DEVICE_ID_MOZA_R16_R21),
|
||||
.driver_data = PIDFF_QUIRK_FIX_WHEEL_DIRECTION | PIDFF_QUIRK_FIX_PERIODIC_ENVELOPE },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_MOZA, USB_DEVICE_ID_MOZA_R16_R21),
|
||||
.driver_data = PIDFF_QUIRK_FIX_WHEEL_DIRECTION | PIDFF_QUIRK_FIX_PERIODIC_ENVELOPE },
|
||||
{ HID_USB_DEVICE(USB_VENDOR_ID_VRS, USB_DEVICE_ID_VRS_DFP),
|
||||
.driver_data = PIDFF_QUIRK_NO_DELAY_EFFECT
|
||||
| PIDFF_QUIRK_NO_STRICT_PID_CONTROL
|
||||
| PIDFF_QUIRK_NO_PID_PARAM_BLOCK_OFFSET },
|
||||
{ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(hid, pidff_wheel_devices);
|
||||
|
||||
12
hid-pidff.h
12
hid-pidff.h
@@ -19,6 +19,18 @@
|
||||
*/
|
||||
#define PIDFF_QUIRK_NO_DELAY_EFFECT BIT(2)
|
||||
|
||||
/*
|
||||
* Ignore PARAM_BLOCK_OFFSET (Axis number).
|
||||
* Most of the wheelbases have only one Axis
|
||||
*/
|
||||
#define PIDFF_QUIRK_NO_PID_PARAM_BLOCK_OFFSET BIT(3)
|
||||
|
||||
/*
|
||||
* Some wheelbases don't have some PID_CONTROL fields.
|
||||
* PID standard does not define fields that MUST exist, but
|
||||
* that driver was strict about them. This quirk disables it.
|
||||
*/
|
||||
#define PIDFF_QUIRK_NO_STRICT_PID_CONTROL BIT(4)
|
||||
|
||||
int hid_pidff_init(struct hid_device *hid);
|
||||
int hid_pidff_init_with_quirks(struct hid_device *hid, const struct hid_device_id *id);
|
||||
|
||||
Reference in New Issue
Block a user