Update the ACPI project page.
In collaboration with: njl
This commit is contained in:
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
|
@ -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 — 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 -> 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>
|
||||
|
||||
|
||||
|
|
|
@ -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> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> newbus attachments for cpu — 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> </td>
|
||||
<td> August 3, 2006 </td>
|
||||
<td> &status.new; </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
</tbody>
|
||||
|
@ -91,57 +91,6 @@
|
|||
<th scope="rowgroup" colspan="0"> <em>cpufreq — 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> </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> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> Design sysctl interface </td>
|
||||
<td> &a.njl; </td>
|
||||
<td> December 4, 2004 </td>
|
||||
<td> &status.done; </td>
|
||||
<td> </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> </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> </td>
|
||||
<td> </td>
|
||||
<td> &status.wip; </td>
|
||||
<td> &status.new; </td>
|
||||
<td> </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> </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> </td>
|
||||
<td> </td>
|
||||
<td> &status.new; </td>
|
||||
<td> </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> </td>
|
||||
<td> </td>
|
||||
<td> &status.new; </td>
|
||||
|
@ -367,18 +293,6 @@
|
|||
<td> </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> </td>
|
||||
<td> </td>
|
||||
<td> &status.new; </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> Traverse local reference (scope) types in namespace when probing
|
||||
devices. </td>
|
||||
|
@ -388,22 +302,6 @@
|
|||
<td> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> IBM Thinkpad extras driver -- Driver for Thinkpad hotkeys. </td>
|
||||
<td> &a.takawata; </td>
|
||||
<td> </td>
|
||||
<td> &status.done; </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> Call _S0D on resume (power up?) </td>
|
||||
<td> </td>
|
||||
<td> </td>
|
||||
<td> &status.done; </td>
|
||||
<td> </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> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> Fix stray irq 9 on reboot --
|
||||
AcpiTerminate -> 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> </td>
|
||||
<td> &status.wip; </td>
|
||||
<td> </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> </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> </td>
|
||||
<td> </td>
|
||||
<td> &status.new; </td>
|
||||
<td> </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> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> i386 </td>
|
||||
<td> &acpi-mail; </td>
|
||||
<td> April 14, 2004 </td>
|
||||
<td> &status.wip; </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
|
||||
<tr>
|
||||
<td> ia64 </td>
|
||||
<td> &acpi-mail; </td>
|
||||
<td> April 14, 2004 </td>
|
||||
<td> &status.wip; </td>
|
||||
<td> </td>
|
||||
</tr>
|
||||
|
||||
</table>
|
||||
|
||||
<a name="references"></a>
|
||||
<h2>References</h2>
|
||||
|
||||
|
|
Loading…
Reference in a new issue