Fix NO_DELAY_EFFECT quirk implementation

This commit is contained in:
Oleg
2024-07-15 04:31:27 +03:00
parent 6e39b84de7
commit 45360c7c34

View File

@@ -374,7 +374,9 @@ static void pidff_set_effect_report(struct pidff_device *pidff,
pidff->effect_direction->value[0] =
pidff_rescale(direction, 0xffff, pidff->effect_direction);
pidff->set_effect[PID_START_DELAY].value[0] = effect->replay.delay;
if (!(pidff->quirks & PIDFF_QUIRK_NO_DELAY_EFFECT)) {
pidff->set_effect[PID_START_DELAY].value[0] = effect->replay.delay;
}
hid_hw_request(pidff->hid, pidff->reports[PID_SET_EFFECT],
HID_REQ_SET_REPORT);
@@ -826,7 +828,9 @@ static void pidff_autocenter(struct pidff_device *pidff, u16 magnitude)
pidff->set_effect[PID_TRIGGER_REPEAT_INT].value[0] = 0;
pidff_set(&pidff->set_effect[PID_GAIN], magnitude);
pidff->set_effect[PID_DIRECTION_ENABLE].value[0] = 1;
pidff->set_effect[PID_START_DELAY].value[0] = 0;
if (!(pidff->quirks & PIDFF_QUIRK_NO_DELAY_EFFECT)) {
pidff->set_effect[PID_START_DELAY].value[0] = 0;
}
hid_hw_request(pidff->hid, pidff->reports[PID_SET_EFFECT],
HID_REQ_SET_REPORT);