[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: ThinkPad T420 mute button LED.

On Tue, 22 Mar 2011, Manoj wrote:
> I am trying to enable the LED mute button on T420, I found that

Manoj, please hunt down threads about LED support on the archives of this
ML and of the linux-thinkpad ML.

New thinkpads offer some other options such as different dimness levels on
some LEDs.  It is likely that the newer T4xx/5xx follow these "expanded"
calls in the DSDT.

Support for them was never completed.

> TPACPI_Q_LNV('8', '3', 0xXXXX), /* T420 */

Those quirks are only to select which leds are present or not.  You might
need a secondary quirk table if you actually want to tweak anything (and, of
course, you'll have to add the relevant code).

>                     Method (LED, 2, NotSerialized)
>                      {
>                          Or (Arg0, Arg1, Local0)
>                          If (\H8DR)
>                          {
>                              Store (Local0, HLCL)
>                          }
>                          Else
>                          {
>                              \WBEC (0x0C, Local0)
>                          }
>                      }
> but not sure how to form the __quirk value from that.

You don't.  What that tells me is that it takes two parameters, which are
OR'd together (sw compatibility, so the mapping of the bits might be close
to the original IBM ones for the T4x/X4x series), and stores them directly
to HLCL.  H is for H8 (EC). LCL is led control (low?).   WBEC is a
compatibility layer from hell, and it is best left alone (runs on some
ancient OS that has ACPI without EmbeddedController region support) and
should do the same as the store to HLCL, but using the SMBIOS instead.

You will need to reverse engineer this one, and map it completely.  Also
check other DSDT activity on HLCL, HLCH (if available), etc.

It may well be that Lenovo simplified the EC LED control interface, or
overrode it in weird ways, and you'd need a table-based lookup to map
userspace API behaviour to led behaviour.  The IBM EC was *much* simpler to
deal with... at least on the old ECs, all LEDS were created equal :-)

  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh

Enable your software for Intel(R) Active Management Technology to meet the
growing manageability and security demands of your customers. Businesses
are taking advantage of Intel(R) vPro (TM) technology - will your software 
be a part of the solution? Download the Intel(R) Manageability Checker 
today! http://p.sf.net/sfu/intel-dev2devmar
ibm-acpi-devel mailing list

[Site Home]     [Linux ACPI]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Photo]     [Yosemite Photos]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux