Subject: Re: ACPI vs. a "legacy free" notebook... :/
To: None <hubert.feyrer@informatik.fh-regensburg.de>
From: Takayoshi Kochi <kochi@netbsd.org>
List: port-i386
Date: 04/27/2003 21:26:59
Hello Hubert,

From: Hubert Feyrer <hubert.feyrer@informatik.fh-regensburg.de>
Subject: ACPI vs. a "legacy free" notebook... :/
Date: Fri, 4 Apr 2003 01:26:56 +0200 (MEST)

> The dmesg output below is from a Toshiba Satellite 5100-503, which has no
> traditional BIOS ("legacy free" is what they call it), and where aparently
> _everything_ has to be done in ACPI, even switching off the TFT when the
> lid's closed etc.
> 
> What I wonder is if there are so many "not configured" devices, esp. ones
> that I'd expect to be in the kernel (I have all "at acpi" devices in a
> -current kernel). I cannot even "poweroff" or "reboot" the machine.

I recognize that your "legacy free" laptop has three separate
problems:

 1. cannot power off
 2. cannot reboot
 3. cannot route interrupt correctly

For 1, I suppose closing PR/20614 fixed it.  If you still have
problem, please report to me or file a new PR.

For 2, I have no definitive clue yet, but the ACPI spec defines
"System reset" information in FADT table.  There are
"support exist" bit and a pair of IO port address and value.
I wrote a small support code for this reset method, attached
to this mail.  My desktop motherbord (an 845PE P4 motherboard)
says the information exists (exist bit is on), but the addr and
values are all 0 (this seems somewhat broken, does writing 0
to memory address 0 make sense? :)

> Is there some way to at least make the machine DTRT on "reboot", instead
> of just hang?

If you are still suffering from reset problem, could you
try the patch?  I'm curious whether your laptop has the support
and whether the patch works.  If your system supports it,
message like as follows shows up during boot.

acpi0: resetting via acpi supported at port 0xXXX, YY, 0
                                       ~~~~~~~~~~~~~~~~~this may vary

For 3, -current does not fully support routing interrupts
using ACPI.  Looking into this is high in my TODO list.

Takayoshi Kochi