mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net.git/
synced 2026-04-17 22:23:45 -04:00
Merge branch 'for-6.20/pidff' into for-linus
- solidify trigger handling in hid-pidff (Tomasz Pakuła)
This commit is contained in:
@@ -523,9 +523,19 @@ static void pidff_set_effect_report(struct pidff_device *pidff,
|
||||
pidff_set_duration(&pidff->set_effect[PID_DURATION],
|
||||
effect->replay.length);
|
||||
|
||||
pidff->set_effect[PID_TRIGGER_BUTTON].value[0] = effect->trigger.button;
|
||||
pidff_set_time(&pidff->set_effect[PID_TRIGGER_REPEAT_INT],
|
||||
effect->trigger.interval);
|
||||
/* Some games set this to random values that can be out of range */
|
||||
s32 trigger_button_max =
|
||||
pidff->set_effect[PID_TRIGGER_BUTTON].field->logical_maximum;
|
||||
if (effect->trigger.button <= trigger_button_max) {
|
||||
pidff->set_effect[PID_TRIGGER_BUTTON].value[0] =
|
||||
effect->trigger.button;
|
||||
pidff_set_time(&pidff->set_effect[PID_TRIGGER_REPEAT_INT],
|
||||
effect->trigger.interval);
|
||||
} else {
|
||||
pidff->set_effect[PID_TRIGGER_BUTTON].value[0] = 0;
|
||||
pidff->set_effect[PID_TRIGGER_REPEAT_INT].value[0] = 0;
|
||||
}
|
||||
|
||||
pidff->set_effect[PID_GAIN].value[0] =
|
||||
pidff->set_effect[PID_GAIN].field->logical_maximum;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user