aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/ec.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/ec.c')
-rw-r--r--drivers/acpi/ec.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 874f912962c4..8c5d7df7d343 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -213,7 +213,7 @@ static int acpi_ec_intr_wait(union acpi_ec *ec, unsigned int event)
213 213
214 switch (event) { 214 switch (event) {
215 case ACPI_EC_EVENT_IBE: 215 case ACPI_EC_EVENT_IBE:
216 if (~acpi_ec_read_status(ec) & event) { 216 if (~acpi_ec_read_status(ec) & ACPI_EC_FLAG_IBF) {
217 ec->intr.expect_event = 0; 217 ec->intr.expect_event = 0;
218 return 0; 218 return 0;
219 } 219 }
@@ -782,12 +782,15 @@ static u32 acpi_ec_gpe_intr_handler(void *data)
782 case ACPI_EC_EVENT_OBF: 782 case ACPI_EC_EVENT_OBF:
783 if (!(value & ACPI_EC_FLAG_OBF)) 783 if (!(value & ACPI_EC_FLAG_OBF))
784 break; 784 break;
785 ec->intr.expect_event = 0;
786 wake_up(&ec->intr.wait);
787 break;
785 case ACPI_EC_EVENT_IBE: 788 case ACPI_EC_EVENT_IBE:
786 if ((value & ACPI_EC_FLAG_IBF)) 789 if ((value & ACPI_EC_FLAG_IBF))
787 break; 790 break;
788 ec->intr.expect_event = 0; 791 ec->intr.expect_event = 0;
789 wake_up(&ec->intr.wait); 792 wake_up(&ec->intr.wait);
790 return ACPI_INTERRUPT_HANDLED; 793 break;
791 default: 794 default:
792 break; 795 break;
793 } 796 }