https://bugzilla.kernel.org/show_bug.cgi?id=99881 --- Comment #39 from Guy Thouret (guy@xxxxxxxxxx) --- (In reply to ncopa from comment #38) > (In reply to Tomas Sandven from comment #36) > > [144510.510615] hid-generic 0005:004C:0267.0006: unknown main item tag 0x0 > > [144510.510687] input: Magic Keyboard as > > I have same keyboard (device Id 0x0267). What is interesting here is that > vendor ID is 0x004c when connect via bluetooth, but 0x05ac when connected > via USB. > > It looks that 0x004c seems to be vendor id for Apple in some bluetooth spec: > https://www.bluetooth.com/specifications/assigned-numbers/company-identifiers > > A hack to fix it would be something like: > > ```` > diff --git a/drivers/hid/hid-apple.c b/drivers/hid/hid-apple.c > index 25b7bd56ae11..528ec847cc03 100644 > --- a/drivers/hid/hid-apple.c > +++ b/drivers/hid/hid-apple.c > @@ -472,6 +472,8 @@ static const struct hid_device_id apple_devices[] = { > .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN }, > { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, > USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_ANSI), > .driver_data = APPLE_HAS_FN }, > + { HID_USB_DEVICE(0x004c, USB_DEVICE_ID_APPLE_MAGIC_KEYBOARD_ANSI), > + .driver_data = APPLE_HAS_FN }, > { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, > USB_DEVICE_ID_APPLE_WELLSPRING_ANSI), > .driver_data = APPLE_HAS_FN }, > { HID_USB_DEVICE(USB_VENDOR_ID_APPLE, > USB_DEVICE_ID_APPLE_WELLSPRING_ISO), > ```` > > I suppose we need to define the vendor id 0x004c properly in > drivers/hid/hid-ids.h but I don't know how? as BLUETOOTH_VENDOR_ID_APPLE? I had tried exactly that and had no luck. I just assumed the keyboard has two completely different modes of operation - one for USB and one for BT. In USB mode the keyboard operates flawlessly. -- You are receiving this mail because: You are the assignee for the bug.-- To unsubscribe from this list: send the line "unsubscribe linux-bluetooth" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html