Re: BUG: Fn keys not working on EliteBook 8460p after fabf85e3ca15d5b94058f391dac8df870cdd427a

From: Pali RohÃr
Date: Wed Apr 17 2013 - 09:56:48 EST


On Tuesday 16 April 2013 18:26:26 Matthew Garrett wrote:
> Can you try this patch?
>
> diff --git a/drivers/platform/x86/hp-wmi.c
> b/drivers/platform/x86/hp-wmi.c
> index 45cacf7..91cc5df 100644
> --- a/drivers/platform/x86/hp-wmi.c
> +++ b/drivers/platform/x86/hp-wmi.c
> @@ -53,6 +53,7 @@
> MODULE_ALIAS("wmi:5FB7F034-2C63-45e9-BE91-3D44E2C707E4");
> #define HPWMI_ALS_QUERY 0x3
> #define HPWMI_HARDWARE_QUERY 0x4
> #define HPWMI_WIRELESS_QUERY 0x5
> +#define HPWMI_BIOS_QUERY 0x8
> #define HPWMI_HOTKEY_QUERY 0xc
> #define HPWMI_WIRELESS2_QUERY 0x1b
>
> @@ -284,6 +285,18 @@ static int hp_wmi_tablet_state(void)
> return (state & 0x4) ? 1 : 0;
> }
>
> +static int hp_wmi_enable_hotkeys()
> +{
> + int ret;
> + int query = 1;
> +
> + ret = hp_wmi_perform_query(HPWMI_BIOS_QUERY, 1, &query,
> sizeof(query), + 0);
> + if (ret)
> + return -EINVAL;
> + return 0;
> +}
> +
> static int hp_wmi_set_block(void *data, bool blocked)
> {
> enum hp_wmi_radio r = (enum hp_wmi_radio) data;
> @@ -925,9 +938,7 @@ static int __init hp_wmi_init(void)
> err = hp_wmi_input_setup();
> if (err)
> return err;
> -
> - //Enable magic for hotkeys that run on the SMBus
> - ec_write(0xe6,0x6e);
> + hp_wmi_enable_hotkeys();
> }
>
> if (bios_capable) {

Hello,
I tested above patch and it fixing my problem. Now Fn keys working
again on my HP EliteBook 8460p.

--
Pali RohÃr
pali.rohar@xxxxxxxxx

Attachment: signature.asc
Description: This is a digitally signed message part.