The Linux Kernel Mailing List
 help / color / mirror / Atom feed
From: Marco Scardovi <scardracs@disroot.org>
To: bnatikar@amd.com
Cc: andriy.shevchenko@linux.intel.com, brgl@kernel.org,
	linusw@kernel.org, linux-acpi@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org,
	mario.limonciello@amd.com, scardracs@disroot.org,
	westeri@kernel.org
Subject: [PATCH v2 1/1] gpiolib: acpi: Add quirk for ASUS ROG Strix G16 G614 series
Date: Wed, 17 Jun 2026 20:50:13 +0200	[thread overview]
Message-ID: <20260617185318.11237-2-scardracs@disroot.org> (raw)
In-Reply-To: <20260617185318.11237-1-scardracs@disroot.org>

ASUS ROG Strix G16 G614 series laptops experience a long boot delay of
approximately 36 seconds.

On these laptops, the firmware leaves the touchpad's ActiveBoth GPIO
line asserted (logic low) at boot. Per the boot-time initial-state logic,
an ActiveBoth interrupt found low is replayed once to sync its initial state,
which calls the handler synchronously in the probe path. On these laptops
that interrupt handler is slow/hanging, so the synchronous call blocks for
~36s and stalls boot.

The touchpad itself is driven by the i2c-hid driver using a standard
GpioInt() resource defined in the touchpad device's _CRS method. The ACPI
event handler on pin 21 is distinct from this and is not required for the
touchpad's initialization or runtime operation.

Commit 3bb62e3f99a5 ("gpiolib: acpi: Only trigger ActiveBoth interrupts
on boot") restricted the boot-time replay to ActiveBoth interrupts that are
asserted (low). The pin on ASUS ROG Strix G16 G614 series laptops meets
exactly that condition, which is why it still triggers.

Fix the delay by adding a DMI quirk to set no_edge_events_on_boot to true
for the ASUS ROG Strix G16 G614 family. This prevents the boot-time
trigger of this ACPI event handler without affecting the touchpad driver
or disabling the handler for post-boot events.

Assisted-by: Antigravity:gemini-3.5-flash
Signed-off-by: Marco Scardovi <scardracs@disroot.org>
---
 drivers/gpio/gpiolib-acpi-quirks.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/drivers/gpio/gpiolib-acpi-quirks.c b/drivers/gpio/gpiolib-acpi-quirks.c
index a0116f004975..3cd4cd27808a 100644
--- a/drivers/gpio/gpiolib-acpi-quirks.c
+++ b/drivers/gpio/gpiolib-acpi-quirks.c
@@ -392,6 +392,21 @@ static const struct dmi_system_id gpiolib_acpi_quirks[] __initconst = {
 			.ignore_wake = "VEN_0488:00@355",
 		},
 	},
+	{
+		/*
+		 * ASUS ROG Strix G16 G614 series laptops experience a long boot
+		 * delay (approx. 36 seconds) because the touchpad's ActiveBoth
+		 * GPIO interrupt handler (TP_ATTN#) stalls/hangs during boot
+		 * initialization.
+		 */
+		.matches = {
+			DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."),
+			DMI_MATCH(DMI_PRODUCT_NAME, "ROG Strix G16 G614"),
+		},
+		.driver_data = &(struct acpi_gpiolib_dmi_quirk) {
+			.no_edge_events_on_boot = true,
+		},
+	},
 	{} /* Terminating entry */
 };
 
-- 
2.54.0


  reply	other threads:[~2026-06-17 18:53 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-06-16  9:08 [PATCH] gpiolib: acpi: Add quirk for ASUS ROG Strix G614 series Marco Scardovi
2026-06-16  9:31 ` Andy Shevchenko
2026-06-16  9:43   ` Marco Scardovi
2026-06-16  9:58     ` Andy Shevchenko
2026-06-16 10:24       ` Mika Westerberg
2026-06-16 10:58         ` Marco Scardovi
2026-06-16 11:04           ` Andy Shevchenko
2026-06-17  8:51             ` Marco Scardovi
2026-06-17  8:52             ` Marco Scardovi
2026-06-17 18:34 ` Basavaraj Natikar
2026-06-17 18:50   ` [PATCH v2 0/1] gpiolib: acpi: Add quirk for ASUS ROG Strix G16 " Marco Scardovi
2026-06-17 18:50     ` Marco Scardovi [this message]
2026-06-17 21:23     ` Armin Wolf
2026-06-17 23:14       ` Marco Scardovi
2026-06-18 13:16         ` Basavaraj Natikar
2026-06-18 14:35           ` Andy Shevchenko
2026-06-18 16:59             ` Marco Scardovi
2026-06-18 18:01               ` Andy Shevchenko
2026-06-18 18:07                 ` Marco Scardovi
2026-06-19 10:17                   ` Basavaraj Natikar
2026-06-19 10:28                     ` Marco Scardovi
2026-06-20  6:52                       ` Andy Shevchenko
2026-06-20  7:20                         ` Marco Scardovi
2026-06-21  7:58                           ` Mario Limonciello
2026-06-21 11:00     ` Hans de Goede
2026-06-21 12:38       ` Marco Scardovi
2026-06-24 14:42       ` Armin Wolf
2026-06-24 17:49         ` Marco Scardovi
2026-06-25  6:08           ` Andy Shevchenko

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260617185318.11237-2-scardracs@disroot.org \
    --to=scardracs@disroot.org \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=bnatikar@amd.com \
    --cc=brgl@kernel.org \
    --cc=linusw@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mario.limonciello@amd.com \
    --cc=westeri@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox