From owner-cvs-src@FreeBSD.ORG Wed Nov 19 12:27:08 2003 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 171FE16A4CE; Wed, 19 Nov 2003 12:27:08 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0C63543F75; Wed, 19 Nov 2003 12:27:07 -0800 (PST) (envelope-from njl@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id hAJKR6XJ081210; Wed, 19 Nov 2003 12:27:06 -0800 (PST) (envelope-from njl@repoman.freebsd.org) Received: (from njl@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id hAJKR6IY081207; Wed, 19 Nov 2003 12:27:06 -0800 (PST) (envelope-from njl) Message-Id: <200311192027.hAJKR6IY081207@repoman.freebsd.org> From: Nate Lawson Date: Wed, 19 Nov 2003 12:27:06 -0800 (PST) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/dev/acpica acpi.c acpi_cpu.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Nov 2003 20:27:08 -0000 njl 2003/11/19 12:27:06 PST FreeBSD src repository Modified files: sys/dev/acpica acpi.c acpi_cpu.c Log: * 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[1] even though the actual data was in cpu_softc[0] (which is correct). * 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 Approved by: re (rwatson) Revision Changes Path 1.108 +1 -0 src/sys/dev/acpica/acpi.c 1.20 +203 -109 src/sys/dev/acpica/acpi_cpu.c