Update the ACPI project page.

In collaboration with:  njl
This commit is contained in:
Joel Dahl 2006-08-04 14:14:39 +00:00
parent ff0de338f8
commit 4461e3cc7c
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=28410
2 changed files with 126 additions and 186 deletions

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/projects/acpi/completed.sgml,v 1.3 2005/02/27 03:51:53 njl Exp $">
<!ENTITY date "$FreeBSD: www/en/projects/acpi/completed.sgml,v 1.4 2005/10/04 19:43:49 hrs Exp $">
<!ENTITY title "FreeBSD ACPI completed projects">
<!ENTITY email 'marks'>
<!ENTITY acpi-mail 'freebsd-acpi@FreeBSD.org'>
@ -334,6 +334,112 @@
being powered off.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Giant-free locking.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>newbus attachments for cpu &mdash; get cpu devices under
newbus so drivers like cpufreq can probe/attach.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Write initial drivers: ICH SpeedStep, ACPI performance,
ACPI throttling, Enhanced SpeedStep, P4 TCC.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Add bus methods/ivars for child attachments to both acpi
and legacy cpu devices</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Design sysctl interface.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Design notify interface for Px changes.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Update power_profile to use cpufreq.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Import powerd.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Fujitsu driver -- Driver for Fujitsu laptop extras. Just needs
to be cleaned up (use acpi_UserNotify instead of the signal
stuff) and imported.</td>
<td>&a.marks;</td>
</tr>
<tr>
<td>IBM Thinkpad extras driver -- Driver for Thinkpad hotkeys.</td>
<td>&a.takawata;</td>
</tr>
<tr>
<td>Call _S0D on resume (power up?).</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Implement the int 10h resume hack that Linux has since we do
not have that yet. It is unclear how effective it is but some
systems do require it.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Check our DWORD access to EC regions, including endianness.
Currently, we treat DWORD access as little-endian, which makes
sense on PCs. It's really not correct to do use access other than
BYTE for EC space but some ASL uses DWORD. Also, we should test
what happens for AnyAccess reads/writes to EC space since some
ASL does this too. The existing implementation seems correct.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Implement passive cooling in ACPI thermal. It should use the
cpufreq interface to cool the processor, based on the various _PSV
settings. Also, we need to implement variable polling intervals
for thermal zones based on both the passive settings and polling
explicitly specified in the ASL.</td>
<td>&a.ume;</td>
</tr>
<tr>
<td>Fix stray irq 9 on reboot --
AcpiTerminate -&gt; AcpiEvTerminate unhooks the SCI and then we
get a stray irq. Debug why. Also, disable/ re-enable acpi gives
"SCI already attached". Check flags for AcpiDisable vs.
AcpiTerminate. This looks uncommon and does not cause any problems
so it will be ignored for now.</td>
<td>&a.njl;</td>
</tr>
<tr>
<td>Add smart battery support -- Smart batteries use the SMBus
to communicate data instead of the embedded controller for
control-method batteries. Newer ACER laptops have this and
it will be needed for battery status on them. This is rather
difficult since it involves interfacing with the SMBus drivers
(likely need some kobj methods for this.)</td>
<td>&a.njl;</td>
</tr>
</table>

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/projects/acpi/index.sgml,v 1.9 2005/05/07 14:01:37 brueffer Exp $">
<!ENTITY date "$FreeBSD: www/en/projects/acpi/index.sgml,v 1.10 2005/10/04 19:43:49 hrs Exp $">
<!ENTITY title "FreeBSD ACPI project">
<!ENTITY email 'marks'>
<!ENTITY acpi-mail 'freebsd-acpi@FreeBSD.org'>
@ -34,9 +34,9 @@
<h2>Description</h2>
<p>The acpi driver provides support for the Intel/Microsoft/Compaq/Toshiba
ACPI standard. This support includes platform hardware discovery (super-
seding the PnP and PCI BIOS), as well as power management (superseding
APM) and other features. ACPI core support is provided by the ACPI CA
ACPI standard. This support includes platform hardware discovery (superseding
the PnP and PCI BIOS), as well as power management (superseding
APM) and other features. ACPI core support is provided by the ACPI-CA
reference implementation from Intel.</p>
<p>Information on using and debugging ACPI can be found in the
@ -68,20 +68,20 @@
<tbody>
<tr>
<td> Giant-free locking </td>
<td> Save/Restore PCI capabilities lists and MSI config space </td>
<td> &a.njl; </td>
<td> December 4, 2004 </td> <!-- XXX not right -->
<td> &status.done; </td>
<td> Done. Some complaints of boot-time battery read hang
remain. </td>
<td> August 3, 2006 </td>
<td> &status.wip; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> newbus attachments for cpu &mdash; get cpu devices under
newbus so drivers like cpufreq can probe/attach </td>
<td> &a.njl; </td>
<td> December 4, 2004 </td>
<td> &status.done; </td>
<td> Investigate disabling the LAPIC timer when using ACPI C2-3
states. Otherwise, the system hangs and no timer interrupts
occur while idle.</td>
<td> &nbsp; </td>
<td> August 3, 2006 </td>
<td> &status.new; </td>
<td> &nbsp; </td>
</tr>
</tbody>
@ -91,57 +91,6 @@
<th scope="rowgroup" colspan="0"> <em>cpufreq &mdash; Common CPU
frequency/voltage driver</em> </th>
</tr>
<tr>
<td> Write initial drivers: ICH SpeedStep, ACPI performance,
ACPI throttling, Enhanced SpeedStep, P4 TCC </td>
<td> &a.njl; </td>
<td> February 20, 2005 </td>
<td> &status.done; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Add bus methods/ivars for child attachments to both acpi
and legacy cpu devices </td>
<td> &a.njl; </td>
<td> February 15, 2005 </td>
<td> &status.done; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Design sysctl interface </td>
<td> &a.njl; </td>
<td> December 4, 2004 </td>
<td> &status.done; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Design notify interface for Px changes </td>
<td> &a.njl; </td>
<td> December 4, 2004 </td>
<td> &status.done; </td>
<td> We may need an interface to notify external users of changes
to the bus and CPU frequency separately.</td>
</tr>
<tr>
<td> Update power_profile to use cpufreq </td>
<td> &a.njl; </td>
<td> February 15, 2005 </td>
<td> &status.done; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Import powerd </td>
<td> &a.njl; </td>
<td> February 20, 2005 </td>
<td> &status.done; </td>
<td> Mostly based on Colin Percival's estctrl. </td>
</tr>
</tbody>
<tbody>
@ -204,20 +153,9 @@
etc.) </td>
<td> &nbsp; </td>
<td> &nbsp; </td>
<td> &status.wip; </td>
<td> &status.new; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Fujitsu driver -- Driver for Fujitsu laptop extras. Just needs
to be cleaned up (use acpi_UserNotify instead of the signal
stuff) and imported. </td>
<td> &a.marks; </td>
<td> &nbsp; </td>
<td> &status.done; </td>
<td> See <a href="http://www.stalker.org/~sean/freebsd-p2040/FujiApp/index.html">
Seans driver</a>. </td>
</tr>
</tbody>
</table>
@ -259,22 +197,10 @@
PCI devices (including the video card) have been fully resumed,
including power state set to PS0. This works for many Radeon
cards but fails for others. We could implement this in vm86
calls from a proper video driver resume method. Also, implement
the int 10h resume hack that Linux has since we do not have that yet.
It is unclear how effective it is but some systems do require it. </td>
<td> &nbsp; </td>
<td> &nbsp; </td>
<td> &status.new; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Check our DWORD access to EC regions, including endianness.
Currently, we treat DWORD access as little-endian, which makes
sense on PCs. It's really not correct to do use access other than
BYTE for EC space but some ASL uses DWORD. Also, we should test
what happens for AnyAccess reads/writes to EC space since some
ASL does this too. </td>
calls from a proper video driver resume method. Investigate
integrate the techniques used by the <a
href="http://www.freebsd.org/cgi/url.cgi?ports/sysutils/radeontool/pkg-descr">Radeontool
port</a> in video resume.</td>
<td> &nbsp; </td>
<td> &nbsp; </td>
<td> &status.new; </td>
@ -367,18 +293,6 @@
<td> &nbsp; </td>
</tr>
<tr>
<td> Implement passive cooling in ACPI thermal. It should use the
cpufreq interface to cool the processor, based on the various _PSV
settings. Also, we need to implement variable polling intervals
for thermal zones based on both the passive settings and polling
explicitly specified in the ASL. </td>
<td> &nbsp; </td>
<td> &nbsp; </td>
<td> &status.new; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Traverse local reference (scope) types in namespace when probing
devices. </td>
@ -388,22 +302,6 @@
<td> &nbsp; </td>
</tr>
<tr>
<td> IBM Thinkpad extras driver -- Driver for Thinkpad hotkeys. </td>
<td> &a.takawata; </td>
<td> &nbsp; </td>
<td> &status.done; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Call _S0D on resume (power up?) </td>
<td> &nbsp; </td>
<td> &nbsp; </td>
<td> &status.done; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Implement support for _PRS/_SRS and dependent functions.
This will allow serial port configuration to occur. </td>
@ -413,19 +311,6 @@
<td> &nbsp; </td>
</tr>
<tr>
<td> Fix stray irq 9 on reboot --
AcpiTerminate -&gt; AcpiEvTerminate unhooks the SCI and then we
get a stray irq. Debug why. Also, disable/ re-enable acpi gives
"SCI already attached". Check flags for AcpiDisable vs.
AcpiTerminate. This looks uncommon and does not cause any problems
so it will be ignored for now. </td>
<td> &a.njl; </td>
<td> &nbsp; </td>
<td> &status.wip; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Add EC burst mode -- Code was written before to add burst mode to
the EC. Unfortunately, it had to be disabled since it did not
@ -438,19 +323,6 @@
<td> &nbsp; </td>
</tr>
<tr>
<td> Add smart battery support -- Smart batteries use the SMBus
to communicate data instead of the embedded controller for
control-method batteries. Newer ACER laptops have this and
it will be needed for battery status on them. This is rather
difficult since it involves interfacing with the SMBus drivers
(likely need some kobj methods for this.) </td>
<td> &nbsp; </td>
<td> &nbsp; </td>
<td> &status.new; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> Intel firmware seems to describe the PCI root bridge where
chipset configuration space lives with _STA==0x8. The spec
@ -589,44 +461,6 @@
</tbody>
</table>
<a name="platform-status"></a>
<h2>Platform Support Status</h2>
<table class="tblbasic">
<tr>
<th> Task </th>
<th> Responsible </th>
<th> Last updated </th>
<th> Status </th>
<th> Details </th>
</tr>
<tr>
<td> amd64 </td>
<td> &acpi-mail; </td>
<td> April 14, 2004 </td>
<td> &status.wip; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> i386 </td>
<td> &acpi-mail; </td>
<td> April 14, 2004 </td>
<td> &status.wip; </td>
<td> &nbsp; </td>
</tr>
<tr>
<td> ia64 </td>
<td> &acpi-mail; </td>
<td> April 14, 2004 </td>
<td> &status.wip; </td>
<td> &nbsp; </td>
</tr>
</table>
<a name="references"></a>
<h2>References</h2>