From: Huei-Horng Yo <hiroshi@ghostsinthelab.org>
To: linux-input@vger.kernel.org
Subject: Re: [PATCH] HID: Add Apple wireless keyboard 2011 JIS model support
Date: Tue, 04 Feb 2014 15:03:45 +0800 [thread overview]
Message-ID: <52F090D1.1020104@ghostsinthelab.org> (raw)
In-Reply-To: <52F06D95.9020007@ghostsinthelab.org>
Dear all,
於 西元2014年02月04日 12:33, Huei-Horng Yo 提到:
> Hello,
> 於 西元2014年02月04日 01:41, Huei-Horng Yo 提到:
>> Hello,
>>
>> I bought an Apple wireless keyboard 2011 JIS model,
>> the 'fn' key isn't work as expected in Linux 3.12.9.
>>
>> What my patch mainly does is to add support for that model.
>>
>> Before applying this patch, the keyboard behaves like a general keyboard,
>> its 'fn' key has no function to be used with arrow keys to do Home, End,
>> Page Up and Page Down.
>>
>> I found that this is because the HID IDs list hasn't it in vendor ID
>> 0x05ac (APPLE) section,
>> so I add the production ID 0x0257 (got the value by using bluetoothctl)
>> in drivers/hid/hid-ids.h
>> and add the corresponding codes in drivers/hid/hid-apple.c &
>> drivers/hid/hid-core.c.
>>
>> Thanks,
>> Huei-Horng Yo
>>
>>
>> P.S. Also reported in
>> Bugzilla:https://bugzilla.kernel.org/show_bug.cgi?id=69681
>> <https://bugzilla.kernel.org/show_bug.cgi?id=69681>
>
> Here is a patch for mainline (3.14-rc1):
>
Sorry to forgot to tag HID subsystem again. It's my first time to send
Linux kernel patch personally, thanks for your kindly guidance, please
correct me if I still have mistakes to contribute.
Huei-Horng Yo
0001-HID-Add-Apple-wireless-keyboard-2011-JIS-model-suppo.patch
From 9fd98c73db3fad5905eeb73fbc2a30550e64244e Mon Sep 17 00:00:00 2001
From: Huei-Horng Yo <hiroshi@ghostsinthelab.org>
Date: Tue, 4 Feb 2014 12:14:06 +0800
Subject: [PATCH] HID: Add Apple wireless keyboard 2011 JIS model support.
---
drivers/hid/hid-apple.c | 3 +++
drivers/hid/hid-core.c | 1 +
drivers/hid/hid-ids.h | 1 +
3 files changed, 5 insertions(+)
diff --git a/drivers/hid/hid-apple.c b/drivers/hid/hid-apple.c
index 4975581..f822fd2 100644
--- a/drivers/hid/hid-apple.c
+++ b/drivers/hid/hid-apple.c
@@ -469,6 +469,9 @@ static const struct hid_device_id apple_devices[] = {
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_ANSI),
.driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
+ { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
+ USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_JIS),
+ .driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_ALU_WIRELESS_JIS),
.driver_data = APPLE_NUMLOCK_EMULATION | APPLE_HAS_FN },
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_WELLSPRING_ANSI),
diff --git a/drivers/hid/hid-core.c b/drivers/hid/hid-core.c
index 3bfac3a..bb5c494 100644
--- a/drivers/hid/hid-core.c
+++ b/drivers/hid/hid-core.c
@@ -1679,6 +1679,7 @@ static const struct hid_device_id
hid_have_special_driver[] = {
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS) },
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_ANSI) },
{ HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_ISO) },
+ { HID_BLUETOOTH_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_JIS) },
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_FOUNTAIN_TP_ONLY) },
{ HID_USB_DEVICE(USB_VENDOR_ID_APPLE,
USB_DEVICE_ID_APPLE_GEYSER1_TP_ONLY) },
{ HID_USB_DEVICE(USB_VENDOR_ID_AUREAL, USB_DEVICE_ID_AUREAL_W01RN) },
diff --git a/drivers/hid/hid-ids.h b/drivers/hid/hid-ids.h
index 5a5248f..2c59283 100644
--- a/drivers/hid/hid-ids.h
+++ b/drivers/hid/hid-ids.h
@@ -135,6 +135,7 @@
#define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2009_JIS 0x023b
#define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_ANSI 0x0255
#define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_ISO 0x0256
+#define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_JIS 0x0257
#define USB_DEVICE_ID_APPLE_WELLSPRING8_ANSI 0x0290
#define USB_DEVICE_ID_APPLE_WELLSPRING8_ISO 0x0291
#define USB_DEVICE_ID_APPLE_WELLSPRING8_JIS 0x0292
--
1.8.5.3
--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
next prev parent reply other threads:[~2014-02-04 7:03 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-03 17:41 [PATCH] HID: Add Apple wireless keyboard 2011 JIS model support Huei-Horng Yo
2014-02-04 4:33 ` Huei-Horng Yo
2014-02-04 7:03 ` Huei-Horng Yo [this message]
-- strict thread matches above, loose matches on Subject: below --
2014-02-06 9:18 Huei-Horng Yo
2014-02-06 9:22 ` Jiri Kosina
2014-02-06 9:40 ` Huei-Horng Yo
2014-02-06 13:45 ` Jiri Kosina
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52F090D1.1020104@ghostsinthelab.org \
--to=hiroshi@ghostsinthelab.org \
--cc=linux-input@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).