Created attachment 1019904 [details] dmesg.log kernel-4.0.0-1.fc22.x86_64 MacBook Pro A1502 EMC 2835 The F1 thru F12 keys on the built-in keyboard all have symbols on them. The expected behavior, which happens on Fedora 21 with my MacBook Air: * Pressing the key alone takes the action indicated by the symbol. For example, F1 dims the screen and F2 brightens it. F12 increases volume and F11 decreases volume. * Pressing the key while holding the "fn" key triggers the F-key like on a PC keyboard. For example, fn+F1 triggers Gnome Help and fn+F11 triggers full-screen. What is happening on the MacBook Pro: * Pressing the keys with or without "fn" has the same effect. For example, both F1 and fn+F1 trigger Gnome Help. In evemu-record, fn+F1 produces: E: 31.049084 0004 0004 458810 # EV_MSC / MSC_SCAN 458810 E: 31.049084 0001 003b 0001 # EV_KEY / KEY_F1 1 E: 31.049084 0000 0000 0000 # ------------ SYN_REPORT (0) ---------- E: 31.153012 0004 0004 458810 # EV_MSC / MSC_SCAN 458810 E: 31.153012 0001 003b 0000 # EV_KEY / KEY_F1 0 E: 31.153012 0000 0000 0000 # ------------ SYN_REPORT (0) ---------- Only F1 produces: E: 59.474766 0004 0004 458810 # EV_MSC / MSC_SCAN 458810 E: 59.474766 0001 003b 0001 # EV_KEY / KEY_F1 1 E: 59.474766 0000 0000 0000 # ------------ SYN_REPORT (0) ---------- E: 59.530687 0004 0004 458810 # EV_MSC / MSC_SCAN 458810 E: 59.530687 0001 003b 0000 # EV_KEY / KEY_F1 0 E: 59.530687 0000 0000 0000 # ------------ SYN_REPORT (0) ---------- No event is produced for the "fn" key.
Created attachment 1019905 [details] grep '.*' /sys/class/dmi/id/*_* 2> /dev/null > dmi.log
libinput-0.14.1-2.fc22.x86_64
does the fn key send KEY_FN or no key at all? Also, did this work before? evdev used to force /sys/module/hid_apple/parameters/fnmode to "2" (default seems to be 0, which is disabled). Does it work like expected if you run echo "2" > /sys/module/hid_apple/parameters/fnmode "2" sets it to function keys first, "1" to multimedia keys first. I guess we could/should do the same in libinput though arguably it's not really our business but rather that of the DE.
Nope, no KEY_FN from pressing "fn". cat /sys/module/hid_apple/parameters/fnmode reports: 1 echo "2" > /sys/module/hid_apple/parameters/fnmode has no effect; events are reported the same as before.
On this hardware, the behavior is exactly the same on Fedora 21 (running Fedora-Live-Workstation-x86_64-21-5.iso on a USB stick).
Hi, So this works as desired in F-21, but not in F-22, correct? And you've checked the contents of /sys/module/hid_apple/parameters/fnmode and it is the same in both F-21 and F-22, correct? Can you see which kernel you are running in F-21 (likely a 3.19 kernel), and then try to download and install that kernel on F-22, boot F-22 using the F-21 kernel and see if that helps ? You can find a list of all Fedora kernels here: http://koji.fedoraproject.org/koji/packageinfo?packageID=8 And the latest F-21 3.19 kernel here: http://koji.fedoraproject.org/koji/buildinfo?buildID=636280 Regards, Hans
No, this is broken in the same way in both Fedora 21 (kernel-3.17.4-301.fc21.x86_64) and 22. All of the diagnostics I performed report the same in both; /sys/module/hid_apple/parameters/fnmode is "1" and changing it to "2" does not help.
Hi, (In reply to Christopher Beland from comment #7) > No, this is broken in the same way in both Fedora 21 > (kernel-3.17.4-301.fc21.x86_64) and 22. All of the diagnostics I performed > report the same in both; /sys/module/hid_apple/parameters/fnmode is "1" and > changing it to "2" does not help. Ah I see, can you provide the output of "lsusb" please ? Thanks, Hans
[beland@localhost ~]$ lsusb Bus 002 Device 002: ID 05ac:8406 Apple, Inc. Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 003: ID 05ac:0273 Apple, Inc. Bus 001 Device 002: ID 05ac:8290 Apple, Inc. Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Hi, (In reply to Christopher Beland from comment #9) > Bus 001 Device 003: ID 05ac:0273 Apple, Inc. Ok so this is one of the new 2015 keyboard / touchpad combos which are not yet supported, work is ongoing on getting these supported upstream. Benjamin, do you know if we can add an entry for these to drivers/hid/hid-apple.c to get the fn key to work without breaking the mouse emulation of the trackpad we are relying on for now ? Regards, Hans
(In reply to Hans de Goede from comment #10) > Benjamin, do you know if we can add an entry for these to > drivers/hid/hid-apple.c to get the fn key to work without breaking the mouse > emulation of the trackpad we are relying on for now ? That is part of the kernel bug #96771 (see the attached 0002-hid.patch). I would expect them to send it. I really don't want to send this on their behalf, but we can try to push them to push these upstream.
Just updated to kernel-4.2.3-200.fc22.x86_64 today and this is fixed! (Though now the backtick key produces less-than and tilde produces greater-than. I'll file that on a separate bug.)