ECDT support in Linux is broken.

In fact, the original EC driver was correct, but devlopers started to use
the namespace EC instead of ECDT just because several broken ECDT tables
were reported on the bugzilla. They trusted the namespace EC settings
rather than the ECDT ones, this led to the evaluation of _REG/_GPE/_CRS
and namespace walk before executing the module level AML opcodes. And the
fixes in fact finally disable early EC usages (used during table loading
and early device enumeration processes).

Lv Zheng (4):
  ACPI 2.0 / ECDT: Split EC_FLAGS_HANDLERS_INSTALLED
  ACPI 2.0 / ECDT: Remove early namespace reference from EC
  ACPI 2.0 / ECDT: Enable correct ECDT initialization order
  ACPI 2.0 / AML: Improve module level execution by moving the
    If/Else/While execution to per-table basis

 drivers/acpi/bus.c    |   39 +++++---
 drivers/acpi/ec.c     |  241 ++++++++++++++++++++++---------------------------
 include/acpi/acpixf.h |    2 +-
 3 files changed, 135 insertions(+), 147 deletions(-)

-- 
1.7.10

Reply via email to