mirror of
https://github.com/opnsense/src.git
synced 2026-04-21 06:07:31 -04:00
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 <h@schmalzbauer.de> Approved by: re (rwatson) |
||
|---|---|---|
| .. | ||
| Osd | ||
| acpi.c | ||
| acpi_acad.c | ||
| acpi_battery.c | ||
| acpi_button.c | ||
| acpi_cmbat.c | ||
| acpi_cpu.c | ||
| acpi_ec.c | ||
| acpi_isab.c | ||
| acpi_lid.c | ||
| acpi_package.c | ||
| acpi_pci.c | ||
| acpi_pci_link.c | ||
| acpi_pcib.c | ||
| acpi_pcib_acpi.c | ||
| acpi_pcib_pci.c | ||
| acpi_pcibvar.h | ||
| acpi_powerres.c | ||
| acpi_resource.c | ||
| acpi_thermal.c | ||
| acpi_timer.c | ||
| acpiio.h | ||
| acpivar.h | ||
| madt.h | ||