Subject: Re: AC adapter event
To: None <martin@duskware.de>
From: Takayoshi Kochi <kochi@netbsd.org>
List: port-i386
Date: 05/04/2004 14:01:20
Hi,

> > On my laptop, connecting the AC adapter causes the speed to immediately
> > increase to the maximum.  I have been unable to find the code that does
> > this, but I'd like to disable it.
> 
> I'm completely unclear on the concept - which of this is handled by the
> ACPI subsystem or the bios? Which parts should be independend and usefull
> for other ports with temperature sensors and fan controlls (but w/o ACPI,
> of course)?

That is, I think, SMI (system management interrupt) based BIOS control.
The SMI is transparent to the running OS.

Some hardware events (such as AC adapter status change) would
cause SMI and BIOS handles it.  That's useful if the running OS is
not aware the status of these events.

When ACPI is enabled by the running OS, the system usually switches
SMI to ACPI-based interrupt to let the OS handle events.
But unfortunately some of events still remain handled by SMI (I guess).

There are even many ACPI BIOS implementations that ACPI BIOS kick
the SMI to make the BIOS handle some complicated or proprietary things:(

There are many reasons (I guess) that the system vendors want to
use SMI even with ACPI BIOS, for example, the OS support for ACPI
is incomplete, buggy, unflexible, slow etc.
Also ACPI BIOS is easily disassemble-able, some may want not to use
ACPI to implement some proprietary value-add features.

---
Takayoshi Kochi