← 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)

 

For those who don't want to wait for an official patch, or compile their
own kernel, I've attached the recompiled hid module for amd64 hardy with
the above fix. Follow the instructions in the README and you should get
a functioning fn key ;)

Only tested on 15" Macbook Pro (penryn) running *64bit* Hardy. TRY AT
YOUR OWN RISK!

If some devs who have worked with hid quircks before could chime in with
suggestions as to how to add this fix to the kernel properly, I'd be
willing to write and and/or test the code.

** Attachment added: "Fix fn key on Macbook Pro (penryn) running *amd64* hardy"
   http://launchpadlibrarian.net/14568310/hid.tar.gz

-- 
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