ACPI: Difference between revisions

[unchecked revision][unchecked revision]
Content deleted Content added
Add link to RSDT page
m Bot: Replace deprecated source tag with syntaxhighlight
 
(One intermediate revision by one other user not shown)
Line 1:
{{ACPI}}
 
ACPI (Advanced Configuration and Power Interface) is a [[:Category:Power management|Power Management]] and configuration standard for the PC, developed by Intel, Microsoft and Toshiba. ACPI allows the operating system to control the amount of power each device is given (allowing it to put certain devices on standby or power-off for example). It is also used to control and/or check thermal zones (temperature sensors, fan speeds, etc), battery levels, PCI IRQ routing, CPUs, NUMA domains and many other things.
 
Line 25 ⟶ 27:
Otherwise, write the value of the ACPI Enable field into the register number pointed to by the smi command field, like so:
 
<sourcesyntaxhighlight lang="c">
outb(fadt->smi_command,fadt->acpi_enable);
</syntaxhighlight>
</source>
Linux waits 3 seconds for the hardware to change modes.
Then poll the PM1a control block until bit 0 (value 1) sets. When this bit is set, it means power management events are generating SCIs and not SMIs, which means your OS has to handle the events and the System Management BIOS isn't doing anything for you. The SCI is an IRQ that the FADT tells you about.
<sourcesyntaxhighlight lang="c">
while (inw(fadt->pm1a_control_block) & 1 == 0);
</syntaxhighlight>
</source>
 
== See Also ==