Re: [PATCH] [RESEND] fix HID quirks for aluminium apple wireless keyboards

From: Paul Collins
Date: Sat Jun 14 2008 - 04:06:49 EST


Marcel Holtmann <marcel@xxxxxxxxxxxx> writes:

>> I also took the liberty of adding defines for the vendor and for the
>> existing Mighty Mouse quirk.
>
> I prefer not to do this. I don't see any benefit or readability coming
> out of it. Leave it as it is. Add the numeric ids and then a line on top
> of it describing the devices.

Here is a new version of the patch that just adds the entries to
hidp_blacklist using your suggested style. I'm leaving the USB HID's
table alone based on Phil Endecott's remarks regarding HID proxy mode,
so now this patch only touches Bluetooth code.


bluetooth: fix Fn on Apple Wireless Keyboard

Enable the HID quirks for Apple Wireless Keyboards, based on the quirk
table entries in the USB HID. With this patch applied the Fn key on my
keyboard now functions as expected.

diff --git a/net/bluetooth/hidp/core.c b/net/bluetooth/hidp/core.c
index 519cdb9..62f174a 100644
--- a/net/bluetooth/hidp/core.c
+++ b/net/bluetooth/hidp/core.c
@@ -676,6 +676,12 @@ static const struct {
__u16 idProduct;
unsigned quirks;
} hidp_blacklist[] = {
+ /* Apple Wireless Keyboard, ANSI layout */
+ { 0x05ac, 0x022c, HID_QUIRK_APPLE_NUMLOCK_EMULATION | HID_QUIRK_APPLE_HAS_FN },
+ /* Apple Wireless Keyboard, ISO layout */
+ { 0x05ac, 0x022d, HID_QUIRK_APPLE_NUMLOCK_EMULATION | HID_QUIRK_APPLE_HAS_FN | HID_QUIRK_APPLE_ISO_KEYBOARD },
+ /* Apple Wireless Keyboard, JIS layout */
+ { 0x05ac, 0x022e, HID_QUIRK_APPLE_NUMLOCK_EMULATION | HID_QUIRK_APPLE_HAS_FN },
/* Apple wireless Mighty Mouse */
{ 0x05ac, 0x030c, HID_QUIRK_MIGHTYMOUSE | HID_QUIRK_INVERT_HWHEEL },



--
Paul Collins
Wellington, New Zealand

Dag vijandelijk luchtschip de huismeester is dood
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/