lkml.org 
[lkml]   [2013]   [Apr]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: BUG: Fn keys not working on EliteBook 8460p after fabf85e3ca15d5b94058f391dac8df870cdd427a

On 04/17/2013 01:59 PM, Matthew Garrett wrote:
> On Wed, 2013-04-17 at 11:37 -0400, Kyle Evans wrote:
>> On 04/16/2013 12:26 PM, Matthew Garrett wrote:
>>> Can you try this patch?
>>>
>> No dice. I have a dmi check patch that I will send in a day or two if
>> you don't find what you are looking for.
> DMI's almost certainly the wrong solution. According to your DSDT, EC
> register 0xe6 is called SFHK. That's written to by the SSHK method,
> which in turn is executed by SHKS which should be called by the
> hp_wmi_query call added there. Any chance you can try to figure out why
> that's not happening?
>

I am not fully understanding how the bios query ID gets translated into
the method. As far as I can tell this happens under HWMC. But, if I
trace through that, 0x8(write) and 0x9(read) do not exist. However,
0x9(read) does have a method that works when I query it, GHKS. I do not
find the method for 0x8(write).

0x9(write), or SHKS, is essentially ec_write(SFHK,Arg0). Arg0 turns out
to be whatever data is sent in the 0x9 buffer.
...
CreateDWordField (Arg1, 0x10, DDWD)

If (LEqual (CMDT, 0x09))
{
Store (SHKS (DDWD), Local2)
...

I tried writing 0x60, and I tried writing 0x0e just to see if it if a
subset of that register is needed to enable the keys and it seems I need
the full 0x6e. I only find two places in the DSDT with that value, both
in the WQAE buffer and I can't see how that is used.


\
 
 \ /
  Last update: 2013-04-18 16:21    [W:0.095 / U:0.904 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site