I have just committed some changes to the way that ACPI works in
current. This has an impact on all -current users, so please
take a few seconds to read this and feel free to ask questions.
The loader now detects ACPI in your system, and loads the ACPI
module if it is present. This has major ramifications for the
device probe and attach phases of system initialisation.
- Root PCI bridges are detected using ACPI.
- PCI interrupt routing is now performed using ACPI.
- The PnP BIOS is disabled and onboard peripherals are detected
using ACPI, and attach to ACPI and not isa.
- System-owned resources are detected and reserved by ACPI.
- The default system timecounter will be the ACPI timer.
There are other changes, these are just the really big ones.
I'll try to answer some of the FAQs here, to keep the discussion
ACPI Integration Mini-FAQ
- Who died and left you in charge?
- Why are you making such major changes?
ACPI is the direction that the Intel/PC architecture is taking. The
dominant operating system family on this platform uses ACPI heavily
and has done so for the last five years. We have to follow suit or
fall badly behind. In addition, ACPI brings us functionality that
we have not had in the past. Much discussion on ACPI has been had,
and the current direction reflects such consensus as has been reached
- Help! ACPI crashes my system.
You can disable ACPI by unsetting the 'acpi_load' variable in the
loader (for temporary testing) or by setting
in /boot/device.hints. If you find that you need to do this, please
let the FreeBSD ACPI developers ([EMAIL PROTECTED]) know so that
we can investigate the problem.
- The ACPI module is huge! Do I have to use it?
No, you don't. But you may lose functionality if you choose to
disable it. The system's legacy probe mechanisms have not been
affected by these changes, and we will continue to support legacy
platforms for the forseeable future.
- Where can I find more information on ACPI?
The ACPI homepage is at
The Intel ACPI Component Architecture homepage is at
The acpi(4) manpage offers an overview of the debugging options for the
Intel ACPI CA code (the core of the ACPI subsystem). An acpi(9)
manpage is under development.
- Can I compile ACPI into the kernel for debugging?
Yes. See NOTES for details on this. Note that you must disable
loading of the ACPI module to avoid confusing the kernel linker if
you do this.
- Is ACPI compatible with APM?
No. You must disable APM if you are using ACPI.
- Does this change make FreeBSD a "PnP OS"?
Not entirely. You may still need to set BIOS "PnP OS" to "NO" in
your BIOS setup.
- Do I need to make any other BIOS adjustments?
You should update your BIOS to the latest version available for your
system. If your system has an option to enable ACPI, it should be
enabled (typically under 'power management').
- Can ACPI damage my system?
Under ACPI, the operating system is meant to be responsible for
thermal management of the system. Our thermal management code has
only been lightly tested, and many systems still ignore the OS and
perform their own thermal management. You should monitor your system
for any unexpected behaviour when using ACPI, not just overheating.
- I pushed the power button, and my system shut down cleanly!
Yes. ACPI brings some useful new features. 8)
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message