]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph-client.git/commitdiff
HID: magicmouse: fix battery reporting for Apple Magic Trackpad 2
authorJulius Lehmann <lehmanju@devpi.de>
Sat, 14 Feb 2026 19:34:21 +0000 (20:34 +0100)
committerJiri Kosina <jkosina@suse.com>
Tue, 24 Feb 2026 08:41:21 +0000 (09:41 +0100)
Battery reporting does not work for the Apple Magic Trackpad 2 if it is
connected via USB. The current hid descriptor fixup code checks for a
hid descriptor length of exactly 83 bytes. If the hid descriptor is
larger, which is the case for newer apple mice, the fixup is not
applied.

This fix checks for hid descriptor sizes greater/equal 83 bytes which
applies the fixup for newer devices as well.

Signed-off-by: Julius Lehmann <lehmanju@devpi.de>
Signed-off-by: Jiri Kosina <jkosina@suse.com>
drivers/hid/hid-magicmouse.c

index 17908d52c0274b96ea764e3d4f60b7be8ab76a84..9eadf3252d0dc8c623c099ee3f37bf874fdc023e 100644 (file)
@@ -990,7 +990,7 @@ static const __u8 *magicmouse_report_fixup(struct hid_device *hdev, __u8 *rdesc,
         */
        if ((is_usb_magicmouse2(hdev->vendor, hdev->product) ||
             is_usb_magictrackpad2(hdev->vendor, hdev->product)) &&
-           *rsize == 83 && rdesc[46] == 0x84 && rdesc[58] == 0x85) {
+           *rsize >= 83 && rdesc[46] == 0x84 && rdesc[58] == 0x85) {
                hid_info(hdev,
                         "fixing up magicmouse battery report descriptor\n");
                *rsize = *rsize - 1;