Project

General

Profile

Actions

Bug #1604

closed

ACPI C-states not working properly

Added by Johannes.Hofmann about 15 years ago. Updated over 14 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:

Description

Hi,

after the recent ACPI update, setting hw.acpi.cpu.cx_lowest=C3 caused
clock interrupt issues on my ThinkPad X60.
This is because the special handling that sets the clock interrupt
source to i8254 when C3 is enabled was no longer working. The type
field of struct acpi_cx in acpi_cpu_cstate.c was overwritten due to a
typo. The patch below fixes the issue.

Cheers,
Johannes

diff --git a/sys/dev/acpica5/acpi_cpu_cstate.c b/sys/dev/acpica5/acpi_cpu_cstate.c
index 21b9b92..2113f22 100644
--- a/sys/dev/acpica5/acpi_cpu_cstate.c
+++ b/sys/dev/acpica5/acpi_cpu_cstate.c
@ -641,7 +641,7 @ acpi_cpu_cx_cst(struct acpi_cpu_softc *sc)

/* Allocate the control register for C2 or C3. */
cx_ptr->rid = sc->cpu_parent->cpux_next_rid;
- acpi_PkgGas(sc->cpu_dev, pkg, 0, &cx_ptr->type, &cx_ptr->rid, &cx_ptr->p_lvlx,
+ acpi_PkgGas(sc->cpu_dev, pkg, 0, &cx_ptr->res_type, &cx_ptr->rid, &cx_ptr->p_lvlx,
RF_SHAREABLE);
if (cx_ptr->p_lvlx) {
sc->cpu_parent->cpux_next_rid++;
Actions

Also available in: Atom PDF