diff --git a/TODO b/TODO index 968324422..c6549f4ad 100644 --- a/TODO +++ b/TODO @@ -47,7 +47,6 @@ * linux-2.6-usb-pci-autosuspend.patch * linux-2.6-enable-more-pci-autosuspend.patch * linux-2.6-acpi-debug-infinite-loop.patch -* acpi-ec-add-delay-before-write.patch Responsible: mjg59 * linux-2.6-v4l-dvb-experimental.patch diff --git a/acpi-ec-add-delay-before-write.patch b/acpi-ec-add-delay-before-write.patch deleted file mode 100644 index f1cb50817..000000000 --- a/acpi-ec-add-delay-before-write.patch +++ /dev/null @@ -1,51 +0,0 @@ -https://bugzilla.kernel.org/show_bug.cgi?id=14733#c41 - -diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c -index 27e0b92..09fbb69 100644 ---- a/drivers/acpi/ec.c -+++ b/drivers/acpi/ec.c -@@ -226,6 +226,7 @@ static int ec_poll(struct acpi_ec *ec) - if (ec_transaction_done(ec)) - return 0; - } else { -+ msleep(1); - if (wait_event_timeout(ec->wait, - ec_transaction_done(ec), - msecs_to_jiffies(1))) -@@ -233,8 +234,8 @@ static int ec_poll(struct acpi_ec *ec) - } - advance_transaction(ec, acpi_ec_read_status(ec)); - } while (time_before(jiffies, delay)); -- if (acpi_ec_read_status(ec) & ACPI_EC_FLAG_IBF) -- break; -+// if (acpi_ec_read_status(ec) & ACPI_EC_FLAG_IBF) -+// break; - pr_debug(PREFIX "controller reset, restart transaction\n"); - spin_lock_irqsave(&ec->curr_lock, flags); - start_transaction(ec); -@@ -271,15 +272,24 @@ static int ec_check_ibf0(struct acpi_ec *ec) - return (status & ACPI_EC_FLAG_IBF) == 0; - } - -+/* try to clean input buffer with burst_disable transaction */ -+static int acpi_ec_clean_buffer(struct acpi_ec *ec) -+{ -+ struct transaction t = {.command = ACPI_EC_BURST_DISABLE, -+ .wdata = NULL, .rdata = NULL, -+ .wlen = 0, .rlen = 0}; -+ return acpi_ec_transaction_unlocked(ec, &t); -+} -+ - static int ec_wait_ibf0(struct acpi_ec *ec) - { - unsigned long delay = jiffies + msecs_to_jiffies(ec_delay); - /* interrupt wait manually if GPE mode is not active */ - while (time_before(jiffies, delay)) - if (wait_event_timeout(ec->wait, ec_check_ibf0(ec), - msecs_to_jiffies(1))) - return 0; -- return -ETIME; -+ return acpi_ec_clean_buffer(ec); - } - - static int acpi_ec_transaction(struct acpi_ec *ec, struct transaction *t) diff --git a/kernel.spec b/kernel.spec index 0ba2ff592..60498bcb9 100644 --- a/kernel.spec +++ b/kernel.spec @@ -657,7 +657,6 @@ Patch383: linux-2.6-defaults-aspm.patch Patch390: linux-2.6-defaults-acpi-video.patch Patch391: linux-2.6-acpi-video-dos.patch -Patch393: acpi-ec-add-delay-before-write.patch Patch394: linux-2.6-acpi-debug-infinite-loop.patch Patch450: linux-2.6-input-kill-stupid-messages.patch @@ -1257,7 +1256,6 @@ ApplyPatch linux-2.6-32bit-mmap-exec-randomization.patch # ACPI ApplyPatch linux-2.6-defaults-acpi-video.patch ApplyPatch linux-2.6-acpi-video-dos.patch -ApplyPatch acpi-ec-add-delay-before-write.patch ApplyPatch linux-2.6-acpi-debug-infinite-loop.patch # Various low-impact patches to aid debugging. @@ -2070,6 +2068,9 @@ fi # ||----w | # || || %changelog +* Fri Aug 26 2011 Dave Jones +- Drop acpi-ec-add-delay-before-write.patch (rhbz 733690) + * Fri Aug 26 2011 Josh Boyer - Linux 3.1-rc3-git5