ACPI: EC: Don't expect interrupt after last read
There is no interrupt after last read according to spec, so
don't set bit that we are expecting one.
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 08fbe62..5ce90ce 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -228,7 +228,9 @@
command);
goto end;
}
- set_bit(EC_FLAGS_WAIT_GPE, &ec->flags);
+ /* Don't expect GPE after last read */
+ if (rdata_len > 1)
+ set_bit(EC_FLAGS_WAIT_GPE, &ec->flags);
*(rdata++) = acpi_ec_read_data(ec);
}
end: