← Back to team overview

mactel-support team mailing list archive

[Bug 207127] Re: fn key doesn't work in hardy with macbook pro fourth generation (4, 1)

 

I've updated the patch to include Macbook Air keyboards as per the spec
in Info.plist.

The dynamic fix for Macbook Air is:
options usbhid quirks=0x05ac:0x0223:0x00000800,0x05ac:0x0224:0x00004800,0x05ac:0x0225:0x00000800

Regarding the function keys, I can confirm your findings, but I believe
it's an issue with pommed, and not the hid module. Perhaps it's fixed in
pommed 1.17, but I've not tried compiling it.

Eitan, I can't reproduce the ~ problem. Is your keyboard ISO (as
specified in "lsusb -v")?

** Attachment added: "fix_fn_key_on_macbookpro_4_1_and_mb_air.patch"
   http://launchpadlibrarian.net/14613817/fix_fn_key_on_macbookpro_4_1_and_mb_air.patch

-- 
fn key doesn't work in hardy with macbook pro fourth generation (4,1)
https://bugs.launchpad.net/bugs/207127
You received this bug notification because you are a member of Mactel
Support, which is the registrant for Mactel Support.

Status in Mactel Support: New
Status in Source Package "linux-meta" in Ubuntu: Confirmed

Bug description:
hardware:  macbook pro generation 4,1 (feb 2008)
problem:  fn key not detected
test:  run xev.  press fn key.  nothing happens.
consequences:  home/end/pgup/pgdown don't work.

i was able to fix this issue by compiling my own kernel.
i downloaded linux-source from ubuntu hardy
(VERSION = 2,PATCHLEVEL = 6,SUBLEVEL = 24,EXTRAVERSION = .3)

and revised this file:
 drivers/hid/usbhid/hid-quirks.c 

used lsusb to grab the id of the internal keyboard device:
  Bus 005 Device 003: ID 05ac:0230 Apple Computer, Inc.

and revised the c file accordingly:

/* next line commented out by eitan and replaced with line below;
  changing address for device from 0x021b to 0x0230 which is what lsusb tells me
  my internal keyboard device id actually is
#define USB_DEVICE_ID_APPLE_GEYSER4_ISO 0x021b
 */
#define USB_DEVICE_ID_APPLE_GEYSER4_ISO 0x0230

rebooting with the new kernel, the fn key now works.
i don't know if this breaks other versions of the macbook pro
and am otherwise ignorant of the linux kernel source code.

thanks,
/ eitan



Follow ups