summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjkim <jkim@FreeBSD.org>2015-01-26 19:25:35 +0000
committerjkim <jkim@FreeBSD.org>2015-01-26 19:25:35 +0000
commit2c7d513fe440215e1d96d17cc49146e2ca42f3bc (patch)
treeb64dc0b6ac5bb1605ef617e9fa220c27c104ba16
parent0b8166b5c228de2cba0995e22c515a7d8ccd6abb (diff)
downloadFreeBSD-src-2c7d513fe440215e1d96d17cc49146e2ca42f3bc.zip
FreeBSD-src-2c7d513fe440215e1d96d17cc49146e2ca42f3bc.tar.gz
MFC: r277579
Revert r216942. This commit was premature and caused too many complaints.
-rw-r--r--sys/dev/acpica/acpi_ec.c16
1 files changed, 3 insertions, 13 deletions
diff --git a/sys/dev/acpica/acpi_ec.c b/sys/dev/acpica/acpi_ec.c
index 6e2f0dd..4f11385 100644
--- a/sys/dev/acpica/acpi_ec.c
+++ b/sys/dev/acpica/acpi_ec.c
@@ -623,7 +623,7 @@ EcGpeQueryHandler(void *Context)
struct acpi_ec_softc *sc = (struct acpi_ec_softc *)Context;
UINT8 Data;
ACPI_STATUS Status;
- int retry, sci_enqueued;
+ int retry;
char qxx[5];
ACPI_FUNCTION_TRACE((char *)(uintptr_t)__func__);
@@ -644,7 +644,6 @@ EcGpeQueryHandler(void *Context)
* that may arise from running the query from causing another query
* to be queued, we clear the pending flag only after running it.
*/
- sci_enqueued = sc->ec_sci_pend;
for (retry = 0; retry < 2; retry++) {
Status = EcCommand(sc, EC_COMMAND_QUERY);
if (ACPI_SUCCESS(Status))
@@ -684,14 +683,6 @@ EcGpeQueryHandler(void *Context)
device_printf(sc->ec_dev, "evaluation of query method %s failed: %s\n",
qxx, AcpiFormatException(Status));
}
-
- /* Reenable runtime GPE if its execution was deferred. */
- if (sci_enqueued) {
- Status = AcpiFinishGpe(sc->ec_gpehandle, sc->ec_gpebit);
- if (ACPI_FAILURE(Status))
- device_printf(sc->ec_dev, "reenabling runtime GPE failed: %s\n",
- AcpiFormatException(Status));
- }
}
/*
@@ -725,10 +716,9 @@ EcGpeHandler(ACPI_HANDLE GpeDevice, UINT32 GpeNumber, void *Context)
if ((EcStatus & EC_EVENT_SCI) && !sc->ec_sci_pend) {
CTR0(KTR_ACPI, "ec gpe queueing query handler");
Status = AcpiOsExecute(OSL_GPE_HANDLER, EcGpeQueryHandler, Context);
- if (ACPI_SUCCESS(Status)) {
+ if (ACPI_SUCCESS(Status))
sc->ec_sci_pend = TRUE;
- return (0);
- } else
+ else
printf("EcGpeHandler: queuing GPE query handler failed\n");
}
return (ACPI_REENABLE_GPE);
OpenPOWER on IntegriCloud