From: Tomasz Pakuła Date: Wed, 13 Aug 2025 20:09:59 +0000 (+0200) Subject: HID: pidff: Separate check for infinite duration X-Git-Tag: v6.18-rc1~81^2~5^2~7 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=c774a9d78dba045e6d044e7a7e4fbb6deb0e9cbf;p=thirdparty%2Fkernel%2Flinux.git HID: pidff: Separate check for infinite duration It will be used in a few more places so this makes sure it will always work the same. Signed-off-by: Tomasz Pakuła Signed-off-by: Jiri Kosina --- diff --git a/drivers/hid/usbhid/hid-pidff.c b/drivers/hid/usbhid/hid-pidff.c index 32d42792c95a..534fb28f6e55 100644 --- a/drivers/hid/usbhid/hid-pidff.c +++ b/drivers/hid/usbhid/hid-pidff.c @@ -242,6 +242,11 @@ static int pidff_is_effect_conditional(struct ff_effect *effect) effect->type == FF_FRICTION; } +static int pidff_is_duration_infinite(u16 duration) +{ + return duration == FF_INFINITE || duration == PID_INFINITE; +} + /* * Get PID effect index from FF effect type. * Return 0 if invalid. @@ -374,12 +379,8 @@ static void pidff_set_time(struct pidff_usage *usage, u16 time) static void pidff_set_duration(struct pidff_usage *usage, u16 duration) { - /* Infinite value conversion from Linux API -> PID */ - if (duration == FF_INFINITE) - duration = PID_INFINITE; - /* PID defines INFINITE as the max possible value for duration field */ - if (duration == PID_INFINITE) { + if (pidff_is_duration_infinite(duration)) { usage->value[0] = (1U << usage->field->report_size) - 1; return; }