HID: pidff: Simplify pidff_rescale_signed
authorTomasz Pakuła <tomasz.pakula.oficjalny@gmail.com>
Sat, 1 Feb 2025 11:39:04 +0000 (12:39 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 20 Apr 2025 08:15:30 +0000 (10:15 +0200)
[ Upstream commit 4eb9c2ee538b62dc5dcae192297c3a4044b7ade5 ]

This function overrelies on ternary operators and makes it hard to parse
it mentally. New version makes it very easy to understand.

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/hid/usbhid/hid-pidff.c

index a8eaa77e80be3d40cb4120fdf25e2fcd9e3ae145..8083eb7684e5e40a989ed3845c381af586a1df09 100644 (file)
@@ -230,9 +230,9 @@ static int pidff_rescale(int i, int max, struct hid_field *field)
  */
 static int pidff_rescale_signed(int i, struct hid_field *field)
 {
-       return i == 0 ? 0 : i >
-           0 ? i * field->logical_maximum / 0x7fff : i *
-           field->logical_minimum / -0x8000;
+       if (i > 0) return i * field->logical_maximum / 0x7fff;
+       if (i < 0) return i * field->logical_minimum / -0x8000;
+       return 0;
 }
 
 /*