From: Lukas Wunner <lukas@wunner.de>
To: Victor Carreras <vicajilau@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>,
"Rafael J. Wysocki" <rafael@kernel.org>,
Mika Westerberg <mika.westerberg@linux.intel.com>,
linux-pci@vger.kernel.org, linux-acpi@vger.kernel.org,
linux-kernel@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH] PCI: Disable ACPI wakeup on MSI MS-1592 and MS-1594 dGPU root port
Date: Fri, 23 Oct 2026 10:11:22 +0200 [thread overview]
Message-ID: <atsWqqpFptswGQKy@wunner.de> (raw)
In-Reply-To: <179272791966.20251.3697951431087014523@gmail.com>
On Fri, Oct 23, 2026 at 05:58:39AM +0200, Victor Carreras wrote:
> +++ b/drivers/pci/quirks.c
> @@ -3941,6 +3941,56 @@ static void quirk_apple_poweroff_thunderbolt(struct pci_dev *dev)
> DECLARE_PCI_FIXUP_SUSPEND_LATE(PCI_VENDOR_ID_INTEL,
> PCI_DEVICE_ID_INTEL_CACTUS_RIDGE_4C,
> quirk_apple_poweroff_thunderbolt);
> +
> +/*
> + * On MSI Summit E16 Flip A12UCT (board MS-1592) and MSI Prestige 16 Studio
> + * A13VE / Summit E16 Flip A13VET (board MS-1594), the BIOS SSDT (MSI_NB /
> + * AdlP_Rvp) assigns the touchpad's GPIO interrupt pin (GPP_A20) as the PCIe
> + * wake GPIO (WAKG / P1WP) for the dGPU root port (\_SB.PC00.PEG0, 0000:00:06.0).
> + *
> + * When ACPI wakeup is armed on this root port via _DSW (setting WKEN = 1),
> + * subsequent D3cold transitions (\_SB.PC00.PEG0.PXP._OFF -> POFF) call
> + * \_SB.SHPO(WAKG, Zero), switching GPP_A20 ownership from GPIO driver mode
> + * to ACPI GPE mode and permanently freezing the I2C touchpad (ELAN0305:00).
> + *
> + * Disable ACPI wakeup on this root port so _DSW is not armed and WKEN
> + * remains zero during D3cold transitions.
> + */
> +static const struct dmi_system_id msi_peg0_no_wakeup_dmi_table[] = {
> + {
> + .ident = "MSI MS-1592",
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "Micro-Star International Co., Ltd."),
> + DMI_MATCH(DMI_BOARD_NAME, "MS-1592"),
> + },
> + },
> + {
> + .ident = "MSI MS-1594",
> + .matches = {
> + DMI_MATCH(DMI_BOARD_VENDOR, "Micro-Star International Co., Ltd."),
> + DMI_MATCH(DMI_BOARD_NAME, "MS-1594"),
> + },
> + },
> + { }
> +};
> +
> +static void quirk_msi_peg0_no_wakeup(struct pci_dev *dev)
> +{
> + struct acpi_device *adev = ACPI_COMPANION(&dev->dev);
> +
> + if (!adev || pci_dev_id(dev) != PCI_DEVID(0, PCI_DEVFN(6, 0)))
> + return;
> +
> + if (!dmi_check_system(msi_peg0_no_wakeup_dmi_table))
> + return;
> +
> + pci_info(dev, FW_BUG "Disabling ACPI wakeup to avoid touchpad GPIO (GPP_A20) takeover in D3cold\n");
> + device_wakeup_disable(&dev->dev);
> + device_set_wakeup_capable(&dev->dev, false);
> + adev->wakeup.flags.valid = 0;
> +}
> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0x464d, quirk_msi_peg0_no_wakeup);
> +DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, 0xa74d, quirk_msi_peg0_no_wakeup);
This is x86-specific but drivers/pci/quirks.c is used by all arches.
It should rather live e.g. in drivers/acpi/x86/utils.c.
Thanks,
Lukas
next prev parent reply other threads:[~2026-10-23 8:11 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-23 3:58 [PATCH] PCI: Disable ACPI wakeup on MSI MS-1592 and MS-1594 dGPU root port Victor Carreras
2026-10-23 4:19 ` sashiko-bot
2026-10-23 8:11 ` Lukas Wunner [this message]
2026-10-24 5:48 ` Victor Carreras
2026-10-24 5:47 ` [PATCH v2] ACPI: x86: Disable " Victor Carreras
2026-10-24 6:00 ` sashiko-bot
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=atsWqqpFptswGQKy@wunner.de \
--to=lukas@wunner.de \
--cc=bhelgaas@google.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=mika.westerberg@linux.intel.com \
--cc=rafael@kernel.org \
--cc=stable@vger.kernel.org \
--cc=vicajilau@gmail.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.