Subject: Re: Problems reading ACPI battery status on IBM ThinkPad T30
To: None <rafal@pobox.com>
From: Takayoshi Kochi <kochi@netbsd.org>
List: current-users
Date: 01/15/2004 00:03:38
Hi,

From: Rafal Boni <rafal@pobox.com>
Subject: Re: Problems reading ACPI battery status on IBM ThinkPad T30 
Date: Tue, 13 Jan 2004 11:56:37 -0500

> -> These errors (many AE_NOT_EXIST) is due to missing support for
> -> ACPI ECDT support.
> -> 
> -> I put my incomplete ECDT patch at
> -> ftp://ftp.netbsd.org/pub/NetBSD/misc/kochi/acpica/acpi_ecdt_20031221.patch
> -> (might not work right now)
> 
> I'll take a look at this in the next few days when I have some time and
> can browse through the spec to get some clue of what this all means :-)
> (getting things working better is a good carrot for getting more up
>  to speed on ACPI ;-).

The ECDT is a static table that ACPI BIOS provides to describe
the resource used for embedded controller (ec).

ACPI provides information in two ways: one is ACPI namespace,
which is written in AML (ACPI Machine language) and the other
is static tables.  The former can describe dynamic behavior
(such as hotplug) of devices.  Thus ACPI requires in-kernel
(bloated) interpreter for executing the AML.

Embedded controllers are usually defined in the namespace,
but many other ACPI devices may depend on the EC during
initialization.  For such a case, embedded controller is
defined in static table to resolve such a chicken-and-egg
dependency problem.
That's the ECDT (embedded controller description table, IIRC).

Takayoshi Kochi