All of lore.kernel.org
 help / color / mirror / Atom feed
* How to implement ACPI EC support?
@ 2012-10-31 13:50 Sebastian Riemer
  2012-11-02  2:12 ` Henrique de Moraes Holschuh
  0 siblings, 1 reply; 7+ messages in thread
From: Sebastian Riemer @ 2012-10-31 13:50 UTC (permalink / raw)
  To: Henrique de Moraes Holschuh; +Cc: platform-driver-x86

Hi Henrique,

I've noticed the ACPI embedded controller (EC) support in the
"thinkpad_acpi" driver.

New Samsung laptops (NP530U3C, NP900X4B, NP900X3C, ...) also have an EC
which isn't supported by the generic ACPI driver. The lid, the battery
status and the power supply status are connected to it.

How did you implement the EC support in the thinkpad driver? Did you
have documentation or was it done by reverse engineering?

Could you have a look at the related kernel bugzilla bugs?:

https://bugzilla.kernel.org/show_bug.cgi?id=45461
https://bugzilla.kernel.org/show_bug.cgi?id=44161

Cheers,
Sebastian

-- 
Sebastian Riemer
Linux Kernel Developer - Storage

We are looking for (SENIOR) LINUX KERNEL DEVELOPERS!

ProfitBricks GmbH • Greifswalder Str. 207 • 10405 Berlin, Germany
www.profitbricks.com • sebastian.riemer@profitbricks.com

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to implement ACPI EC support?
  2012-10-31 13:50 How to implement ACPI EC support? Sebastian Riemer
@ 2012-11-02  2:12 ` Henrique de Moraes Holschuh
  2012-11-02  9:57   ` Corentin Chary
  0 siblings, 1 reply; 7+ messages in thread
From: Henrique de Moraes Holschuh @ 2012-11-02  2:12 UTC (permalink / raw)
  To: Sebastian Riemer; +Cc: platform-driver-x86

On Wed, 31 Oct 2012, Sebastian Riemer wrote:
> I've noticed the ACPI embedded controller (EC) support in the
> "thinkpad_acpi" driver.
> 
> New Samsung laptops (NP530U3C, NP900X4B, NP900X3C, ...) also have an EC
> which isn't supported by the generic ACPI driver. The lid, the battery
> status and the power supply status are connected to it.
> 
> How did you implement the EC support in the thinkpad driver? Did you
> have documentation or was it done by reverse engineering?

It was done through lots of trial and error by several people over more than
a decade, and sometime ago SuSE managed to get me in contact with some
Lenovo ThinkPad firmware engineers in Japan, which did help a lot.

However, thinkpad-acpi is an old driver, you might want to ask the
maintainers of newer WMI-based drivers about how they are managing...

-- 
  "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

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to implement ACPI EC support?
  2012-11-02  2:12 ` Henrique de Moraes Holschuh
@ 2012-11-02  9:57   ` Corentin Chary
  2012-11-02 11:43     ` Sebastian Riemer
  0 siblings, 1 reply; 7+ messages in thread
From: Corentin Chary @ 2012-11-02  9:57 UTC (permalink / raw)
  To: Henrique de Moraes Holschuh; +Cc: Sebastian Riemer, platform-driver-x86

On Fri, Nov 2, 2012 at 2:12 AM, Henrique de Moraes Holschuh
<hmh@hmh.eng.br> wrote:
> On Wed, 31 Oct 2012, Sebastian Riemer wrote:
>> I've noticed the ACPI embedded controller (EC) support in the
>> "thinkpad_acpi" driver.
>>
>> New Samsung laptops (NP530U3C, NP900X4B, NP900X3C, ...) also have an EC
>> which isn't supported by the generic ACPI driver. The lid, the battery
>> status and the power supply status are connected to it.
>>
>> How did you implement the EC support in the thinkpad driver? Did you
>> have documentation or was it done by reverse engineering?
>
> It was done through lots of trial and error by several people over more than
> a decade, and sometime ago SuSE managed to get me in contact with some
> Lenovo ThinkPad firmware engineers in Japan, which did help a lot.
>
> However, thinkpad-acpi is an old driver, you might want to ask the
> maintainers of newer WMI-based drivers about how they are managing...

I don't know if WMI can really help here, but will free to use wmidump
to extract all WMI informations, and

http://lwn.net/Articles/391230/
https://github.com/iksaif/wmidump
http://msdn.microsoft.com/en-us/library/windows/hardware/ff565588
http://glucik.blogspot.com/2011/12/mof-decompilation.html  (!!! the
tool is Wmimofck.exe not wmiofck.exe)

-- 
Corentin Chary
http://xf.iksaif.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to implement ACPI EC support?
  2012-11-02  9:57   ` Corentin Chary
@ 2012-11-02 11:43     ` Sebastian Riemer
  2012-11-02 11:46       ` Corentin Chary
  0 siblings, 1 reply; 7+ messages in thread
From: Sebastian Riemer @ 2012-11-02 11:43 UTC (permalink / raw)
  To: Corentin Chary; +Cc: Henrique de Moraes Holschuh, platform-driver-x86

First of all: Thank you very much for your responses!

On 02.11.2012 10:57, Corentin Chary wrote:
> On Fri, Nov 2, 2012 at 2:12 AM, Henrique de Moraes Holschuh
> <hmh@hmh.eng.br> wrote:
>
>> It was done through lots of trial and error by several people over more than
>> a decade, and sometime ago SuSE managed to get me in contact with some
>> Lenovo ThinkPad firmware engineers in Japan, which did help a lot.
>>
>> However, thinkpad-acpi is an old driver, you might want to ask the
>> maintainers of newer WMI-based drivers about how they are managing...
> I don't know if WMI can really help here, but will free to use wmidump
> to extract all WMI informations, and
>
> http://lwn.net/Articles/391230/
> https://github.com/iksaif/wmidump
> http://msdn.microsoft.com/en-us/library/windows/hardware/ff565588
> http://glucik.blogspot.com/2011/12/mof-decompilation.html  (!!! the
> tool is Wmimofck.exe not wmiofck.exe)

Nope, I guess not. There is no MOF stuff in the DSDT.

wmidump:

C16C47BA-50E3-444A-AF3A-B1C348380000:
    object_id: 00
    notify_id: 30
    reserved: 30
    instance_count: 1
    flags: 0x1 ACPI_WMI_EXPENSIVE
C16C47BA-50E3-444A-AF3A-B1C348380001:
    object_id: 00
    notify_id: 30
    reserved: 30
    instance_count: 1
    flags: 0x2 ACPI_WMI_METHOD

The method WM00 uses completely different fields.

On Windows the EC is handled by "intel.sys" if I've seen that right.
"objdump -xS" on it would show big big disassembly output for sure. So
Windows debugging is needed I guess.

I've also asked the Samsung support for documentation. They want to do
internal research. At least they didn't answer "Linux is not a supported
operating system." like other big companies do.

Cheers,
Sebastian

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to implement ACPI EC support?
  2012-11-02 11:43     ` Sebastian Riemer
@ 2012-11-02 11:46       ` Corentin Chary
  2012-11-02 11:49         ` Sebastian Riemer
  0 siblings, 1 reply; 7+ messages in thread
From: Corentin Chary @ 2012-11-02 11:46 UTC (permalink / raw)
  To: Sebastian Riemer; +Cc: Henrique de Moraes Holschuh, platform-driver-x86

On Fri, Nov 2, 2012 at 11:43 AM, Sebastian Riemer
<sebastian.riemer@profitbricks.com> wrote:
>
> First of all: Thank you very much for your responses!
>
> On 02.11.2012 10:57, Corentin Chary wrote:
> > On Fri, Nov 2, 2012 at 2:12 AM, Henrique de Moraes Holschuh
> > <hmh@hmh.eng.br> wrote:
> >
> >> It was done through lots of trial and error by several people over more than
> >> a decade, and sometime ago SuSE managed to get me in contact with some
> >> Lenovo ThinkPad firmware engineers in Japan, which did help a lot.
> >>
> >> However, thinkpad-acpi is an old driver, you might want to ask the
> >> maintainers of newer WMI-based drivers about how they are managing...
> > I don't know if WMI can really help here, but will free to use wmidump
> > to extract all WMI informations, and
> >
> > http://lwn.net/Articles/391230/
> > https://github.com/iksaif/wmidump
> > http://msdn.microsoft.com/en-us/library/windows/hardware/ff565588
> > http://glucik.blogspot.com/2011/12/mof-decompilation.html  (!!! the
> > tool is Wmimofck.exe not wmiofck.exe)
>
> Nope, I guess not. There is no MOF stuff in the DSDT.

Really ? No  methods/buffer starting in WQ ?

> wmidump:
>
> C16C47BA-50E3-444A-AF3A-B1C348380000:
>     object_id: 00
>     notify_id: 30
>     reserved: 30
>     instance_count: 1
>     flags: 0x1 ACPI_WMI_EXPENSIVE
> C16C47BA-50E3-444A-AF3A-B1C348380001:
>     object_id: 00
>     notify_id: 30
>     reserved: 30
>     instance_count: 1
>     flags: 0x2 ACPI_WMI_METHOD
>
> The method WM00 uses completely different fields.
>
> On Windows the EC is handled by "intel.sys" if I've seen that right.
> "objdump -xS" on it would show big big disassembly output for sure. So
> Windows debugging is needed I guess.
>
> I've also asked the Samsung support for documentation. They want to do
> internal research. At least they didn't answer "Linux is not a supported
> operating system." like other big companies do.
>
> Cheers,
> Sebastian




--
Corentin Chary
http://xf.iksaif.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to implement ACPI EC support?
  2012-11-02 11:46       ` Corentin Chary
@ 2012-11-02 11:49         ` Sebastian Riemer
  2012-11-02 11:51           ` Corentin Chary
  0 siblings, 1 reply; 7+ messages in thread
From: Sebastian Riemer @ 2012-11-02 11:49 UTC (permalink / raw)
  To: Corentin Chary; +Cc: Henrique de Moraes Holschuh, platform-driver-x86

On 02.11.2012 12:46, Corentin Chary wrote:
> On Fri, Nov 2, 2012 at 11:43 AM, Sebastian Riemer
> <sebastian.riemer@profitbricks.com> wrote:
>>
>> Nope, I guess not. There is no MOF stuff in the DSDT.
> Really ? No  methods/buffer starting in WQ ?
>

That's all:

Method (WQ00, 1, NotSerialized)
{
    Return (0x10)
}

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: How to implement ACPI EC support?
  2012-11-02 11:49         ` Sebastian Riemer
@ 2012-11-02 11:51           ` Corentin Chary
  0 siblings, 0 replies; 7+ messages in thread
From: Corentin Chary @ 2012-11-02 11:51 UTC (permalink / raw)
  To: Sebastian Riemer; +Cc: Henrique de Moraes Holschuh, platform-driver-x86

On Fri, Nov 2, 2012 at 11:49 AM, Sebastian Riemer
<sebastian.riemer@profitbricks.com> wrote:
> On 02.11.2012 12:46, Corentin Chary wrote:
>> On Fri, Nov 2, 2012 at 11:43 AM, Sebastian Riemer
>> <sebastian.riemer@profitbricks.com> wrote:
>>>
>>> Nope, I guess not. There is no MOF stuff in the DSDT.
>> Really ? No  methods/buffer starting in WQ ?
>>
>
> That's all:
>
> Method (WQ00, 1, NotSerialized)
> {
>     Return (0x10)
> }

Arf ! Good luck then :D


--
Corentin Chary
http://xf.iksaif.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-11-02 11:51 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-31 13:50 How to implement ACPI EC support? Sebastian Riemer
2012-11-02  2:12 ` Henrique de Moraes Holschuh
2012-11-02  9:57   ` Corentin Chary
2012-11-02 11:43     ` Sebastian Riemer
2012-11-02 11:46       ` Corentin Chary
2012-11-02 11:49         ` Sebastian Riemer
2012-11-02 11:51           ` Corentin Chary

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.