Skip to content

Commit 2175516

Browse files
LawstorantJiri Kosina
authored andcommitted
HID: pidff: Use macros instead of hardcoded min/max values for shorts
Makes it obvious these magic values ARE in fact derived from min and max values for s16 and u16 Signed-off-by: Tomasz Pakuła <tomasz.pakula.oficjalny@gmail.com> Reviewed-by: Michał Kopeć <michal@nozomi.space> Reviewed-by: Paul Dino Jones <paul@spacefreak18.xyz> Tested-by: Paul Dino Jones <paul@spacefreak18.xyz> Tested-by: Cristóferson Bueno <cbueno81@gmail.com> Tested-by: Pablo Cisneros <patchkez@protonmail.com> Signed-off-by: Jiri Kosina <jkosina@suse.com>
1 parent 4eb9c2e commit 2175516

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

drivers/hid/usbhid/hid-pidff.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222

2323
#define PID_EFFECTS_MAX 64
24-
#define PID_INFINITE 0xffff
24+
#define PID_INFINITE U16_MAX
2525

2626
/* Linux Force Feedback API uses miliseconds as time unit */
2727
#define FF_TIME_EXPONENT -3
@@ -226,12 +226,12 @@ static int pidff_rescale(int i, int max, struct hid_field *field)
226226
}
227227

228228
/*
229-
* Scale a signed value in range -0x8000..0x7fff for the given field
229+
* Scale a signed value in range S16_MIN..S16_MAX for the given field
230230
*/
231231
static int pidff_rescale_signed(int i, struct hid_field *field)
232232
{
233-
if (i > 0) return i * field->logical_maximum / 0x7fff;
234-
if (i < 0) return i * field->logical_minimum / -0x8000;
233+
if (i > 0) return i * field->logical_maximum / S16_MAX;
234+
if (i < 0) return i * field->logical_minimum / S16_MIN;
235235
return 0;
236236
}
237237

@@ -255,7 +255,7 @@ static u32 pidff_rescale_time(u16 time, struct hid_field *field)
255255

256256
static void pidff_set(struct pidff_usage *usage, u16 value)
257257
{
258-
usage->value[0] = pidff_rescale(value, 0xffff, usage->field);
258+
usage->value[0] = pidff_rescale(value, U16_MAX, usage->field);
259259
pr_debug("calculated from %d to %d\n", value, usage->value[0]);
260260
}
261261

@@ -266,10 +266,10 @@ static void pidff_set_signed(struct pidff_usage *usage, s16 value)
266266
else {
267267
if (value < 0)
268268
usage->value[0] =
269-
pidff_rescale(-value, 0x8000, usage->field);
269+
pidff_rescale(-value, -S16_MIN, usage->field);
270270
else
271271
usage->value[0] =
272-
pidff_rescale(value, 0x7fff, usage->field);
272+
pidff_rescale(value, S16_MAX, usage->field);
273273
}
274274
pr_debug("calculated from %d to %d\n", value, usage->value[0]);
275275
}
@@ -306,11 +306,11 @@ static void pidff_set_envelope_report(struct pidff_device *pidff,
306306

307307
pidff->set_envelope[PID_ATTACK_LEVEL].value[0] =
308308
pidff_rescale(envelope->attack_level >
309-
0x7fff ? 0x7fff : envelope->attack_level, 0x7fff,
309+
S16_MAX ? S16_MAX : envelope->attack_level, S16_MAX,
310310
pidff->set_envelope[PID_ATTACK_LEVEL].field);
311311
pidff->set_envelope[PID_FADE_LEVEL].value[0] =
312312
pidff_rescale(envelope->fade_level >
313-
0x7fff ? 0x7fff : envelope->fade_level, 0x7fff,
313+
S16_MAX ? S16_MAX : envelope->fade_level, S16_MAX,
314314
pidff->set_envelope[PID_FADE_LEVEL].field);
315315

316316
pidff_set_time(&pidff->set_envelope[PID_ATTACK_TIME],
@@ -399,7 +399,7 @@ static void pidff_set_effect_report(struct pidff_device *pidff,
399399
pidff->effect_direction->value[0] = pidff_rescale(
400400
pidff->quirks & HID_PIDFF_QUIRK_FIX_WHEEL_DIRECTION ?
401401
PIDFF_FIXED_WHEEL_DIRECTION : effect->direction,
402-
0xffff, pidff->effect_direction);
402+
U16_MAX, pidff->effect_direction);
403403

404404
/* Omit setting delay field if it's missing */
405405
if (!(pidff->quirks & HID_PIDFF_QUIRK_MISSING_DELAY))
@@ -1366,7 +1366,7 @@ static int pidff_check_autocenter(struct pidff_device *pidff,
13661366

13671367
if (pidff->block_load[PID_EFFECT_BLOCK_INDEX].value[0] ==
13681368
pidff->block_load[PID_EFFECT_BLOCK_INDEX].field->logical_minimum + 1) {
1369-
pidff_autocenter(pidff, 0xffff);
1369+
pidff_autocenter(pidff, U16_MAX);
13701370
set_bit(FF_AUTOCENTER, dev->ffbit);
13711371
} else {
13721372
hid_notice(pidff->hid,
@@ -1424,7 +1424,7 @@ int hid_pidff_init_with_quirks(struct hid_device *hid, u32 initial_quirks)
14241424
if (error)
14251425
goto fail;
14261426

1427-
pidff_set_gain_report(pidff, 0xffff);
1427+
pidff_set_gain_report(pidff, U16_MAX);
14281428
error = pidff_check_autocenter(pidff, dev);
14291429
if (error)
14301430
goto fail;

0 commit comments

Comments
 (0)