OSDN Git Service

HID: uclogic: Fix frame templates for big endian architectures
authorJosé Expósito <jose.exposito89@gmail.com>
Thu, 10 Nov 2022 17:49:18 +0000 (18:49 +0100)
committerJiri Kosina <jkosina@suse.cz>
Mon, 14 Nov 2022 14:02:38 +0000 (15:02 +0100)
commita6f4f1662711bd03308371d9649783a5be596898
treea2a1544de7293c7e7d06bc1462eef632cc313110
parentf77810f744139572a63e5a85ab6a8c10c2d44fb1
HID: uclogic: Fix frame templates for big endian architectures

When parsing a frame template with a placeholder indicating the number
of buttons present on the frame its value was incorrectly set on big
endian architectures due to double little endian conversion.

In order to reproduce the issue and verify the fix, run the HID KUnit
tests on the PowerPC architecture:

  $ ./tools/testing/kunit/kunit.py run --kunitconfig=drivers/hid \
    --arch=powerpc --cross_compile=powerpc64-linux-gnu-

Fixes: 867c89254425 ("HID: uclogic: Allow to generate frame templates")
Signed-off-by: José Expósito <jose.exposito89@gmail.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
drivers/hid/hid-uclogic-rdesc.c