cvs commit: src/sys/dev/acpica acpi.c acpi_cpu.c
jhb at FreeBSD.org
Wed Nov 19 13:40:03 PST 2003
On 19-Nov-2003 Nate Lawson wrote:
> njl 2003/11/19 12:27:06 PST
> FreeBSD src repository
> Modified files:
> sys/dev/acpica acpi.c acpi_cpu.c
> * Add a DEVMETHOD for acpi so that child detach methods get called. Add
> an acpi_cpu method for shutdown that disables entry to acpi_cpu_idle
> and then IPIs/waits for threads to exit. This fixes a panic late in
> reboot in the SMP case.
> * In the !SMP case, don't use the processor id filled out by the MADT
> since there can only be one processor. This was causing a panic in
> acpi_cpu_idle if the id was 1 since the data was being dereferenced from
> cpu_softc even though the actual data was in cpu_softc (which is
> * Rework the initialization functions so that cpu_idle_hook is written
> late in the boot process.
> * Make the P_BLK, P_BLK_LEN, and cpu_cx_count all softc-local variables.
> This will help SMP boxes that have _CST or multiple P_BLKs. No such
> boxes are known at this time.
> * Always allocate the C1 state, even if the P_BLK is invalid. This means
> we will always take over idling if enabled. Remove the value -1 as
> valid for cx_lowest since this is redundant with machdep.cpu_idle_hlt.
> * Reduce locking for the throttle initialization case to around the write
> to the smi_cmd port. Add disabled code to write the CST_CNT. It will
> be enabled once _CST re-evaluation is tested (post 5.2R).
> Thank you: dfr, imp, jhb, marcel, peter
> Tested by: rwatson, Harald Schmalzbauer <h at schmalzbauer.de>
> Approved by: re (rwatson)
One minor suggestion btw. Could you fix the hw.acpi.cpu.cpu_cx_lowest
to use the "C1", "C2", and "C3" strings for its user-visible interface
instead of the direct integer? Setting the value to C2 is a bit more
intuitive than setting it to 1 to get C2.
John Baldwin <jhb at FreeBSD.org> <>< http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve!" - http://www.FreeBSD.org/
More information about the cvs-all