4022 lines
78 KiB
HTML
4022 lines
78 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
|
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>ACPI: Advanced Configuration and Power Interface</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"></HEAD
|
|
><BODY
|
|
CLASS="article"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="ARTICLE"
|
|
><DIV
|
|
CLASS="TITLEPAGE"
|
|
><H1
|
|
CLASS="title"
|
|
><A
|
|
NAME="AEN2"
|
|
></A
|
|
>ACPI: Advanced Configuration and Power Interface</H1
|
|
><DIV
|
|
CLASS="authorgroup"
|
|
><A
|
|
NAME="AEN4"
|
|
></A
|
|
><H3
|
|
CLASS="author"
|
|
><A
|
|
NAME="AEN5"
|
|
>Emma Jane Hogbin</A
|
|
></H3
|
|
><DIV
|
|
CLASS="affiliation"
|
|
><SPAN
|
|
CLASS="orgname"
|
|
> <A
|
|
HREF="http://www.xtrinsic.com"
|
|
TARGET="_top"
|
|
>xtrinsic</A
|
|
>
|
|
<BR></SPAN
|
|
><DIV
|
|
CLASS="address"
|
|
><P
|
|
CLASS="address"
|
|
><br>
|
|
<TT
|
|
CLASS="email"
|
|
><<A
|
|
HREF="mailto:emmajane@xtrinsic.com"
|
|
>emmajane@xtrinsic.com</A
|
|
>></TT
|
|
><br>
|
|
</P
|
|
></DIV
|
|
></DIV
|
|
><P
|
|
CLASS="othercredit"
|
|
><B
|
|
>Erich Schubert - </B
|
|
><SPAN
|
|
CLASS="contrib"
|
|
>Author of the section on DSDT.</SPAN
|
|
></P
|
|
></DIV
|
|
><DIV
|
|
CLASS="revhistory"
|
|
><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
COLSPAN="3"
|
|
><B
|
|
>Revision History</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision v1.5.1</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2004-07-15</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: ejh</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Link included to the French translation of this document.</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision v1.5</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2004-05-21</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: ejh</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Minor updates for the 2.6.6 kernel and corrections regarding
|
|
which kernels need patching.</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revision v1.4</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>2004-05-12</TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
>Revised by: ejh</TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
ALIGN="LEFT"
|
|
COLSPAN="3"
|
|
>Initial thoughts on the 2.6.5 kernel; includes information
|
|
on battery monitoring applications causing touchpad lockup
|
|
problems.</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><DIV
|
|
><DIV
|
|
CLASS="abstract"
|
|
><A
|
|
NAME="AEN19"
|
|
></A
|
|
><P
|
|
></P
|
|
><P
|
|
>Outlines how to patch a kernel for ACPI support.</P
|
|
><P
|
|
></P
|
|
></DIV
|
|
></DIV
|
|
><HR></DIV
|
|
><DIV
|
|
CLASS="TOC"
|
|
><DL
|
|
><DT
|
|
><B
|
|
>Table of Contents</B
|
|
></DT
|
|
><DT
|
|
>1. <A
|
|
HREF="#about"
|
|
>About this document</A
|
|
></DT
|
|
><DT
|
|
>2. <A
|
|
HREF="#copyright"
|
|
>Copyright and License</A
|
|
></DT
|
|
><DT
|
|
>3. <A
|
|
HREF="#translations"
|
|
>Translations</A
|
|
></DT
|
|
><DT
|
|
>4. <A
|
|
HREF="#aboutacpi"
|
|
>About ACPI</A
|
|
></DT
|
|
><DT
|
|
>5. <A
|
|
HREF="#apmtoacpi"
|
|
>Why switch?</A
|
|
></DT
|
|
><DT
|
|
>6. <A
|
|
HREF="#dsdt"
|
|
>DSDT: Differentiated System Description Table</A
|
|
></DT
|
|
><DT
|
|
>7. <A
|
|
HREF="#install"
|
|
>Installing from scratch</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>7.1. <A
|
|
HREF="#kernelchoice"
|
|
>Choosing a kernel</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>8. <A
|
|
HREF="#backups"
|
|
>Backups</A
|
|
></DT
|
|
><DT
|
|
>9. <A
|
|
HREF="#kernelprep"
|
|
>Download and Unpack the New Kernel</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>9.1. <A
|
|
HREF="#requiredpackages"
|
|
>Required packages</A
|
|
></DT
|
|
><DT
|
|
>9.2. <A
|
|
HREF="#unpack"
|
|
>Unpack</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>10. <A
|
|
HREF="#kernelconfig"
|
|
>Configure the new kernel</A
|
|
></DT
|
|
><DT
|
|
>11. <A
|
|
HREF="#kernelcompile"
|
|
>Compile the new kernel</A
|
|
></DT
|
|
><DT
|
|
>12. <A
|
|
HREF="#kernelinstall"
|
|
>Install the new kernel</A
|
|
></DT
|
|
><DT
|
|
>13. <A
|
|
HREF="#finishinstall"
|
|
>Reboot and test</A
|
|
></DT
|
|
><DT
|
|
>14. <A
|
|
HREF="#loadmodules"
|
|
>Load related modules</A
|
|
></DT
|
|
><DT
|
|
>15. <A
|
|
HREF="#daemons"
|
|
>Switching from APM to ACPI</A
|
|
></DT
|
|
><DT
|
|
>16. <A
|
|
HREF="#usingacpi"
|
|
>Using ACPI</A
|
|
></DT
|
|
><DT
|
|
>17. <A
|
|
HREF="#resources"
|
|
>References and Resources</A
|
|
></DT
|
|
><DT
|
|
>18. <A
|
|
HREF="#thanks"
|
|
>Thanks</A
|
|
></DT
|
|
><DT
|
|
>A. <A
|
|
HREF="#patch"
|
|
>Patching Old Kernels</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>A.1. <A
|
|
HREF="#AEN659"
|
|
>Getting the Source Files</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>B. <A
|
|
HREF="#nodebkernel"
|
|
>ACPI the Non-Debian Way</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>B.1. <A
|
|
HREF="#nodebcompile"
|
|
>Compile the kernel</A
|
|
></DT
|
|
><DT
|
|
>B.2. <A
|
|
HREF="#nodebinstall"
|
|
>Install the new kernel</A
|
|
></DT
|
|
><DT
|
|
>B.3. <A
|
|
HREF="#nodebsoftware"
|
|
>Software packages</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
><DT
|
|
>C. <A
|
|
HREF="#gfdl"
|
|
>GNU Free Documentation License</A
|
|
></DT
|
|
><DD
|
|
><DL
|
|
><DT
|
|
>C.1. <A
|
|
HREF="#gfdl-0"
|
|
>PREAMBLE</A
|
|
></DT
|
|
><DT
|
|
>C.2. <A
|
|
HREF="#gfdl-1"
|
|
>APPLICABILITY AND DEFINITIONS</A
|
|
></DT
|
|
><DT
|
|
>C.3. <A
|
|
HREF="#gfdl-2"
|
|
>VERBATIM COPYING</A
|
|
></DT
|
|
><DT
|
|
>C.4. <A
|
|
HREF="#gfdl-3"
|
|
>COPYING IN QUANTITY</A
|
|
></DT
|
|
><DT
|
|
>C.5. <A
|
|
HREF="#gfdl-4"
|
|
>MODIFICATIONS</A
|
|
></DT
|
|
><DT
|
|
>C.6. <A
|
|
HREF="#gfdl-5"
|
|
>COMBINING DOCUMENTS</A
|
|
></DT
|
|
><DT
|
|
>C.7. <A
|
|
HREF="#gfdl-6"
|
|
>COLLECTIONS OF DOCUMENTS</A
|
|
></DT
|
|
><DT
|
|
>C.8. <A
|
|
HREF="#gfdl-7"
|
|
>AGGREGATION WITH INDEPENDENT WORKS</A
|
|
></DT
|
|
><DT
|
|
>C.9. <A
|
|
HREF="#gfdl-8"
|
|
>TRANSLATION</A
|
|
></DT
|
|
><DT
|
|
>C.10. <A
|
|
HREF="#gfdl-9"
|
|
>TERMINATION</A
|
|
></DT
|
|
><DT
|
|
>C.11. <A
|
|
HREF="#gfdl-10"
|
|
>FUTURE REVISIONS OF THIS LICENSE</A
|
|
></DT
|
|
><DT
|
|
>C.12. <A
|
|
HREF="#gfdl-11"
|
|
>How to use this License for your documents</A
|
|
></DT
|
|
></DL
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="about"
|
|
></A
|
|
>1. About this document</H1
|
|
><P
|
|
>When I first started the switch from APM to ACPI I didn't realize the
|
|
kernel needed to be patched. My problem (insanely loud fan) was fixed just
|
|
by upgrading to 2.4.20 (Debian packaged kernel with an earlier patch from
|
|
<A
|
|
HREF="http://acpi.sourceforge.net"
|
|
TARGET="_top"
|
|
>acpi.sourceforge.net</A
|
|
>).
|
|
Unfortunately after the first upgrade I wasn't able to
|
|
<B
|
|
CLASS="command"
|
|
>halt</B
|
|
> my computer without using the power switch to power-down my
|
|
computer. It wasn't until later that
|
|
I realized I had an old, ineffectual ACPI patch. This HOWTO was
|
|
written to summarize the install process for myself, and hopefully help others who
|
|
are also having a hard time finding information about ACPI. Please note:
|
|
the main article outlines <A
|
|
HREF="http://www.debian.org"
|
|
TARGET="_top"
|
|
>The Debian Way</A
|
|
>
|
|
of doing things. There is also generic information in the
|
|
<A
|
|
HREF="#nodebkernel"
|
|
>Appendix B</A
|
|
> for those of you who prefer ... the generic way.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="copyright"
|
|
></A
|
|
>2. Copyright and License</H1
|
|
><A
|
|
NAME="AEN46"
|
|
></A
|
|
><BLOCKQUOTE
|
|
CLASS="BLOCKQUOTE"
|
|
><P
|
|
> Copyright (c) 2003, 2004 Emma Jane Hogbin.</P
|
|
><P
|
|
>Permission is granted to copy, distribute and/or modify this
|
|
document under the terms of the GNU Free Documentation License, Version
|
|
1.1 or any later version published by the Free Software Foundation;
|
|
with no Invariant Sections, no Front-Cover Texts, and with no Back-Cover
|
|
Texts.
|
|
A copy of the license is included in <A
|
|
HREF="#gfdl"
|
|
>Appendix C</A
|
|
>.
|
|
</P
|
|
></BLOCKQUOTE
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="translations"
|
|
></A
|
|
>3. Translations</H1
|
|
><P
|
|
>This document is also available in the following languages:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
>English version 1.2 translated to: <A
|
|
HREF="http://www.traduc.org/docs/HOWTO/lecture/ACPI-HOWTO.html"
|
|
TARGET="_top"
|
|
>Francais</A
|
|
>. Merci a Guillaume Lelarge et Vanessa Conchodon pour le traduction!</P
|
|
></LI
|
|
></UL
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="aboutacpi"
|
|
></A
|
|
>4. About ACPI</H1
|
|
><P
|
|
>In the world of power management ACPI is relatively new to the game.
|
|
It was first released in 1996 by
|
|
Compaq/Hewlett-Packard, Intel, Microsoft, Phoenix and Toshiba. These
|
|
developers aimed to replace the previous industry standard for power
|
|
management. Their <A
|
|
HREF="http://www.acpi.info"
|
|
TARGET="_top"
|
|
>ACPI.info</A
|
|
> site
|
|
contains the official specifications, a list of companies that support ACPI
|
|
and a number of other goodies. This is definitely not required reading, but
|
|
may be of some interest to the insanely curious.</P
|
|
><P
|
|
>ACPI allows control of power management from within the
|
|
operating system. The previous industry standard for power management, Advanced
|
|
Power Management (APM), is controlled at the BIOS level. APM is activated
|
|
when the system becomes idle--the longer the system idles, the less power it
|
|
consumes (e.g. screen saver vs. sleep vs. suspend).
|
|
In APM, the operating system has no knowledge of when the system will
|
|
change power states.</P
|
|
><P
|
|
>ACPI can typically be configured from within the operating system.
|
|
This is unlike APM where configuration often involves rebooting and
|
|
entering the BIOS configuration screens to set parameters.</P
|
|
><P
|
|
>ACPI has several different software components:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
>a subsystem which controls hardware states and
|
|
functions that may have previously been in the BIOS configuration</P
|
|
><P
|
|
>These states include:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
>thermal control</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>motherboard configuration</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>power states (sleep, suspend)</P
|
|
></LI
|
|
></UL
|
|
></LI
|
|
><LI
|
|
><P
|
|
>a policy manager, which is software that sits on top of
|
|
the operating system and allows user input on the system
|
|
policies</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>the ACPI also has device drivers that control/monitor devices such as a
|
|
laptop battery, SMBus (communication/transmission path) and EC (embedded controller).</P
|
|
></LI
|
|
></UL
|
|
><P
|
|
>If you would like more information on power management in laptops, check out
|
|
the resources on <A
|
|
HREF="http://www.tuxmobil.org"
|
|
TARGET="_top"
|
|
>tuxmobil.org</A
|
|
>.
|
|
Specifically: <A
|
|
HREF="http://tuxmobil.org/apm_linux.html"
|
|
TARGET="_top"
|
|
>Power Management
|
|
with Linux - APM, ACPI, PMU</A
|
|
> and the <A
|
|
HREF="http://tuxmobil.org/Mobile-Guide.db/mobile-guide-p2c1-hardware-in-detail.html"
|
|
TARGET="_top"
|
|
>Hardware in Detail</A
|
|
> section of the
|
|
<A
|
|
HREF="http://tuxmobil.org/Mobile-Guide.db/Mobile-Guide.html"
|
|
TARGET="_top"
|
|
>Linux
|
|
Mobile Guide</A
|
|
>.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="apmtoacpi"
|
|
></A
|
|
>5. Why switch?</H1
|
|
><P
|
|
>Not all systems support both APM and ACPI. I switched because my
|
|
system only supported ACPI. Pretty easy decision really. If you're switching
|
|
to get <A
|
|
HREF="http://acpi.sourceforge.net/documentation/sleep.html"
|
|
TARGET="_top"
|
|
>S3</A
|
|
> (suspend
|
|
to RAM) support and you're using a 2.4.x kernel, don't bother. It is <A
|
|
HREF="http://lists.debian.org/debian-laptop/2003/debian-laptop-200304/msg00418.html"
|
|
TARGET="_top"
|
|
>not supported</A
|
|
>. Period.</P
|
|
><P
|
|
>Not sure if your system is supported? ACPI4Linux has a list of <A
|
|
HREF="http://acpi.sourceforge.net/wiki/index.php/InstallationReports"
|
|
TARGET="_top"
|
|
>supported
|
|
machines/BIOSes</A
|
|
> started on their Wiki. Please contribute to
|
|
the list if you've installed ACPI! They also have a list of machines that
|
|
are <A
|
|
HREF="http://acpi.sourceforge.net/documentation/blacklist.html"
|
|
TARGET="_top"
|
|
>not supported</A
|
|
>.</P
|
|
><P
|
|
>For more information about the power management in laptops you may
|
|
(also) find the <A
|
|
HREF="http://www.tldp.org/HOWTO/mini/Battery-Powered/index.html"
|
|
TARGET="_top"
|
|
>Battery Powered Linux Mini-HOWTO</A
|
|
> useful.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="dsdt"
|
|
></A
|
|
>6. DSDT: Differentiated System Description Table</H1
|
|
><P
|
|
>Thanks to <A
|
|
HREF="http://www.vitavonni.de/"
|
|
TARGET="_top"
|
|
>Erich</A
|
|
> writing this section.</P
|
|
><P
|
|
>You might need to override the DSDT when certain features like battery
|
|
status are incorrectly reported (usually causing error messages to
|
|
syslog). DELL laptops usually need this kind of override. Fixed DSDT
|
|
for many systems are available on the <A
|
|
HREF="http://acpi.sourceforge.net/dsdt/index.php"
|
|
TARGET="_top"
|
|
>DSDT page</A
|
|
>, along with a patch
|
|
that tells the kernel to ignore the BIOS-supplied table but use the
|
|
compiled-in fixed DSDT.</P
|
|
><P
|
|
>Basically you need to copy
|
|
the fixed table into your kernel source with a special filename (or
|
|
modifying the filename in the patch supplied at the <A
|
|
HREF="http://acpi.sourceforge.net/dsdt/index.php"
|
|
TARGET="_top"
|
|
>DSDT page</A
|
|
>)
|
|
This override is quite easy: instead of loading the DSDT table from
|
|
bios, the kernel uses the compiled-in DSDT table. That's all.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="install"
|
|
></A
|
|
>7. Installing from scratch</H1
|
|
><P
|
|
>ACPI is constantly being revised. It is available in later versions
|
|
of the 2.4.x series kernel (2.4.22 and higher), and all 2.6.x series kernels. If you would
|
|
like to use a kernel before 2.4.22, you will need to patch your kernel
|
|
source to add ACPI functionality. If at all possible you should use the
|
|
latest stable version of the kernel. Patches are available from
|
|
<A
|
|
HREF="http://acpi.sourceforge.net"
|
|
TARGET="_top"
|
|
>acpi.sourceforge.net</A
|
|
>.
|
|
</P
|
|
><P
|
|
>Red Hat Fedora Core 2 now ships with ACPI enabled by default! This
|
|
is big progress for the ACPI development team. Congratulations to
|
|
everyone.</P
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>Even the latest kernel will sometimes have minor bug fixes
|
|
available as a patch. You should check the ACPI4Linux web site to see
|
|
if there are any patches available.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><P
|
|
> You need to get the patch that exactly matches the
|
|
version of the kernel that you are running. Since this is the
|
|
<SPAN
|
|
CLASS="QUOTE"
|
|
>"install from scratch"</SPAN
|
|
> section I will assume you know exactly
|
|
which kernel you will be installing.</P
|
|
><DIV
|
|
CLASS="sect2"
|
|
><HR><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="kernelchoice"
|
|
></A
|
|
>7.1. Choosing a kernel</H2
|
|
><P
|
|
>This document was originally written for the 2.4.20 kernel and has
|
|
been updated since to include information about the 2.6.x series kernels.
|
|
At the time of this update the 2.6.x series kernels are proving easy for
|
|
some and harder for others. (I personally cannot properly power down my
|
|
computer with the 2.6.5 kernel.)</P
|
|
><P
|
|
>If you can, I would recommend waiting to upgrade your kernel to the
|
|
2.6.x series until more bugs are ironed out. There are a
|
|
<EM
|
|
>lot</EM
|
|
> of changes in the 2.6.x series kernel. When I
|
|
upgraded to 2.6.5 to update this document I ran into problems with my
|
|
wireless connection, my nvidia graphics card, and with ACPI. Your mileage
|
|
may vary. I personally had good success with the 2.4.20 with the latest
|
|
patch and the 2.4.22 kernel with no patch. A Google through your
|
|
distribution's mailing list, and the acpi-devel mailing list should help
|
|
you to pick the right kernel.</P
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>This document uses the 2.4.20 kernel as an example for 2.4.x
|
|
series kernels. Substitute your own kernel version as
|
|
appropriate.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><P
|
|
>Regardless of which kernel you choose, if it is a kernel that
|
|
requires patching, it is important to use the latest version of the ACPI patch. Some
|
|
distributions have already patched their kernels. This is the case for
|
|
Debian, and may be the case for others. For more information on the
|
|
patches that have been applied to the Debian kernel source package scan through:
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/kernel-source-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
>/README.Debian</TT
|
|
>. If you are not using Debian
|
|
you will probably still be able to find an equivalent file for your
|
|
distribution.</P
|
|
><P
|
|
>A user on acpi-support confirmed that I shouldn't need any of the
|
|
additional patches that have been applied to the kernel to run my laptop.
|
|
If you are running a production-level server and/or are serving web pages
|
|
to the internet, you should really apply any additional
|
|
security patches.</P
|
|
><DIV
|
|
CLASS="warning"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="warning"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/warning.gif"
|
|
HSPACE="5"
|
|
ALT="Warning"></TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>If a kernel has had other patches applied to it, you may have
|
|
problems applying the ACPI patch. Of course, an ACPI patch should not be
|
|
applied to a kernel that is already patched for ACPI. As long as there has
|
|
not been an ACPI patch applied to the kernel it should be possible to apply
|
|
one now. Depending on the patches applied, you may need to modify some of
|
|
the Makefiles for your patch to be successful. This is beyond my current
|
|
grasp of reality so it is not covered in this document.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect3"
|
|
><HR><H3
|
|
CLASS="sect3"
|
|
><A
|
|
NAME="debianizedkernel"
|
|
></A
|
|
>7.1.1. Debian-ized pre-patched kernel</H3
|
|
><P
|
|
>If you would prefer to use a Debian-ized kernel instead of a fresh one,
|
|
<A
|
|
HREF="http://people.debian.org/~maxx"
|
|
TARGET="_top"
|
|
>maxx</A
|
|
> has provided a
|
|
pre-patched kernel-source package with the latest patch for the 2.4.20
|
|
kernel. This would be instead of downloading a
|
|
fresh (non-patched) kernel from <A
|
|
HREF="http://www.kernel.org"
|
|
TARGET="_top"
|
|
>www.kernel.org</A
|
|
>.
|
|
He sent me an email with the following details:</P
|
|
><A
|
|
NAME="AEN129"
|
|
></A
|
|
><TABLE
|
|
BORDER="0"
|
|
WIDTH="100%"
|
|
CELLSPACING="0"
|
|
CELLPADDING="0"
|
|
CLASS="BLOCKQUOTE"
|
|
><TR
|
|
><TD
|
|
WIDTH="10%"
|
|
VALIGN="TOP"
|
|
> </TD
|
|
><TD
|
|
WIDTH="80%"
|
|
VALIGN="TOP"
|
|
><P
|
|
>I took the kernel-source 2.4.20-8 from unstable, removed the ACPI
|
|
changes [i.e. the old patch] and applied <TT
|
|
CLASS="filename"
|
|
>acpi-20021212-2.4.20.diff.gz</TT
|
|
> from acpi.sf.net since the vanilla 2.4.20 <EM
|
|
>HAS</EM
|
|
> several security leaks (ptrace, hash table, ...).</P
|
|
><P
|
|
>You can find the package at <A
|
|
HREF="http://people.debian.org/~maxx/kernel-source-2.4.20/"
|
|
TARGET="_top"
|
|
>http://people.debian.org/~maxx/kernel-source-2.4.20/</A
|
|
>
|
|
(I didn't upload the .orig.tar.gz since you can get it from any debian
|
|
mirror and the .deb is already big enough)</P
|
|
></TD
|
|
><TD
|
|
WIDTH="10%"
|
|
VALIGN="TOP"
|
|
> </TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
COLSPAN="2"
|
|
ALIGN="RIGHT"
|
|
VALIGN="TOP"
|
|
>--<SPAN
|
|
CLASS="attribution"
|
|
><A
|
|
HREF="http://people.debian.org/~maxx"
|
|
TARGET="_top"
|
|
>maxx</A
|
|
></SPAN
|
|
></TD
|
|
><TD
|
|
WIDTH="10%"
|
|
> </TD
|
|
></TR
|
|
></TABLE
|
|
><DIV
|
|
CLASS="warning"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="warning"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/warning.gif"
|
|
HSPACE="5"
|
|
ALT="Warning"></TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>I have not tested these packages. You may or may not have any luck
|
|
with them. Please don't email me asking about them, ask maxx instead.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="backups"
|
|
></A
|
|
>8. Backups</H1
|
|
><P
|
|
>If you are already running a kernel that is the same version of the
|
|
one you are about to patch I recommend creating a fresh
|
|
directory for the newly patched kernel. Remember that backups are
|
|
<EM
|
|
>never</EM
|
|
> a bad thing. These are the files that I back up:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
><TT
|
|
CLASS="filename"
|
|
>/etc/lilo.conf</TT
|
|
></P
|
|
></LI
|
|
><LI
|
|
><P
|
|
><TT
|
|
CLASS="filename"
|
|
>/usr/src/*.deb</TT
|
|
>
|
|
(Debian-specific)</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
><TT
|
|
CLASS="filename"
|
|
>/etc/modules</TT
|
|
></P
|
|
></LI
|
|
><LI
|
|
><P
|
|
><TT
|
|
CLASS="filename"
|
|
>/etc/modutils/aliases</TT
|
|
></P
|
|
></LI
|
|
><LI
|
|
><P
|
|
><TT
|
|
CLASS="filename"
|
|
>/usr/src/linux/.config</TT
|
|
></P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>If you are <EM
|
|
>not</EM
|
|
> doing things The Debian Way you should also back up the <TT
|
|
CLASS="filename"
|
|
>/lib/modules</TT
|
|
> directory, <TT
|
|
CLASS="filename"
|
|
>/boot/vmlinuz</TT
|
|
>, <TT
|
|
CLASS="filename"
|
|
>/usr/src/linux/arch/i386/boot/bzImage</TT
|
|
> and <TT
|
|
CLASS="filename"
|
|
>/usr/src/System.map</TT
|
|
>. It's possible my notes on the location of these files differs. Do a <TT
|
|
CLASS="userinput"
|
|
><B
|
|
><B
|
|
CLASS="command"
|
|
>locate</B
|
|
> <TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><file></I
|
|
></TT
|
|
></B
|
|
></TT
|
|
> if they're not where I've stated they should be.</P
|
|
></LI
|
|
></UL
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="kernelprep"
|
|
></A
|
|
>9. Download and Unpack the New Kernel</H1
|
|
><DIV
|
|
CLASS="sect2"
|
|
><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="requiredpackages"
|
|
></A
|
|
>9.1. Required packages</H2
|
|
><P
|
|
>The following is a list of packages required to patch a 2.4.x series
|
|
kernel. I am still working on the notes for a 2.6.x series install.</P
|
|
><P
|
|
></P
|
|
><P
|
|
><B
|
|
>2.4.x series kernels</B
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
>kernel source files</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>ACPI patch that exactly matches the kernel
|
|
version</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>debian packages: make, bzip2, gcc, libc6-dev, tk8.3,
|
|
libncurses5-dev, kernel-package</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>after you've patched the kernel add the debian
|
|
packages: acpid, acpi (this last package is available in testing and
|
|
unstable versions of Debian, but not stable)</P
|
|
></LI
|
|
></UL
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect2"
|
|
><HR><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="unpack"
|
|
></A
|
|
>9.2. Unpack</H2
|
|
><P
|
|
>We need to unpack the bz2 file (bzip2) and shuffle the directories around a bit.
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
> probably points
|
|
to your current kernel. We need it to point to the new kernel, so we'll do that as well.</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
> cd <TT
|
|
CLASS="filename"
|
|
>/usr/src</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>mkdir <TT
|
|
CLASS="filename"
|
|
>kernel-source-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
></TT
|
|
>
|
|
</B
|
|
>
|
|
(use an alternate name if you already have a version of this kernel
|
|
installed)
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cp
|
|
<TT
|
|
CLASS="filename"
|
|
>linux.<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
>.tar.bz2</TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/kernel-source-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
></TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/kernel-source-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
></TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>tar <TT
|
|
CLASS="option"
|
|
>xjfv</TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>linux.<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
>.tar.bz2</TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>mv
|
|
<TT
|
|
CLASS="filename"
|
|
>linux.<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
></TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
></TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>rm <TT
|
|
CLASS="filename"
|
|
>linux</TT
|
|
></B
|
|
>
|
|
(assuming that's a link to your old kernel)
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>ln <TT
|
|
CLASS="option"
|
|
>-s</TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
></TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>linux</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
></UL
|
|
><P
|
|
>If your kernel needs to be patched, do so now.
|
|
Instructions are available from <A
|
|
HREF="#patch"
|
|
>Appendix A</A
|
|
>.</P
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="kernelconfig"
|
|
></A
|
|
>10. Configure the new kernel</H1
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Patch Your Kernel First</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>If you are using an old kernel you will need to patch it before
|
|
you can proceed. Instructions on patching your kernel are available
|
|
from <A
|
|
HREF="#patch"
|
|
>Appendix A</A
|
|
>. The 2.6.x series kernels do not need to
|
|
be patched.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><P
|
|
>Now instead of using <B
|
|
CLASS="command"
|
|
>make
|
|
<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>menuconfig</I
|
|
></TT
|
|
></B
|
|
>, I have an excellent
|
|
alternative. Check
|
|
this out: copy your current <TT
|
|
CLASS="filename"
|
|
>.config</TT
|
|
> file into
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
>.
|
|
Now use <SPAN
|
|
CLASS="QUOTE"
|
|
>"<B
|
|
CLASS="command"
|
|
>make <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>oldconfig</I
|
|
></TT
|
|
></B
|
|
>"</SPAN
|
|
>. It will run through your old config file and see
|
|
what's been updated so that you don't have to find all the new options.
|
|
For <EM
|
|
>everything</EM
|
|
> to do with ACPI and your specific
|
|
hardware (Toshibas choose the Toshiba options, Asus choose the Asus
|
|
options) choose <TT
|
|
CLASS="option"
|
|
>M</TT
|
|
> for module. There are about ten
|
|
different ACPI related options that you will need to select.</P
|
|
><P
|
|
>In point form, this is how the kernel should be configured:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cp
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><oldkernel-source-directory></I
|
|
></TT
|
|
>/.config</TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>.config</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>oldconfig</I
|
|
></TT
|
|
></B
|
|
>
|
|
(say <TT
|
|
CLASS="option"
|
|
>M</TT
|
|
> to all new options for
|
|
ACPI--you can also say <SPAN
|
|
CLASS="QUOTE"
|
|
>"<TT
|
|
CLASS="option"
|
|
>Y</TT
|
|
>"</SPAN
|
|
> if you prefer to compile it directly
|
|
into your kernel)
|
|
</P
|
|
></LI
|
|
></UL
|
|
><P
|
|
>Now go in to the config file with <B
|
|
CLASS="command"
|
|
>make
|
|
<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>menuconfig</I
|
|
></TT
|
|
></B
|
|
>. I want you do check
|
|
and make sure you have your APM (the old stuff) turned off. Under
|
|
<SPAN
|
|
CLASS="QUOTE"
|
|
>"<SPAN
|
|
CLASS="guimenu"
|
|
>General Setup</SPAN
|
|
>"</SPAN
|
|
>, make sure that:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <SPAN
|
|
CLASS="guimenuitem"
|
|
>Power Management Support</SPAN
|
|
>
|
|
is ON</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <SPAN
|
|
CLASS="guimenuitem"
|
|
>APM (Advanced Power
|
|
Management)</SPAN
|
|
> is OFF (this is the old one--you
|
|
don't even want it as a module unless you really know what you're
|
|
doing. And if you really know what you're doing you're probably not
|
|
reading this.)</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>everything to do with ACPI should be
|
|
<TT
|
|
CLASS="option"
|
|
>M</TT
|
|
> (modules) or <TT
|
|
CLASS="option"
|
|
>*</TT
|
|
> (compiled
|
|
directly into the kernel). Read the list
|
|
<EM
|
|
>carefully</EM
|
|
>. Some options will not apply to your
|
|
hardware.</P
|
|
></LI
|
|
></UL
|
|
><P
|
|
>exit and save the new configuration</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="kernelcompile"
|
|
></A
|
|
>11. Compile the new kernel</H1
|
|
><P
|
|
>If you have additional modules that are not part of the main source
|
|
tree, you will need to add modules_image when you make your Debian
|
|
packages. This is almost inevitable if you're using a laptop and an older
|
|
kernel. Only my nvidia graphics card now requires additional modules.</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make-kpkg <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>clean</I
|
|
></TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make-kpkg
|
|
<TT
|
|
CLASS="option"
|
|
>--append-to-version=.<date></TT
|
|
>
|
|
<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>kernel_image</I
|
|
></TT
|
|
>
|
|
<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>modules_image</I
|
|
></TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
></UL
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Naming kernel builds</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>I no longer use .<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
>date</I
|
|
></TT
|
|
> to distinguish
|
|
kernel builds. It was too
|
|
frustrating to have 030627a, 032627b (etc) as I tried to figure things out.
|
|
I now use names, in alphabetical order, starting with the kernel build
|
|
<SPAN
|
|
CLASS="QUOTE"
|
|
>"alien"</SPAN
|
|
>. I'm going to leave the date option in though as I
|
|
still think it's a good way to do things.</P
|
|
><P
|
|
>My current kernel, 2.6.6,
|
|
is <SPAN
|
|
CLASS="QUOTE"
|
|
>"Elrond."</SPAN
|
|
> The machine itself is <SPAN
|
|
CLASS="QUOTE"
|
|
>"Smeagol."</SPAN
|
|
>
|
|
</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Kernel compile help</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>For non-Debian instructions see the Appendix
|
|
<SPAN
|
|
CLASS="QUOTE"
|
|
>"<A
|
|
HREF="#nodebkernel"
|
|
>Appendix B</A
|
|
>"</SPAN
|
|
>.</P
|
|
><P
|
|
>For more information on how to compile the kernel The Debian
|
|
Way please read <A
|
|
HREF="http://newbiedoc.sourceforge.net/system/kernel-pkg.html"
|
|
TARGET="_top"
|
|
>Creating
|
|
custom kernels with Debian's kernel-package system</A
|
|
></P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="kernelinstall"
|
|
></A
|
|
>12. Install the new kernel</H1
|
|
><P
|
|
>I like to configure lilo on my own, but do whatever tickles your fancy.</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>dpkg <TT
|
|
CLASS="option"
|
|
>-i</TT
|
|
>
|
|
kernel-image-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
>.<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><date></I
|
|
></TT
|
|
>_10.00.Custom_i386.deb</B
|
|
>
|
|
At this point I decline <EM
|
|
>all</EM
|
|
> the lilo updates and configure
|
|
it myself by hand.
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>configure lilo by hand: <B
|
|
CLASS="command"
|
|
>vi
|
|
<TT
|
|
CLASS="filename"
|
|
>/etc/lilo.conf</TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> load the new kernel into lilo: <B
|
|
CLASS="command"
|
|
>lilo</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> If you have any other deb files for your modules you should
|
|
install them now as well. If you're not sure check
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src</TT
|
|
> for additional
|
|
<TT
|
|
CLASS="filename"
|
|
>.deb</TT
|
|
> files.
|
|
</P
|
|
></LI
|
|
></UL
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Kernel compile help</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>For non-Debian instructions see the Appendix
|
|
<SPAN
|
|
CLASS="QUOTE"
|
|
>"<A
|
|
HREF="#nodebkernel"
|
|
>Appendix B</A
|
|
>"</SPAN
|
|
>.</P
|
|
><P
|
|
>For more information on how to compile the kernel The Debian
|
|
Way please read <A
|
|
HREF="http://newbiedoc.sourceforge.net/system/kernel-pkg.html"
|
|
TARGET="_top"
|
|
>Creating
|
|
custom kernels with Debian's kernel-package system</A
|
|
></P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="finishinstall"
|
|
></A
|
|
>13. Reboot and test</H1
|
|
><P
|
|
>At this point you should reboot your machine. When your system comes
|
|
back up (assuming of course that everything went well and you still have a
|
|
system), check to see what kernel you're running with <B
|
|
CLASS="command"
|
|
>uname
|
|
<TT
|
|
CLASS="option"
|
|
>-a</TT
|
|
></B
|
|
>.
|
|
It should show you the one you just built. You also need to make
|
|
sure the correct patch was installed. You can do that with
|
|
<TT
|
|
CLASS="userinput"
|
|
><B
|
|
> <B
|
|
CLASS="command"
|
|
>dmesg</B
|
|
> |
|
|
<B
|
|
CLASS="command"
|
|
>grep <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>ACPI.*Subsystem\ revision</I
|
|
></TT
|
|
></B
|
|
>
|
|
</B
|
|
></TT
|
|
>. It should give the output:
|
|
<TT
|
|
CLASS="computeroutput"
|
|
>ACPI: Subsystem revision 20021212</TT
|
|
>. The
|
|
revision is the date the patch was released. This number will be different
|
|
than mine if you are not using the 2.4.20 kernel.
|
|
To look at all ACPI-related bits that
|
|
were loaded/started when your system rebooted, do this:
|
|
<TT
|
|
CLASS="userinput"
|
|
><B
|
|
><B
|
|
CLASS="command"
|
|
>dmesg</B
|
|
> |
|
|
<B
|
|
CLASS="command"
|
|
>grep <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>ACPI</I
|
|
></TT
|
|
></B
|
|
>
|
|
</B
|
|
></TT
|
|
>.
|
|
<B
|
|
CLASS="command"
|
|
>dmesg</B
|
|
> prints your boot messages and <B
|
|
CLASS="command"
|
|
>grep
|
|
<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>ACPI</I
|
|
></TT
|
|
></B
|
|
> makes sure that only ACPI-related
|
|
messages are printed.</P
|
|
><P
|
|
>You can also check to see what version you're using with <B
|
|
CLASS="command"
|
|
>cat
|
|
<TT
|
|
CLASS="filename"
|
|
>/proc/acpi/info</TT
|
|
></B
|
|
>. Don't believe everything
|
|
you read though. My output
|
|
says that S3 is a supported state, but we already know it's not. It does
|
|
give the correct version though, which is useful.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="loadmodules"
|
|
></A
|
|
>14. Load related modules</H1
|
|
><P
|
|
>Check to see that each of the ACPI modules have been loaded after
|
|
your machine boots. You can do this with the command
|
|
<B
|
|
CLASS="command"
|
|
>lsmod</B
|
|
>. You are looking for the following options:
|
|
button, battery, fan, ac, thermal and processor. If you chose
|
|
<SPAN
|
|
CLASS="QUOTE"
|
|
>"Y"</SPAN
|
|
> instead of modules when you compiled your kernel, you
|
|
will not see this list. The output on my computer looks like this:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> Module Size Used by Tainted: P
|
|
button 2420 0 (unused)
|
|
battery 5960 0 (unused)
|
|
ac 1832 0 (unused)
|
|
fan 1608 0 (unused)
|
|
thermal 6664 0 (unused)
|
|
processor 8664 0 [thermal]
|
|
NVdriver 945408 11
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>The last module is my graphics card, which uses proprietary drivers. This
|
|
is why I have a <SPAN
|
|
CLASS="QUOTE"
|
|
>"P"</SPAN
|
|
> next to Tainted on the top line.</P
|
|
><P
|
|
>If you compiled ACPI support in as <SPAN
|
|
CLASS="QUOTE"
|
|
>"M"</SPAN
|
|
>odules and you
|
|
don't see the ACPI modules listed you will need to load the modules by
|
|
hand. The modules should be in
|
|
<TT
|
|
CLASS="filename"
|
|
>/lib/modules/<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
>.
|
|
<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><date></I
|
|
></TT
|
|
>/kernel/drivers/acpi/</TT
|
|
>, and are as
|
|
follows:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> -rw-r--r-- 1 root root 4.1k Jun 3 23:57 ac.o
|
|
-rw-r--r-- 1 root root 9.5k Jun 3 23:57 battery.o
|
|
-rw-r--r-- 1 root root 5.2k Jun 3 23:57 button.o
|
|
-rw-r--r-- 1 root root 3.7k Jun 3 23:57 fan.o
|
|
-rw-r--r-- 1 root root 14k Jun 3 23:57 processor.o
|
|
-rw-r--r-- 1 root root 11k Jun 3 23:57 thermal.o
|
|
-rw-r--r-- 1 root root 6.2k Jun 3 23:57 toshiba_acpi.o
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Extensions on Modules</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>The module name is the bit
|
|
before <TT
|
|
CLASS="filename"
|
|
>.o</TT
|
|
> extension on a module
|
|
filename. <TT
|
|
CLASS="filename"
|
|
>processor.o</TT
|
|
> is the file, and processor is
|
|
the module name. To install a loadable kernel module use:
|
|
<B
|
|
CLASS="command"
|
|
>insmod <TT
|
|
CLASS="replaceable"
|
|
><I
|
|
>processor</I
|
|
></TT
|
|
></B
|
|
>. </P
|
|
><P
|
|
> The 2.4.x series kernels use the extension <TT
|
|
CLASS="filename"
|
|
>.o</TT
|
|
>; however, the 2.6.x
|
|
series kernel use the extension <TT
|
|
CLASS="filename"
|
|
>.ko</TT
|
|
>.
|
|
</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><P
|
|
>The first time I rebooted I loaded them all by hand, typing
|
|
<B
|
|
CLASS="command"
|
|
>insmod <TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><modulename></I
|
|
></TT
|
|
></B
|
|
>.
|
|
I personally load processor
|
|
first, although there are mixed feelings on whether or not the order
|
|
matters.</P
|
|
><DIV
|
|
CLASS="note"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="note"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/note.gif"
|
|
HSPACE="5"
|
|
ALT="Note"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Operating System Power Management (OSPM)</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>The first time I tried this the modules were all in separate
|
|
directories and were ospm_<name>. This was probably because I was
|
|
using an old patch, but it is something to be aware of. The OSPM modules
|
|
are now deprecated so hopefully you won't see them.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><P
|
|
>To prevent having to load
|
|
the modules each time you reboot you can do one of two things: compile them
|
|
directly into the kernel (bit late for that though, eh?), or add them to
|
|
your <TT
|
|
CLASS="filename"
|
|
>/etc/modules</TT
|
|
> file. If you don't already have a copy of the
|
|
file just create a new one and add each module name (remember, no
|
|
dot-o) on a separate line. You can also try running
|
|
<B
|
|
CLASS="command"
|
|
>update-modules</B
|
|
> which should automatically update your
|
|
<TT
|
|
CLASS="filename"
|
|
>/etc/modules.conf</TT
|
|
> configuration file.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="daemons"
|
|
></A
|
|
>15. Switching from APM to ACPI</H1
|
|
><P
|
|
>Do not let <SPAN
|
|
CLASS="application"
|
|
>apmd</SPAN
|
|
> and
|
|
<SPAN
|
|
CLASS="application"
|
|
>acpid</SPAN
|
|
> run at the same time unless you REALLY know
|
|
what you're doing. Debian will <EM
|
|
>not</EM
|
|
> make sure only one is running
|
|
at a time. You will have to check.
|
|
APM will try to put your system into S3. On the 2.4.x (and before) series
|
|
kernels this will quite probably hang your machine. S3 is not supported
|
|
until at least 2.5.x. Even the patch won't provide support for S3 in the
|
|
2.4.x series kernels. I personally did an <B
|
|
CLASS="command"
|
|
>apt-get remove apmd</B
|
|
>
|
|
to solve the hanging problem.</P
|
|
><P
|
|
>You should also be aware of another little glitch I discovered. The
|
|
XFree86 server has an option for DPMS (Energy Star) features. The DPMS can
|
|
states can be one of standby, suspend, off or on. Since the 2.4.x kernels
|
|
cannot suspend to disk, this can cause problems. I fixed my system by doing
|
|
two things:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>xset <TT
|
|
CLASS="option"
|
|
>-dpms</TT
|
|
></B
|
|
> (disables DPMS features)
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> In <TT
|
|
CLASS="filename"
|
|
>/etc/X11/XF86Config-4</TT
|
|
> I commented out
|
|
the line <TT
|
|
CLASS="option"
|
|
>Option "DPMS"</TT
|
|
> under Section "Monitor".
|
|
</P
|
|
></LI
|
|
></UL
|
|
><DIV
|
|
CLASS="warning"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="warning"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/warning.gif"
|
|
HSPACE="5"
|
|
ALT="Warning"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Lost Touchpad and Keyboard Interrupts</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>Karl Hegbloom emailed me to say that <SPAN
|
|
CLASS="QUOTE"
|
|
>"keyboard
|
|
keys sticking, touchpad pointer jumping suddenly across the screen,
|
|
lockups under heavy network I/O [was] caused by
|
|
polling the battery state via ACPI and the proc file system."</SPAN
|
|
> This
|
|
problem caused, in part, by a delay between the initial request for
|
|
information about the battery's status and the response. In that delay
|
|
interrupts may be locked out and synchronization with the keyboard and
|
|
touch pad may be lost. <SPAN
|
|
CLASS="QUOTE"
|
|
>"The overnight solution is to either turn off
|
|
the battery applet, or reduce its polling frequency."</SPAN
|
|
> Karl also
|
|
notes that a BIOS update was also able to solve the problem. Thanks Karl!</P
|
|
><P
|
|
> I did not find this to be a problem for me in the 2.4.x kernels,
|
|
however, it was a problem when I upgraded to 2.6.5. I use
|
|
<SPAN
|
|
CLASS="application"
|
|
>wmacpi</SPAN
|
|
> to monitor my battery status. By
|
|
setting the polling frequency to 1 (the lowest possible number), I seem
|
|
to have eliminated the touchpad lockups. In my
|
|
<TT
|
|
CLASS="filename"
|
|
>.xinitrc</TT
|
|
> file I use:
|
|
</P
|
|
><P
|
|
> <TT
|
|
CLASS="userinput"
|
|
><B
|
|
> <B
|
|
CLASS="command"
|
|
>/usr/bin/wmacpi</B
|
|
> <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>-s 1</I
|
|
></TT
|
|
>
|
|
</B
|
|
></TT
|
|
>
|
|
</P
|
|
><P
|
|
> The <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>-s 1</I
|
|
></TT
|
|
> represents the polling frequency
|
|
(sample rate) of <SPAN
|
|
CLASS="QUOTE"
|
|
>"once per minute."</SPAN
|
|
> The default is 20.
|
|
</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="usingacpi"
|
|
></A
|
|
>16. Using ACPI</H1
|
|
><P
|
|
>There are a few different applications/daemons you will want to install
|
|
on your system: <SPAN
|
|
CLASS="application"
|
|
>acpid</SPAN
|
|
> (the daemon that will control your hardware states), and <SPAN
|
|
CLASS="application"
|
|
>acpi</SPAN
|
|
> (the interface to monitor events and states) are the base install. The
|
|
<SPAN
|
|
CLASS="application"
|
|
>acpi</SPAN
|
|
> Debian package is only available in testing and is unstable. If
|
|
you're running stable you won't be able to install it without playing
|
|
around with apt and your <TT
|
|
CLASS="filename"
|
|
>list.sources</TT
|
|
> file. You can probably
|
|
also compile from source. If you do get <SPAN
|
|
CLASS="application"
|
|
>acpi</SPAN
|
|
>
|
|
installed you can use it to monitor your system like this: <B
|
|
CLASS="command"
|
|
>acpi
|
|
<TT
|
|
CLASS="option"
|
|
>-V</TT
|
|
></B
|
|
>. The output will tell you about your
|
|
system. Mine looks like this:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> Thermal 1: ok, 47.1 degrees C
|
|
Thermal 2: ok, 45.1 degrees C
|
|
AC Adapter 1: off-line <-- running off battery
|
|
AC Adapter 1: on-line <-- running off AC power
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>Unfortunately, the <TT
|
|
CLASS="option"
|
|
>-V</TT
|
|
> <SPAN
|
|
CLASS="QUOTE"
|
|
>"full version"</SPAN
|
|
> doesn't work for me.
|
|
Fortunately I can still look in each of the acpi files individually for
|
|
information about my system. Check in the <TT
|
|
CLASS="filename"
|
|
>/proc/acpi</TT
|
|
> directory
|
|
for various things of importance. If I want to check my battery I read the
|
|
following file like this: <B
|
|
CLASS="command"
|
|
>cat
|
|
<TT
|
|
CLASS="filename"
|
|
>/proc/acpi/battery/BAT0/state</TT
|
|
></B
|
|
>. The output is as follows:</P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> present: yes
|
|
capacity state: ok
|
|
charging state: discharging <-- running off battery
|
|
present rate: unknown
|
|
remaining capacity: 3920 mAh <-- watch this number
|
|
present voltage: 14800 mV
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> present: yes
|
|
capacity state: ok
|
|
charging state: discharging
|
|
present rate: unknown
|
|
remaining capacity: 3840 mAh <-- capacity getting smaller
|
|
present voltage: 14800 mV
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> present: yes
|
|
capacity state: ok
|
|
charging state: charging <-- AC adapter plugged in
|
|
present rate: unknown
|
|
remaining capacity: 3840 mAh
|
|
present voltage: 14800 mV
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>If I want information about my battery in general I check it out like
|
|
this: <B
|
|
CLASS="command"
|
|
>cat <TT
|
|
CLASS="filename"
|
|
>/proc/acpi/battery/BAT0/info</TT
|
|
></B
|
|
></P
|
|
><TABLE
|
|
BORDER="0"
|
|
BGCOLOR="#E0E0E0"
|
|
WIDTH="100%"
|
|
><TR
|
|
><TD
|
|
><FONT
|
|
COLOR="#000000"
|
|
><PRE
|
|
CLASS="screen"
|
|
> present: yes
|
|
design capacity: 3920 mAh
|
|
last full capacity: 3920 mAh
|
|
battery technology: rechargeable
|
|
design voltage: 14800 mV
|
|
design capacity warning: 30 mAh
|
|
design capacity low: 20 mAh
|
|
capacity granularity 1: 10 mAh
|
|
capacity granularity 2: 3470 mAh
|
|
model number: Bat0
|
|
serial number:
|
|
battery type: Lion
|
|
OEM info: Acer
|
|
</PRE
|
|
></FONT
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><P
|
|
>You're smart people. You can probably figure it out from here. :)</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="resources"
|
|
></A
|
|
>17. References and Resources</H1
|
|
><P
|
|
>The following URLs were incredibly useful in writing this HOWTO and
|
|
generally getting ACPI up and running.</P
|
|
><P
|
|
></P
|
|
><DIV
|
|
CLASS="variablelist"
|
|
><P
|
|
><B
|
|
>HOWTOs</B
|
|
></P
|
|
><DL
|
|
><DT
|
|
>HOWTO install ACPI under Linux</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://sylvestre.ledru.info/howto/howto_acpi.php"
|
|
TARGET="_top"
|
|
> http://sylvestre.ledru.info/howto/howto_acpi.php
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Linux ACPI-HOWTO</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://www.columbia.edu/~ariel/acpi/acpi_howto.txt"
|
|
TARGET="_top"
|
|
> http://www.columbia.edu/~ariel/acpi/acpi_howto.txt
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Linux on the road, formerly:
|
|
<A
|
|
HREF="http://www.tldp.org/HOWTO/Laptop-HOWTO.htm"
|
|
TARGET="_top"
|
|
> Linux Laptop HOWTO
|
|
</A
|
|
></DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://tuxmobil.org/howtos.html"
|
|
TARGET="_top"
|
|
> http://tuxmobil.org/howtos.html
|
|
</A
|
|
>
|
|
You'll need to scroll a bit, or use the HTML version:
|
|
<A
|
|
HREF="http://tuxmobil.org/Mobile-Guide.db/Mobile-Guide.html"
|
|
TARGET="_top"
|
|
> http://tuxmobil.org/Mobile-Guide.db/Mobile-Guide.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Hardware in Detail (part of Linux on the road)</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://tuxmobil.org/Mobile-Guide.db/mobile-guide-p2c1-hardware-in-detail.html"
|
|
TARGET="_top"
|
|
> http://tuxmobil.org/Mobile-Guide.db/mobile-guide-p2c1-hardware-in-detail.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Power Management with Linux - APM, ACPI, PMU</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://tuxmobil.org/apm_linux.html"
|
|
TARGET="_top"
|
|
> http://tuxmobil.org/apm_linux.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Battery Powered Linux Mini-HOWTO</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://www.tldp.org/HOWTO/mini/Battery-Powered/"
|
|
TARGET="_top"
|
|
> http://www.tldp.org/HOWTO/mini/Battery-Powered/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Creating custom kernels with Debian's Kernel-Package system</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://newbiedoc.sourceforge.net/system/kernel-pkg.html"
|
|
TARGET="_top"
|
|
> http://newbiedoc.sourceforge.net/system/kernel-pkg.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
><P
|
|
></P
|
|
><DIV
|
|
CLASS="variablelist"
|
|
><P
|
|
><B
|
|
>Hardware-specific Install Reports and Info</B
|
|
></P
|
|
><DL
|
|
><DT
|
|
>Installation Reports</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://acpi.sourceforge.net/wiki/index.php/InstallationReports"
|
|
TARGET="_top"
|
|
> http://acpi.sourceforge.net/wiki/index.php/InstallationReports
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Blacklist</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://acpi.sourceforge.net/documentation/blacklist.html"
|
|
TARGET="_top"
|
|
> http://acpi.sourceforge.net/documentation/blacklist.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>DSDT: Overview</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://acpi.sourceforge.net/dsdt/index.php"
|
|
TARGET="_top"
|
|
> http://acpi.sourceforge.net/dsdt/index.php
|
|
</A
|
|
>
|
|
Includes links to patched DSDTs and HOWTOs about patching your own DSDT.
|
|
</P
|
|
></DD
|
|
><DT
|
|
>BIOS Settings for the AcerTM (Phoenix BIOS)</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://help.nec-computers.com/au/pri/item_instr_bios_7521N.asp"
|
|
TARGET="_top"
|
|
> http://help.nec-computers.com/au/pri/item_instr_bios_7521N.asp
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
><P
|
|
></P
|
|
><DIV
|
|
CLASS="variablelist"
|
|
><P
|
|
><B
|
|
>Software Development Groups</B
|
|
></P
|
|
><DL
|
|
><DT
|
|
>ACPI4Linux</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://acpi.sf.net"
|
|
TARGET="_top"
|
|
> http://acpi.sf.net
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>ACPI Special Interest Group</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://www.acpi.info/"
|
|
TARGET="_top"
|
|
> http://www.acpi.info/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Intel</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://developer.intel.com/technology/iapc/acpi/"
|
|
TARGET="_top"
|
|
> http://developer.intel.com/technology/iapc/acpi/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
><P
|
|
></P
|
|
><DIV
|
|
CLASS="variablelist"
|
|
><P
|
|
><B
|
|
>ACPI articles</B
|
|
></P
|
|
><DL
|
|
><DT
|
|
>Fan Speed Control Techniques in PCs</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://www.analog.com/library/analogDialogue/archives/34-04/fan/"
|
|
TARGET="_top"
|
|
> http://www.analog.com/library/analogDialogue/archives/34-04/fan/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
><P
|
|
></P
|
|
><DIV
|
|
CLASS="variablelist"
|
|
><P
|
|
><B
|
|
>Mailing List Threads</B
|
|
></P
|
|
><DL
|
|
><DT
|
|
>debian-laptop thread: can't restore from suspend</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://lists.debian.org/debian-laptop/2003/debian-laptop-200304/msg00367.html"
|
|
TARGET="_top"
|
|
> http://lists.debian.org/debian-laptop/2003/debian-laptop-200304/msg00367.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>acpi-support thread: newbie HOWTO and debian patching</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://sourceforge.net/mailarchive/forum.php?forum_id=7803&max_rows=25&style=flat&viewmonth=200304&viewday=17"
|
|
TARGET="_top"
|
|
> http://sourceforge.net/mailarchive/forum.php?forum_id=7803&max_rows=25&style=flat&viewmonth=200304&viewday=17
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>debian-laptop thread: acer 634 acpi & apm</DT
|
|
><DD
|
|
><P
|
|
> <A
|
|
HREF="http://lists.debian.org/debian-laptop/2002/debian-laptop-200212/msg00242.html"
|
|
TARGET="_top"
|
|
> http://lists.debian.org/debian-laptop/2002/debian-laptop-200212/msg00242.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
><P
|
|
></P
|
|
><DIV
|
|
CLASS="variablelist"
|
|
><P
|
|
><B
|
|
>ACPI packages and related software</B
|
|
></P
|
|
><DL
|
|
><DT
|
|
>The Kernel</DT
|
|
><DD
|
|
><P
|
|
>Remember to choose "F" for full when you download your
|
|
kernel source.
|
|
<A
|
|
HREF="http://www.kernel.org"
|
|
TARGET="_top"
|
|
> http://www.kernel.org
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>Debian-ized kernel</DT
|
|
><DD
|
|
><P
|
|
>maxx's pre-patched 2.4.20-8 kernel source package. For more
|
|
information see <A
|
|
HREF="#debianizedkernel"
|
|
>maxx's notes</A
|
|
>.
|
|
<A
|
|
HREF="http://people.debian.org/~maxx/kernel-source-2.4.20/"
|
|
TARGET="_top"
|
|
> http://people.debian.org/~maxx/kernel-source-2.4.20/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
>ACPI kernel patch</DT
|
|
><DD
|
|
><P
|
|
>You'll need to pick the version that exactly matches
|
|
the kernel you're using.
|
|
<A
|
|
HREF="http://sourceforge.net/project/showfiles.php?group_id=36832"
|
|
TARGET="_top"
|
|
> http://sourceforge.net/project/showfiles.php?group_id=36832
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
><SPAN
|
|
CLASS="application"
|
|
>acpid</SPAN
|
|
></DT
|
|
><DD
|
|
><P
|
|
>the daemon
|
|
<A
|
|
HREF="http://sourceforge.net/projects/acpid"
|
|
TARGET="_top"
|
|
> http://sourceforge.net/projects/acpid
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
><SPAN
|
|
CLASS="application"
|
|
>acpi</SPAN
|
|
></DT
|
|
><DD
|
|
><P
|
|
>text interface
|
|
<A
|
|
HREF="http://grahame.angrygoats.net/acpi.shtml"
|
|
TARGET="_top"
|
|
> http://grahame.angrygoats.net/acpi.shtml
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
><SPAN
|
|
CLASS="application"
|
|
>Kacpi</SPAN
|
|
></DT
|
|
><DD
|
|
><P
|
|
>graphical interface for KDE
|
|
<A
|
|
HREF="http://www.elektronikschule.de/~genannt/kacpi/download.html"
|
|
TARGET="_top"
|
|
> http://www.elektronikschule.de/~genannt/kacpi/download.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
><SPAN
|
|
CLASS="application"
|
|
>aKpi</SPAN
|
|
></DT
|
|
><DD
|
|
><P
|
|
>another KDE interface
|
|
<A
|
|
HREF="http://akpi.scmd.at/"
|
|
TARGET="_top"
|
|
> http://akpi.scmd.at/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
><SPAN
|
|
CLASS="application"
|
|
>wmacpi</SPAN
|
|
></DT
|
|
><DD
|
|
><P
|
|
>WindowMaker DockApp (another GUI)
|
|
<A
|
|
HREF="http://www.ne.jp/asahi/linux/timecop/"
|
|
TARGET="_top"
|
|
> http://www.ne.jp/asahi/linux/timecop/
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
><DT
|
|
><SPAN
|
|
CLASS="application"
|
|
>wmacpi+clecourt</SPAN
|
|
></DT
|
|
><DD
|
|
><P
|
|
>WindowMaker DockApp (another graphical interface). Handles two
|
|
battery slots.
|
|
<A
|
|
HREF="http://open.iliad.fr/~clecourt/wmacpi/index.html"
|
|
TARGET="_top"
|
|
> http://open.iliad.fr/~clecourt/wmacpi/index.html
|
|
</A
|
|
>
|
|
</P
|
|
></DD
|
|
></DL
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="thanks"
|
|
></A
|
|
>18. Thanks</H1
|
|
><P
|
|
>Much thanks goes out to the following:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <A
|
|
HREF="http://acpi.sourceforge.net/mailinglists.html"
|
|
TARGET="_top"
|
|
>acpi-support</A
|
|
>
|
|
(note: the discussion list for ACPI4Linux is now at acpi-devel)
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <A
|
|
HREF="http://lists.debian.org/debian-laptop/"
|
|
TARGET="_top"
|
|
>debian-laptop</A
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <A
|
|
HREF="http://lists.debian.org/debian-user/"
|
|
TARGET="_top"
|
|
>debian-user</A
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <A
|
|
HREF="http://linuxchix.org/"
|
|
TARGET="_top"
|
|
>techtalk</A
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <A
|
|
HREF="http://www.tldp.org/mailinfo.html#maillists"
|
|
TARGET="_top"
|
|
>TLDP mailing
|
|
lists</A
|
|
> (discuss and docbook)
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Sebastian Henschel for reminding me I'd promised to write
|
|
it all down</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Erich Schubert for writing the section on DSDTs
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Werner Heuser for suggesting I submit the document to The
|
|
LDP</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Tabatha Marshall for editing and generally being very
|
|
enthusiastic about learning DocBook</P
|
|
></LI
|
|
></UL
|
|
></DIV
|
|
><DIV
|
|
CLASS="appendix"
|
|
><HR><H1
|
|
CLASS="appendix"
|
|
><A
|
|
NAME="patch"
|
|
></A
|
|
>A. Patching Old Kernels</H1
|
|
><P
|
|
>If you are using a 2.4.x series kernel, the kernel will need to be patched
|
|
before you can add ACPI support. Although ACPI is included in the 2.6.x
|
|
series kernels you should check to see if any patches have been released
|
|
to fix bugs. You can find this information on the ACPI4Linux site.</P
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="AEN659"
|
|
></A
|
|
>A.1. Getting the Source Files</H1
|
|
><P
|
|
>Download a fresh kernel from <A
|
|
HREF="http://www.kernel.org"
|
|
TARGET="_top"
|
|
>www.kernel.org</A
|
|
>. You need to make sure you
|
|
get a full kernel. Find the <SPAN
|
|
CLASS="QUOTE"
|
|
>"latest stable version of the Linux kernel"</SPAN
|
|
>
|
|
and click on <TT
|
|
CLASS="option"
|
|
>F</TT
|
|
> for FULL. Wait patiently. A bzipped kernel
|
|
is about 26M. If you're feeling particularly geeky you could also
|
|
<B
|
|
CLASS="command"
|
|
>wget</B
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>http://kernel.org/pub/linux/kernel/v2.4/linux-<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><version></I
|
|
></TT
|
|
>.tar.bz2</TT
|
|
>.
|
|
</P
|
|
><DIV
|
|
CLASS="tip"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="tip"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/tip.gif"
|
|
HSPACE="5"
|
|
ALT="Tip"></TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>You may or may not want the latest stable version. For more information
|
|
read the <A
|
|
HREF="#kernelchoice"
|
|
>Section 7.1</A
|
|
> section of
|
|
this document. If you decide to use a version of the kernel that is not
|
|
published on the front page, use the <A
|
|
HREF="http://www.kernel.org/pub/linux/kernel/"
|
|
TARGET="_top"
|
|
>/pub/linux/kernel</A
|
|
>
|
|
directory on the <A
|
|
HREF="http://www.kernel.org"
|
|
TARGET="_top"
|
|
>kernel.org</A
|
|
>
|
|
site to find the kernel you'd like.</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
><P
|
|
>While you're waiting, grab a copy of the patch as well. For the 2.4.20
|
|
kernel use the <A
|
|
HREF="http://prdownloads.sourceforge.net/acpi/acpi-20021212-2.4.20.diff.gz?download"
|
|
TARGET="_top"
|
|
>2.4.20
|
|
patch</A
|
|
>. It's dated 2002.12.12. You'll need to know that number later
|
|
when we check to make sure the patch worked. If you are using a different
|
|
kernel version make sure you take note of the date of your patch. Your
|
|
numbers will differ slightly from the one I use later on.</P
|
|
><P
|
|
>Once you've got those two files (the kernel and the patch) unpack them
|
|
and patch the kernel.</P
|
|
><DIV
|
|
CLASS="sect2"
|
|
><HR><H2
|
|
CLASS="sect2"
|
|
><A
|
|
NAME="kernelpatch"
|
|
></A
|
|
>A.1.1. Patch</H2
|
|
><P
|
|
>Now we're going to actually patch the kernel. I take one extra step from
|
|
<A
|
|
HREF="http://acpi.sourceforge.net/download.html"
|
|
TARGET="_top"
|
|
>the instructions</A
|
|
> at
|
|
ACPI4Linux. Instead of gunzipping and patching in the same line, I use two lines.
|
|
This is purely a matter of preference. When you patch the kernel you want
|
|
to make sure there are no error messages. (There is no <SPAN
|
|
CLASS="QUOTE"
|
|
>"yay"</SPAN
|
|
> line, instead
|
|
look for the absence of errors.)</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cp
|
|
<TT
|
|
CLASS="filename"
|
|
>acpi-20021212-2.4.20.diff.gz</TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux/.</TT
|
|
>
|
|
</B
|
|
>
|
|
(Your patch filename will be different if you're not using the
|
|
2.4.20 kernel.)
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>gunzip
|
|
<TT
|
|
CLASS="filename"
|
|
>acpi-20021212-2.4.20.diff.gz</TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>patch <TT
|
|
CLASS="option"
|
|
>-p<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>1</I
|
|
></TT
|
|
></TT
|
|
> <
|
|
<TT
|
|
CLASS="filename"
|
|
>acpi-20021212-2.4.20.diff</TT
|
|
>
|
|
</B
|
|
>
|
|
(this is the actual patching part)
|
|
</P
|
|
></LI
|
|
></UL
|
|
><P
|
|
>Once you've finished patching your kernel, continue reading at <A
|
|
HREF="#kernelconfig"
|
|
>Section 10</A
|
|
>.
|
|
</P
|
|
></DIV
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="appendix"
|
|
><HR><H1
|
|
CLASS="appendix"
|
|
><A
|
|
NAME="nodebkernel"
|
|
></A
|
|
>B. ACPI the Non-Debian Way</H1
|
|
><P
|
|
>There is very little difference between The Debian Way and the
|
|
generic way. In fact it's probably only 10 or so lines of difference.</P
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="nodebcompile"
|
|
></A
|
|
>B.1. Compile the kernel</H1
|
|
><P
|
|
>The <SPAN
|
|
CLASS="QUOTE"
|
|
>"normal"</SPAN
|
|
> way of compiling a kernel does not use
|
|
<B
|
|
CLASS="command"
|
|
>make-kpkg</B
|
|
>. Instead, it uses the following steps:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
>
|
|
</B
|
|
> which should point to the 2.4.20
|
|
kernel (unzipped) files
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>dep</I
|
|
></TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>clean</I
|
|
></TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>bzImage</I
|
|
></TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make <TT
|
|
CLASS="parameter"
|
|
><I
|
|
>modules</I
|
|
></TT
|
|
></B
|
|
>
|
|
(remember to unpack your modules first)
|
|
</P
|
|
></LI
|
|
></UL
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="nodebinstall"
|
|
></A
|
|
>B.2. Install the new kernel</H1
|
|
><P
|
|
>In <I
|
|
CLASS="citetitle"
|
|
>The Debian Way</I
|
|
>, you create a deb file which contains information about where the kernel is (and makes the kernel and yada-yada). In the <SPAN
|
|
CLASS="QUOTE"
|
|
>"normal"</SPAN
|
|
> way, you put things where they need to be right away. You need to install your modules and then configure lilo to point to the new kernel and then run
|
|
lilo. If you are not doing things <I
|
|
CLASS="citetitle"
|
|
>The Debian Way</I
|
|
> your <SPAN
|
|
CLASS="QUOTE"
|
|
>"install"</SPAN
|
|
> will look like this:</P
|
|
><P
|
|
></P
|
|
><UL
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cd
|
|
<TT
|
|
CLASS="filename"
|
|
>/usr/src/linux</TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>make
|
|
<TT
|
|
CLASS="parameter"
|
|
><I
|
|
>modules_install</I
|
|
></TT
|
|
></B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>cp
|
|
<TT
|
|
CLASS="filename"
|
|
>arch/i386/boot/bzImage</TT
|
|
>
|
|
<TT
|
|
CLASS="filename"
|
|
>/boot/vmlinuz.<TT
|
|
CLASS="replaceable"
|
|
><I
|
|
><date></I
|
|
></TT
|
|
></TT
|
|
>
|
|
</B
|
|
>
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
> <B
|
|
CLASS="command"
|
|
>vi <TT
|
|
CLASS="filename"
|
|
>/etc/lilo.conf</TT
|
|
></B
|
|
> and copy the structure of your
|
|
existing kernel. Do NOT delete the reference to your existing kernel! You need
|
|
to point lilo to the <SPAN
|
|
CLASS="QUOTE"
|
|
>"vmlinuz"</SPAN
|
|
> file that was created when you compiled the
|
|
kernel above
|
|
</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
><B
|
|
CLASS="command"
|
|
>lilo</B
|
|
> (yup, just exactly like that.)
|
|
Lilo will let you know if it's going to have major problems loading
|
|
the new kernel.
|
|
</P
|
|
></LI
|
|
></UL
|
|
><DIV
|
|
CLASS="warning"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="warning"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/warning.gif"
|
|
HSPACE="5"
|
|
ALT="Warning"></TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
>Do NOT forget to run lilo before rebooting. Type
|
|
<B
|
|
CLASS="command"
|
|
>lilo</B
|
|
>. It's that easy (and that easy to forget).</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="nodebsoftware"
|
|
></A
|
|
>B.3. Software packages</H1
|
|
><P
|
|
>You can still use all of the software mentioned in this HOWTO even if
|
|
you're not using Debian. Unfortunately it will take a little more effort on
|
|
your part to download and install everything. Fortunately it's really not
|
|
that difficult. Most software packages include a README file when you
|
|
gunzip them which will explain what you need to do to get things working on
|
|
your system.</P
|
|
><DIV
|
|
CLASS="tip"
|
|
><P
|
|
></P
|
|
><TABLE
|
|
CLASS="tip"
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="25"
|
|
ALIGN="CENTER"
|
|
VALIGN="TOP"
|
|
><IMG
|
|
SRC="../images/tip.gif"
|
|
HSPACE="5"
|
|
ALT="Tip"></TD
|
|
><TH
|
|
ALIGN="LEFT"
|
|
VALIGN="CENTER"
|
|
><B
|
|
>Software downloads</B
|
|
></TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
> </TD
|
|
><TD
|
|
ALIGN="LEFT"
|
|
VALIGN="TOP"
|
|
><P
|
|
> For more information about software for ACPI, please use the
|
|
<A
|
|
HREF="#software"
|
|
>ACPI packages and related software</A
|
|
>.
|
|
</P
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></DIV
|
|
></DIV
|
|
><DIV
|
|
CLASS="appendix"
|
|
><HR><H1
|
|
CLASS="appendix"
|
|
><A
|
|
NAME="gfdl"
|
|
></A
|
|
>C. GNU Free Documentation License</H1
|
|
><P
|
|
>Version 1.1, March 2000</P
|
|
><A
|
|
NAME="AEN775"
|
|
></A
|
|
><BLOCKQUOTE
|
|
CLASS="BLOCKQUOTE"
|
|
><P
|
|
>Copyright (C) 2000 Free Software Foundation, Inc.
|
|
59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
|
Everyone is permitted to copy and distribute verbatim copies
|
|
of this license document, but changing it is not allowed.</P
|
|
></BLOCKQUOTE
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-0"
|
|
></A
|
|
>C.1. PREAMBLE</H1
|
|
><P
|
|
>The purpose of this License is to make a manual, textbook,
|
|
or other written document "free" in the sense of freedom: to
|
|
assure everyone the effective freedom to copy and redistribute it,
|
|
with or without modifying it, either commercially or
|
|
noncommercially. Secondarily, this License preserves for the
|
|
author and publisher a way to get credit for their work, while not
|
|
being considered responsible for modifications made by
|
|
others.</P
|
|
><P
|
|
>This License is a kind of "copyleft", which means that
|
|
derivative works of the document must themselves be free in the
|
|
same sense. It complements the GNU General Public License, which
|
|
is a copyleft license designed for free software.</P
|
|
><P
|
|
>We have designed this License in order to use it for manuals
|
|
for free software, because free software needs free documentation:
|
|
a free program should come with manuals providing the same
|
|
freedoms that the software does. But this License is not limited
|
|
to software manuals; it can be used for any textual work,
|
|
regardless of subject matter or whether it is published as a
|
|
printed book. We recommend this License principally for works
|
|
whose purpose is instruction or reference.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-1"
|
|
></A
|
|
>C.2. APPLICABILITY AND DEFINITIONS</H1
|
|
><P
|
|
>This License applies to any manual or other work that
|
|
contains a notice placed by the copyright holder saying it can be
|
|
distributed under the terms of this License. The "Document",
|
|
below, refers to any such manual or work. Any member of the
|
|
public is a licensee, and is addressed as "you".</P
|
|
><P
|
|
>A "Modified Version" of the Document means any work
|
|
containing the Document or a portion of it, either copied
|
|
verbatim, or with modifications and/or translated into another
|
|
language.</P
|
|
><P
|
|
>A "Secondary Section" is a named appendix or a front-matter
|
|
section of the Document that deals exclusively with the
|
|
relationship of the publishers or authors of the Document to the
|
|
Document's overall subject (or to related matters) and contains
|
|
nothing that could fall directly within that overall subject.
|
|
(For example, if the Document is in part a textbook of
|
|
mathematics, a Secondary Section may not explain any mathematics.)
|
|
The relationship could be a matter of historical connection with
|
|
the subject or with related matters, or of legal, commercial,
|
|
philosophical, ethical or political position regarding
|
|
them.</P
|
|
><P
|
|
>The "Invariant Sections" are certain Secondary Sections
|
|
whose titles are designated, as being those of Invariant Sections,
|
|
in the notice that says that the Document is released under this
|
|
License.</P
|
|
><P
|
|
>The "Cover Texts" are certain short passages of text that
|
|
are listed, as Front-Cover Texts or Back-Cover Texts, in the
|
|
notice that says that the Document is released under this
|
|
License.</P
|
|
><P
|
|
>A "Transparent" copy of the Document means a
|
|
machine-readable copy, represented in a format whose specification
|
|
is available to the general public, whose contents can be viewed
|
|
and edited directly and straightforwardly with generic text
|
|
editors or (for images composed of pixels) generic paint programs
|
|
or (for drawings) some widely available drawing editor, and that
|
|
is suitable for input to text formatters or for automatic
|
|
translation to a variety of formats suitable for input to text
|
|
formatters. A copy made in an otherwise Transparent file format
|
|
whose markup has been designed to thwart or discourage subsequent
|
|
modification by readers is not Transparent. A copy that is not
|
|
"Transparent" is called "Opaque".</P
|
|
><P
|
|
>Examples of suitable formats for Transparent copies include
|
|
plain ASCII without markup, Texinfo input format, LaTeX input
|
|
format, SGML or XML using a publicly available DTD, and
|
|
standard-conforming simple HTML designed for human modification.
|
|
Opaque formats include PostScript, PDF, proprietary formats that
|
|
can be read and edited only by proprietary word processors, SGML
|
|
or XML for which the DTD and/or processing tools are not generally
|
|
available, and the machine-generated HTML produced by some word
|
|
processors for output purposes only.</P
|
|
><P
|
|
>The "Title Page" means, for a printed book, the title page
|
|
itself, plus such following pages as are needed to hold, legibly,
|
|
the material this License requires to appear in the title page.
|
|
For works in formats which do not have any title page as such,
|
|
"Title Page" means the text near the most prominent appearance of
|
|
the work's title, preceding the beginning of the body of the
|
|
text.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-2"
|
|
></A
|
|
>C.3. VERBATIM COPYING</H1
|
|
><P
|
|
>You may copy and distribute the Document in any medium,
|
|
either commercially or noncommercially, provided that this
|
|
License, the copyright notices, and the license notice saying this
|
|
License applies to the Document are reproduced in all copies, and
|
|
that you add no other conditions whatsoever to those of this
|
|
License. You may not use technical measures to obstruct or
|
|
control the reading or further copying of the copies you make or
|
|
distribute. However, you may accept compensation in exchange for
|
|
copies. If you distribute a large enough number of copies you
|
|
must also follow the conditions in section 3.</P
|
|
><P
|
|
>You may also lend copies, under the same conditions stated
|
|
above, and you may publicly display copies.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-3"
|
|
></A
|
|
>C.4. COPYING IN QUANTITY</H1
|
|
><P
|
|
>If you publish printed copies of the Document numbering more
|
|
than 100, and the Document's license notice requires Cover Texts,
|
|
you must enclose the copies in covers that carry, clearly and
|
|
legibly, all these Cover Texts: Front-Cover Texts on the front
|
|
cover, and Back-Cover Texts on the back cover. Both covers must
|
|
also clearly and legibly identify you as the publisher of these
|
|
copies. The front cover must present the full title with all
|
|
words of the title equally prominent and visible. You may add
|
|
other material on the covers in addition. Copying with changes
|
|
limited to the covers, as long as they preserve the title of the
|
|
Document and satisfy these conditions, can be treated as verbatim
|
|
copying in other respects.</P
|
|
><P
|
|
>If the required texts for either cover are too voluminous to
|
|
fit legibly, you should put the first ones listed (as many as fit
|
|
reasonably) on the actual cover, and continue the rest onto
|
|
adjacent pages.</P
|
|
><P
|
|
>If you publish or distribute Opaque copies of the Document
|
|
numbering more than 100, you must either include a
|
|
machine-readable Transparent copy along with each Opaque copy, or
|
|
state in or with each Opaque copy a publicly-accessible
|
|
computer-network location containing a complete Transparent copy
|
|
of the Document, free of added material, which the general
|
|
network-using public has access to download anonymously at no
|
|
charge using public-standard network protocols. If you use the
|
|
latter option, you must take reasonably prudent steps, when you
|
|
begin distribution of Opaque copies in quantity, to ensure that
|
|
this Transparent copy will remain thus accessible at the stated
|
|
location until at least one year after the last time you
|
|
distribute an Opaque copy (directly or through your agents or
|
|
retailers) of that edition to the public.</P
|
|
><P
|
|
>It is requested, but not required, that you contact the
|
|
authors of the Document well before redistributing any large
|
|
number of copies, to give them a chance to provide you with an
|
|
updated version of the Document.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-4"
|
|
></A
|
|
>C.5. MODIFICATIONS</H1
|
|
><P
|
|
>You may copy and distribute a Modified Version of the
|
|
Document under the conditions of sections 2 and 3 above, provided
|
|
that you release the Modified Version under precisely this
|
|
License, with the Modified Version filling the role of the
|
|
Document, thus licensing distribution and modification of the
|
|
Modified Version to whoever possesses a copy of it. In addition,
|
|
you must do these things in the Modified Version:</P
|
|
><P
|
|
></P
|
|
><OL
|
|
TYPE="A"
|
|
><LI
|
|
><P
|
|
>Use in the Title Page
|
|
(and on the covers, if any) a title distinct from that of the
|
|
Document, and from those of previous versions (which should, if
|
|
there were any, be listed in the History section of the
|
|
Document). You may use the same title as a previous version if
|
|
the original publisher of that version gives permission.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>List on the Title Page,
|
|
as authors, one or more persons or entities responsible for
|
|
authorship of the modifications in the Modified Version,
|
|
together with at least five of the principal authors of the
|
|
Document (all of its principal authors, if it has less than
|
|
five).</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>State on the Title page
|
|
the name of the publisher of the Modified Version, as the
|
|
publisher.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Preserve all the
|
|
copyright notices of the Document.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Add an appropriate
|
|
copyright notice for your modifications adjacent to the other
|
|
copyright notices.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Include, immediately
|
|
after the copyright notices, a license notice giving the public
|
|
permission to use the Modified Version under the terms of this
|
|
License, in the form shown in the Addendum below.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Preserve in that license
|
|
notice the full lists of Invariant Sections and required Cover
|
|
Texts given in the Document's license notice.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Include an unaltered
|
|
copy of this License.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Preserve the section
|
|
entitled "History", and its title, and add to it an item stating
|
|
at least the title, year, new authors, and publisher of the
|
|
Modified Version as given on the Title Page. If there is no
|
|
section entitled "History" in the Document, create one stating
|
|
the title, year, authors, and publisher of the Document as given
|
|
on its Title Page, then add an item describing the Modified
|
|
Version as stated in the previous sentence.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Preserve the network
|
|
location, if any, given in the Document for public access to a
|
|
Transparent copy of the Document, and likewise the network
|
|
locations given in the Document for previous versions it was
|
|
based on. These may be placed in the "History" section. You
|
|
may omit a network location for a work that was published at
|
|
least four years before the Document itself, or if the original
|
|
publisher of the version it refers to gives permission.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>In any section entitled
|
|
"Acknowledgements" or "Dedications", preserve the section's
|
|
title, and preserve in the section all the substance and tone of
|
|
each of the contributor acknowledgements and/or dedications
|
|
given therein.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Preserve all the
|
|
Invariant Sections of the Document, unaltered in their text and
|
|
in their titles. Section numbers or the equivalent are not
|
|
considered part of the section titles.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Delete any section
|
|
entitled "Endorsements". Such a section may not be included in
|
|
the Modified Version.</P
|
|
></LI
|
|
><LI
|
|
><P
|
|
>Do not retitle any
|
|
existing section as "Endorsements" or to conflict in title with
|
|
any Invariant Section.</P
|
|
></LI
|
|
></OL
|
|
><P
|
|
>If the Modified Version includes new front-matter sections
|
|
or appendices that qualify as Secondary Sections and contain no
|
|
material copied from the Document, you may at your option
|
|
designate some or all of these sections as invariant. To do this,
|
|
add their titles to the list of Invariant Sections in the Modified
|
|
Version's license notice. These titles must be distinct from any
|
|
other section titles.</P
|
|
><P
|
|
>You may add a section entitled "Endorsements", provided it
|
|
contains nothing but endorsements of your Modified Version by
|
|
various parties--for example, statements of peer review or that
|
|
the text has been approved by an organization as the authoritative
|
|
definition of a standard.</P
|
|
><P
|
|
>You may add a passage of up to five words as a Front-Cover
|
|
Text, and a passage of up to 25 words as a Back-Cover Text, to the
|
|
end of the list of Cover Texts in the Modified Version. Only one
|
|
passage of Front-Cover Text and one of Back-Cover Text may be
|
|
added by (or through arrangements made by) any one entity. If the
|
|
Document already includes a cover text for the same cover,
|
|
previously added by you or by arrangement made by the same entity
|
|
you are acting on behalf of, you may not add another; but you may
|
|
replace the old one, on explicit permission from the previous
|
|
publisher that added the old one.</P
|
|
><P
|
|
>The author(s) and publisher(s) of the Document do not by
|
|
this License give permission to use their names for publicity for
|
|
or to assert or imply endorsement of any Modified Version.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-5"
|
|
></A
|
|
>C.6. COMBINING DOCUMENTS</H1
|
|
><P
|
|
>You may combine the Document with other documents released
|
|
under this License, under the terms defined in section 4 above for
|
|
modified versions, provided that you include in the combination
|
|
all of the Invariant Sections of all of the original documents,
|
|
unmodified, and list them all as Invariant Sections of your
|
|
combined work in its license notice.</P
|
|
><P
|
|
>The combined work need only contain one copy of this
|
|
License, and multiple identical Invariant Sections may be replaced
|
|
with a single copy. If there are multiple Invariant Sections with
|
|
the same name but different contents, make the title of each such
|
|
section unique by adding at the end of it, in parentheses, the
|
|
name of the original author or publisher of that section if known,
|
|
or else a unique number. Make the same adjustment to the section
|
|
titles in the list of Invariant Sections in the license notice of
|
|
the combined work.</P
|
|
><P
|
|
>In the combination, you must combine any sections entitled
|
|
"History" in the various original documents, forming one section
|
|
entitled "History"; likewise combine any sections entitled
|
|
"Acknowledgements", and any sections entitled "Dedications". You
|
|
must delete all sections entitled "Endorsements."</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-6"
|
|
></A
|
|
>C.7. COLLECTIONS OF DOCUMENTS</H1
|
|
><P
|
|
>You may make a collection consisting of the Document and
|
|
other documents released under this License, and replace the
|
|
individual copies of this License in the various documents with a
|
|
single copy that is included in the collection, provided that you
|
|
follow the rules of this License for verbatim copying of each of
|
|
the documents in all other respects.</P
|
|
><P
|
|
>You may extract a single document from such a collection,
|
|
and distribute it individually under this License, provided you
|
|
insert a copy of this License into the extracted document, and
|
|
follow this License in all other respects regarding verbatim
|
|
copying of that document.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-7"
|
|
></A
|
|
>C.8. AGGREGATION WITH INDEPENDENT WORKS</H1
|
|
><P
|
|
>A compilation of the Document or its derivatives with other
|
|
separate and independent documents or works, in or on a volume of
|
|
a storage or distribution medium, does not as a whole count as a
|
|
Modified Version of the Document, provided no compilation
|
|
copyright is claimed for the compilation. Such a compilation is
|
|
called an "aggregate", and this License does not apply to the
|
|
other self-contained works thus compiled with the Document, on
|
|
account of their being thus compiled, if they are not themselves
|
|
derivative works of the Document.</P
|
|
><P
|
|
>If the Cover Text requirement of section 3 is applicable to
|
|
these copies of the Document, then if the Document is less than
|
|
one quarter of the entire aggregate, the Document's Cover Texts
|
|
may be placed on covers that surround only the Document within the
|
|
aggregate. Otherwise they must appear on covers around the whole
|
|
aggregate.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-8"
|
|
></A
|
|
>C.9. TRANSLATION</H1
|
|
><P
|
|
>Translation is considered a kind of modification, so you may
|
|
distribute translations of the Document under the terms of section
|
|
4. Replacing Invariant Sections with translations requires
|
|
special permission from their copyright holders, but you may
|
|
include translations of some or all Invariant Sections in addition
|
|
to the original versions of these Invariant Sections. You may
|
|
include a translation of this License provided that you also
|
|
include the original English version of this License. In case of
|
|
a disagreement between the translation and the original English
|
|
version of this License, the original English version will
|
|
prevail.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-9"
|
|
></A
|
|
>C.10. TERMINATION</H1
|
|
><P
|
|
>You may not copy, modify, sublicense, or distribute the
|
|
Document except as expressly provided for under this License. Any
|
|
other attempt to copy, modify, sublicense or distribute the
|
|
Document is void, and will automatically terminate your rights
|
|
under this License. However, parties who have received copies, or
|
|
rights, from you under this License will not have their licenses
|
|
terminated so long as such parties remain in full
|
|
compliance.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-10"
|
|
></A
|
|
>C.11. FUTURE REVISIONS OF THIS LICENSE</H1
|
|
><P
|
|
>The Free Software Foundation may publish new, revised
|
|
versions of the GNU Free Documentation License from time to time.
|
|
Such new versions will be similar in spirit to the present
|
|
version, but may differ in detail to address new problems or
|
|
concerns. See <A
|
|
HREF="http://www.gnu.org/copyleft/"
|
|
TARGET="_top"
|
|
>http://www.gnu.org/copyleft/</A
|
|
>.</P
|
|
><P
|
|
>Each version of the License is given a distinguishing
|
|
version number. If the Document specifies that a particular
|
|
numbered version of this License "or any later version" applies to
|
|
it, you have the option of following the terms and conditions
|
|
either of that specified version or of any later version that has
|
|
been published (not as a draft) by the Free Software Foundation.
|
|
If the Document does not specify a version number of this License,
|
|
you may choose any version ever published (not as a draft) by the
|
|
Free Software Foundation.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="sect1"
|
|
><HR><H1
|
|
CLASS="sect1"
|
|
><A
|
|
NAME="gfdl-11"
|
|
></A
|
|
>C.12. How to use this License for your documents</H1
|
|
><P
|
|
>To use this License in a document you have written, include
|
|
a copy of the License in the document and put the following
|
|
copyright and license notices just after the title page:</P
|
|
><A
|
|
NAME="AEN865"
|
|
></A
|
|
><BLOCKQUOTE
|
|
CLASS="BLOCKQUOTE"
|
|
><P
|
|
> Copyright (c) YEAR YOUR NAME.
|
|
Permission is granted to copy, distribute and/or modify this document
|
|
under the terms of the GNU Free Documentation License, Version 1.1
|
|
or any later version published by the Free Software Foundation;
|
|
with the Invariant Sections being LIST THEIR TITLES, with the
|
|
Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
|
|
A copy of the license is included in the section entitled "GNU
|
|
Free Documentation License".
|
|
</P
|
|
></BLOCKQUOTE
|
|
><P
|
|
>If you have no Invariant Sections, write "with no Invariant
|
|
Sections" instead of saying which ones are invariant. If you have
|
|
no Front-Cover Texts, write "no Front-Cover Texts" instead of
|
|
"Front-Cover Texts being LIST"; likewise for Back-Cover
|
|
Texts.</P
|
|
><P
|
|
>If your document contains nontrivial examples of program
|
|
code, we recommend releasing these examples in parallel under your
|
|
choice of free software license, such as the GNU General Public
|
|
License, to permit their use in free software.</P
|
|
></DIV
|
|
></DIV
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |