You are not logged in.

#1 2016-10-04 19:29:58

Ternvein
Member
Registered: 2016-10-04
Posts: 3

[SOLVED] Asus K751S function keys have no scancodes

Hello everybody.
Now I'm running Arch on my K751S laptop and the only issue that bothers me is function keys.
I've read quite a bit about this problem, tried different solutions, including asus_nb_wmi and acpi_osi, but nothing worked still.
Interesting fact that my function keys produce no scancodes in showkey (without X running), so I suspect some low-level problem with the kernel, probably wmi module in particular.
And I'm sure that these keys work, because when I run calculate linux live CD from my laptop they work "out of the box".

My wmi-related modules are:

$ lsmod | grep wmi
asus_nb_wmi            24576  0
asus_wmi               24576  1 asus_nb_wmi
mxm_wmi                16384  0
sparse_keymap          16384  1 asus_wmi
rfkill                 20480  7 cfg80211,bluetooth,asus_wmi
video                  36864  2 i915,asus_wmi
wmi                    20480  2 mxm_wmi,asus_wmi
led_class              16384  4 ath9k,sdhci,input_leds,asus_wmi

Sound-related keys work fine (volume, mute). But all others are not.
Any ideas what I missed?

Last edited by Ternvein (2016-10-05 11:05:54)


Arch Linux x86_64 ASUS K751SJ

Offline

#2 2016-10-05 11:05:31

Ternvein
Member
Registered: 2016-10-04
Posts: 3

Re: [SOLVED] Asus K751S function keys have no scancodes

Solved.
It was really an acpi_osi issue, had to set it to

acpi_osi="!Windows 2012"

, configuring all proper acpi modules in /etc/modules-load.d and everything is fine. Though, I really want to know why disabling Windows 2012 acpi_osi treated like a "bad solution" (which I saw quite often while looking for answer) and what potential pitfalls it can produce.
Can anyone explain me that?

If someone will encounter the same issue, my configuration is:

  • Modules from acpi package:

    ac
    acpi_ipmi
    acpi_pad
    battery
    bbswitch
    button
    fan
    sbs
    sbshc
    thermal
    video
  • WMI modules

    lsmod | grep wmi
    mxm_wmi                16384  0
    asus_nb_wmi            24576  0
    asus_wmi               24576  1 asus_nb_wmi
    sparse_keymap          16384  1 asus_wmi
    rfkill                 20480  7 cfg80211,bluetooth,asus_wmi
    wmi                    16384  2 mxm_wmi,asus_wmi
    video                  36864  3 i915,int3406_thermal,asus_wmi
    led_class              16384  4 ath9k,sdhci,input_leds,asus_wmi
  • GRUB config

    cat /etc/default/grub | grep acpi
    GRUB_CMDLINE_LINUX_DEFAULT="quiet acpi_osi=\"!Windows 2012\""
  • Related packages

    community/acpi
    community/acpid
    community/bbswitch (not quite, but still needed for optimus)

Last edited by Ternvein (2016-10-05 12:18:39)


Arch Linux x86_64 ASUS K751SJ

Offline

Board footer

Powered by FluxBB