[coreboot-gerrit] Patch set updated for coreboot: 04f152f mainboard/google/parrot: fix ACPI interrupt storm on lid switch change

Andrew Litt (ajlitt@splunge.net) gerrit at coreboot.org
Wed Sep 10 20:29:04 CEST 2014


Andrew Litt (ajlitt at splunge.net) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/6858

-gerrit

commit 04f152f863b476cb93e39c7fa8e71ec211f62009
Author: Andrew Litt <ajlitt at splunge.net>
Date:   Tue Sep 9 10:49:19 2014 -0500

    mainboard/google/parrot: fix ACPI interrupt storm on lid switch change
    
    This fixes the ACPI interrupt storm on Parrot that happens when
    closing the lid or entering suspend by lid close (seen in
    /sys/firmware/acpi/interrupts/gpe1F). This patch inverts the interrupt
    trigger level every time the interrupt is received so that it doesn't fire
    until the next state change.  http://askubuntu.com/questions/310196
    is a good example of what this is trying to solve.
    
    Change-Id: I8b095914e9330c3217a4ceb058613fa952f4a234
    Signed-off-by: Andrew Litt <ajlitt at splunge.net>
---
 src/mainboard/google/parrot/acpi/mainboard.asl | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/mainboard/google/parrot/acpi/mainboard.asl b/src/mainboard/google/parrot/acpi/mainboard.asl
index 4ab9733..503e44b 100644
--- a/src/mainboard/google/parrot/acpi/mainboard.asl
+++ b/src/mainboard/google/parrot/acpi/mainboard.asl
@@ -22,6 +22,13 @@
 Scope (\_GPE) {
 	Method(_L1F, 0x0, NotSerialized)
 	{
+		/*
+		 * Invert the interrupt level bit for the lid GPIO
+		 * so we don't get another _SB.LID0 until the state
+		 * changes again. GIV1 is the interrupt level control
+		 * register for GPIO bits 15:8
+		 */
+		Xor(GIV1, 0x80, GIV1)
 		Notify(\_SB.LID0,0x80)
 	}
 }



More information about the coreboot-gerrit mailing list