The Fn key of my Apple keyboard doesn't work

Bug #942184 reported by Laurent Vivier on 2012-02-27
This bug affects 1 person
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Herton R. Krzesinski

Bug Description

SRU Justification


Non functioning Fn keys without hid-apple support.


Add missing device id for Apple wireless aluminum keyboard (model 2011)


Attach keyboard and use Fn keys.


Ubuntu 2.6.38-13.55-generic

The Fn key of my brand new Apple wireless keyboard (A1314) is not managed.

It seems because the hid-apple module is not loaded :

 input: Apple Wireless Keyboard as /devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6/1-3.6:1.0/bluetooth/hci0/hci0:42/input6
 generic-bluetooth 0005:05AC:0256.0003: input,hidraw0: BLUETOOTH HID v0.50 Keyboard [Apple Wireless Keyboard] on 00:1B:DC:00:F5:A9

Checking in kernel source product id 0x0256 is not known

I've added it and recompiled hid.ko and hid-apple.ko and now it works fine:

 input: Apple Wireless Keyboard as /devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6/1-3.6:1.0/bluetooth/hci0/hci0:42/input4
 apple 0005:05AC:0256.0001: input,hidraw0: BLUETOOTH HID v0.50 Keyboard [Apple Wireless Keyboard] on 00:1B:DC:00:F5:A9

ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: linux-image-2.6.38-13-generic 2.6.38-13.55 [modified: lib/modules/2.6.38-13-generic/kernel/drivers/hid/hid-apple.ko lib/modules/2.6.38-13-generic/kernel/drivers/hid/hid.ko]
ProcVersionSignature: Ubuntu 2.6.38-13.55-generic
Uname: Linux 2.6.38-13-generic x86_64
NonfreeKernelModules: nvidia
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: amd64
 /dev/snd/controlC1: laurent 1919 F.... pulseaudio
 /dev/snd/controlC0: laurent 1919 F.... pulseaudio
CRDA: Error: [Errno 2] Aucun fichier ou dossier de ce type
 Card hw:0 'Intel'/'HDA Intel at 0xfb4f8000 irq 48'
   Mixer name : 'Realtek ALC889A'
   Components : 'HDA:10ec0885,18491890,00100101'
   Controls : 36
   Simple ctrls : 21
 Card hw:1 'U0x46d0x825'/'USB Device 0x46d:0x825 at usb-0000:00:1a.7-4, high speed'
   Mixer name : 'USB Mixer'
   Components : 'USB046d:0825'
   Controls : 2
   Simple ctrls : 1
 Simple mixer control 'Mic',0
   Capabilities: cvolume cvolume-joined cswitch cswitch-joined penum
   Capture channels: Mono
   Limits: Capture 0 - 6144
   Mono: Capture 6144 [100%] [30.00dB] [on]
Date: Mon Feb 27 20:08:48 2012
HibernationDevice: RESUME=/dev/dm-3
InstallationMedia: Ubuntu 11.04 "Natty Narwhal" - Release amd64 (20110426)
MachineType: To Be Filled By O.E.M. To Be Filled By O.E.M.
ProcKernelCmdLine: root=UUID=6cd6b1b8-4eb0-4459-95df-68fb11a1527c ro loop.max_part=16 quiet splash crashkernel=384M-2G:64M,2G-:128M
 linux-restricted-modules-2.6.38-13-generic N/A
 linux-backports-modules-2.6.38-13-generic N/A
 linux-firmware 1.52
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install) 12/18/2008
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: P1.90 P43R1600Twins-WiFi
dmi.board.vendor: ASRock
dmi.chassis.asset.tag: To Be Filled By O.E.M.
dmi.chassis.type: 3
dmi.chassis.vendor: To Be Filled By O.E.M.
dmi.chassis.version: To Be Filled By O.E.M.
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrP1.90:bd12/18/2008:svnToBeFilledByO.E.M.:pnToBeFilledByO.E.M.:pvrToBeFilledByO.E.M.:rvnASRock:rnP43R1600Twins-WiFi:rvr:cvnToBeFilledByO.E.M.:ct3:cvrToBeFilledByO.E.M.: To Be Filled By O.E.M.
dmi.product.version: To Be Filled By O.E.M.
dmi.sys.vendor: To Be Filled By O.E.M.

Laurent Vivier (laurent-vivier) wrote :
Brad Figg (brad-figg) on 2012-02-27
Changed in linux (Ubuntu):
status: New → Confirmed
Joseph Salisbury (jsalisbury) wrote :

It looks like your device has been added to the upstream kernel and is also available in precise:

hid-ids.h:#define USB_DEVICE_ID_APPLE_ALU_WIRELESS_2011_ISO 0x0256

Did you open this bug to see if this can be backported to prior stable releases?

Changed in linux (Ubuntu):
importance: Undecided → Medium
tags: added: kernel-da-key
Laurent Vivier (laurent-vivier) wrote :


I just want to use my keyboard with Ubuntu 11.04 without having to recompile the kernel each time the kernel is updated.

Herton R. Krzesinski (herton) wrote :
Changed in linux (Ubuntu):
status: Confirmed → Fix Released
Changed in linux (Ubuntu Natty):
status: New → In Progress
importance: Undecided → Medium
assignee: nobody → Herton R. Krzesinski (herton)
description: updated
Changed in linux (Ubuntu Natty):
status: In Progress → Fix Committed
Herton R. Krzesinski (herton) wrote :

This bug is awaiting verification that the kernel for Natty in -proposed solves the problem (2.6.38-13.57). Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification-needed-natty' to 'verification-done-natty'.

If verification is not done by one week from today, this fix will be dropped from the source code, and this bug will be closed.

See for documentation how to enable and use -proposed. Thank you!

tags: added: verification-needed-natty
Laurent Vivier (laurent-vivier) wrote :

Verification done:

$ uname -a
Linux Quad 2.6.38-13-generic #57-Ubuntu SMP Mon Mar 5 18:29:54 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
$ dmesg
[ 31.010704] input: Apple Wireless Keyboard as /devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6/1-3.6:1.0/bluetooth/hci0/hci0:43/input4
[ 31.010808] apple 0005:05AC:0256.0001: input,hidraw0: BLUETOOTH HID v0.50 Keyboard [Apple Wireless Keyboard] on 00:1B:DC:00:F5:A9
$ lsmod |grep hid

hidp 22572 2
l2cap 53610 25 hidp,rfcomm,bnep
bluetooth 72320 10 hidp,rfcomm,sco,bnep,l2cap,btusb
hid_apple 13324 0
hid 91020 2 hidp,hid_apple

tags: added: verification-done-natty
removed: verification-needed-natty
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package linux - 2.6.38-13.57

linux (2.6.38-13.57) natty-proposed; urgency=low

  [Herton R. Krzesinski]

  * Release Tracking Bug
    - LP: #947254

  [ Upstream Kernel Changes ]

  * KVM: Device assignment permission checks
    - LP: #897812
    - CVE-2011-4347
  * HID: hid-apple: add device ID of another wireless aluminium
    - LP: #942184
  * eCryptfs: Extend array bounds for all filename chars
    - LP: #944990
  * eCryptfs: Remove extra d_delete in ecryptfs_rmdir
    - LP: #723518
  * eCryptfs: Clear i_nlink in rmdir
    - LP: #723518
  * ipc/sem.c: fix race with concurrent semtimedop() timeouts and IPC_RMID
    - LP: #943815
  * eCryptfs: Sanitize write counts of /dev/ecryptfs
    - LP: #947075
  * eCryptfs: Infinite loop due to overflow in ecryptfs_write()
    - LP: #947143
 -- Herton Ronaldo Krzesinski <email address hidden> Mon, 05 Mar 2012 13:28:11 -0300

Changed in linux (Ubuntu Natty):
status: Fix Committed → Fix Released
To post a comment you must log in.