Module Name: src Committed By: jruoho Date: Sat Aug 14 17:50:57 UTC 2010
Modified Files: src/sys/dev/acpi: acpi_cpu_tstate.c Log Message: Simplify the FADT-based entry by "faking" (overriding) also the address. To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/dev/acpi/acpi_cpu_tstate.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/acpi/acpi_cpu_tstate.c diff -u src/sys/dev/acpi/acpi_cpu_tstate.c:1.6 src/sys/dev/acpi/acpi_cpu_tstate.c:1.7 --- src/sys/dev/acpi/acpi_cpu_tstate.c:1.6 Sat Aug 14 05:41:22 2010 +++ src/sys/dev/acpi/acpi_cpu_tstate.c Sat Aug 14 17:50:57 2010 @@ -1,4 +1,4 @@ -/* $NetBSD: acpi_cpu_tstate.c,v 1.6 2010/08/14 05:41:22 jruoho Exp $ */ +/* $NetBSD: acpi_cpu_tstate.c,v 1.7 2010/08/14 17:50:57 jruoho Exp $ */ /*- * Copyright (c) 2010 Jukka Ruohonen <jruoho...@iki.fi> @@ -27,7 +27,7 @@ * SUCH DAMAGE. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: acpi_cpu_tstate.c,v 1.6 2010/08/14 05:41:22 jruoho Exp $"); +__KERNEL_RCSID(0, "$NetBSD: acpi_cpu_tstate.c,v 1.7 2010/08/14 17:50:57 jruoho Exp $"); #include <sys/param.h> #include <sys/evcnt.h> @@ -40,8 +40,6 @@ #define _COMPONENT ACPI_BUS_COMPONENT ACPI_MODULE_NAME ("acpi_cpu_tstate") -#define ACPI_ADR_SPACE_FADT 0xFF - static void acpicpu_tstate_attach_print(struct acpicpu_softc *); static void acpicpu_tstate_attach_evcnt(struct acpicpu_softc *); static void acpicpu_tstate_detach_evcnt(struct acpicpu_softc *); @@ -555,9 +553,10 @@ */ sc->sc_tstate_control.reg_bitwidth = width; sc->sc_tstate_control.reg_bitoffset = offset; - sc->sc_tstate_control.reg_spaceid = ACPI_ADR_SPACE_FADT; + sc->sc_tstate_control.reg_spaceid = ACPI_ADR_SPACE_SYSTEM_IO; - CTASSERT(ACPI_ADR_SPACE_FADT > ACPI_ADR_SPACE_FIXED_HARDWARE); + sc->sc_tstate_status.reg_addr = sc->sc_object.ao_pblkaddr; + sc->sc_tstate_control.reg_addr = sc->sc_object.ao_pblkaddr; return AE_OK; } @@ -646,15 +645,11 @@ break; - case ACPI_ADR_SPACE_FADT: case ACPI_ADR_SPACE_SYSTEM_IO: addr = sc->sc_tstate_status.reg_addr; offset = sc->sc_tstate_status.reg_bitoffset; - if (method == ACPI_ADR_SPACE_FADT) - addr = sc->sc_object.ao_pblkaddr; - (void)AcpiOsReadPort(addr, &val, 8); val = (val >> offset) & 0x0F; @@ -760,15 +755,11 @@ break; - case ACPI_ADR_SPACE_FADT: case ACPI_ADR_SPACE_SYSTEM_IO: addr = sc->sc_tstate_control.reg_addr; offset = sc->sc_tstate_control.reg_bitoffset; - if (method == ACPI_ADR_SPACE_FADT) - addr = sc->sc_object.ao_pblkaddr; - val = (ts->ts_control & 0x0F) << offset; if (ts->ts_percent != 100 && (val & __BIT(4)) == 0) { @@ -789,9 +780,6 @@ addr = sc->sc_tstate_status.reg_addr; offset = sc->sc_tstate_status.reg_bitoffset; - if (method == ACPI_ADR_SPACE_FADT) - addr = sc->sc_object.ao_pblkaddr; - for (i = val = 0; i < ACPICPU_T_STATE_RETRY; i++) { (void)AcpiOsReadPort(addr, &val, 8);