diff options
author | avg <avg@FreeBSD.org> | 2010-09-13 09:51:24 +0000 |
---|---|---|
committer | avg <avg@FreeBSD.org> | 2010-09-13 09:51:24 +0000 |
commit | c294549cbdf23598262287ed99ca110462581cfa (patch) | |
tree | 719a176b8a34b5570182427346ae3a09b0457850 /sys/dev/acpica | |
parent | ac1cdddd7f0b7eeb632294a9c2cdbf313f17b95d (diff) | |
download | FreeBSD-src-c294549cbdf23598262287ed99ca110462581cfa.zip FreeBSD-src-c294549cbdf23598262287ed99ca110462581cfa.tar.gz |
acpi_cpu: do not apply P_LVLx_LAT rules to latencies returned by _CST
ACPI specification sates that if P_LVL2_LAT > 100, then a system doesn't
support C2; if P_LVL3_LAT > 1000, then C3 is not supported.
But there are no such rules for Cx state data returned by _CST. If a
state is not supported it should not be included into the return
package. In other words, any latency value returned by _CST is valid,
it's up to the OS and/or user to decide whether to use it.
Submitted by: nork
Suggested by: mav
MFC after: 1 week
Diffstat (limited to 'sys/dev/acpica')
-rw-r--r-- | sys/dev/acpica/acpi_cpu.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/sys/dev/acpica/acpi_cpu.c b/sys/dev/acpica/acpi_cpu.c index fabbee9..9f0ca89 100644 --- a/sys/dev/acpica/acpi_cpu.c +++ b/sys/dev/acpica/acpi_cpu.c @@ -690,19 +690,11 @@ acpi_cpu_cx_cst(struct acpi_cpu_softc *sc) sc->cpu_cx_count++; continue; case ACPI_STATE_C2: - if (cx_ptr->trans_lat > 100) { - ACPI_DEBUG_PRINT((ACPI_DB_INFO, - "acpi_cpu%d: C2[%d] not available.\n", - device_get_unit(sc->cpu_dev), i)); - continue; - } sc->cpu_non_c3 = i; break; case ACPI_STATE_C3: default: - if (cx_ptr->trans_lat > 1000 || - (cpu_quirks & CPU_QUIRK_NO_C3) != 0) { - + if ((cpu_quirks & CPU_QUIRK_NO_C3) != 0) { ACPI_DEBUG_PRINT((ACPI_DB_INFO, "acpi_cpu%d: C3[%d] not available.\n", device_get_unit(sc->cpu_dev), i)); |