HomeFreeBSD

Use polling spin loops for timeouts during early boot.

Description

Use polling spin loops for timeouts during early boot.

Some ACPI operations such as mutex acquires and event waits accept a
timeout. The ACPI OSD layer implements these timeouts by using regular
sleep timeouts. However, this doesn't work during early boot before
event timers are setup. Instead, use polling combined with DELAY()
to spin.

This fixes booting on upcoming Intel systems with Kaby Lake processors.

Tested by: "Jeffrey E Pieper" <jeffrey.e.pieper@intel.com>
Reviewed by: jimharris
MFC after: 1 week

Details

Provenance
jhbAuthored on
Reviewer
jimharris
Parents
rS299976: [bwn] check DUALPHY; add BCM4322 to the don't-override list.
Branches
Unknown
Tags
Unknown