From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 7642B22AE76; Tue, 24 Jun 2025 04:12:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750738344; cv=none; b=LZH723D0McmILGrBJkA3HPC9cuJgjh6KehSv1o5c/mFqJtDsE0Aud8B487U51uQE+HRSIokmz5WhlsENveOCGW7yRdrzRvdX+4qrXhoprSnFekBYpBRMb7+SzthRNdCVYQpGTHPP8yutrdYdT/GR7fgtM1uoGzDCNBC1jR42ajY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1750738344; c=relaxed/simple; bh=/iRNU+EkQaTv8q7sY8RusloUPQRZmgHJuNsbZTVYgmE=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version:Content-Type; b=Be67bpzva19odYfCLmLBnn4ugFtcewBpPpUjnl22EFCTryOUkRf+x5vGNe7ASS5HqcAHwVpf0GNNFsNKhwz4mSYw8ItK9shYyUtAs7+zSaQy4dPA8k3s0gimopxXE3hsP0x0GS694ATSs1simyPKzoDXzC3eGC055p8TEZwdZUI= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=gr2299es; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="gr2299es" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0E69AC4CEE3; Tue, 24 Jun 2025 04:12:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1750738344; bh=/iRNU+EkQaTv8q7sY8RusloUPQRZmgHJuNsbZTVYgmE=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=gr2299esk9wiXMj0hnl+LQQ4lT+B3jMnB4qaARs1qvndLzKTJ7qbP62Oy3E9irXfi PgHYS3omAAKlZ3ASVzlT0K9TGLQDyI7+IRj9qky2goY8bAhPVpx/7wzzyZhzGnAD+G BMpDhBTHMXZwtNB7RqJH2eCLIPYoLzUVcz1etwRBYwk5PbQgsVPOENBTkoXpzCwzr2 a7RNp1dePTAydFsj9i3eEo2BP3Boe6EIgYUjMC3nU2BG6W8ZcPLO4nuTnZQJ7y6f8m OCj3IyR92IHPayds6yGojqPCSzV/s6iGjXX9BRuZSmxnrTp+/la5GiKu7Csf90IXx8 Sa47bUfdL3yvQ== From: Sasha Levin To: patches@lists.linux.dev, stable@vger.kernel.org Cc: Mario Limonciello , Raoul , =?UTF-8?q?Ilpo=20J=C3=A4rvinen?= , Sasha Levin , Shyam-sundar.S-k@amd.com, platform-driver-x86@vger.kernel.org Subject: [PATCH AUTOSEL 6.6 08/18] platform/x86/amd/pmc: Add PCSpecialist Lafite Pro V 14M to 8042 quirks list Date: Tue, 24 Jun 2025 00:12:04 -0400 Message-Id: <20250624041214.84135-8-sashal@kernel.org> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20250624041214.84135-1-sashal@kernel.org> References: <20250624041214.84135-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-stable: review X-Patchwork-Hint: Ignore X-stable-base: Linux 6.6.94 Content-Transfer-Encoding: 8bit From: Mario Limonciello [ Upstream commit 9ba75ccad85708c5a484637dccc1fc59295b0a83 ] Every other s2idle cycle fails to reach hardware sleep when keyboard wakeup is enabled. This appears to be an EC bug, but the vendor refuses to fix it. It was confirmed that turning off i8042 wakeup avoids ths issue (albeit keyboard wakeup is disabled). Take the lesser of two evils and add it to the i8042 quirk list. Reported-by: Raoul Closes: https://bugzilla.kernel.org/show_bug.cgi?id=220116 Tested-by: Raoul Signed-off-by: Mario Limonciello Link: https://lore.kernel.org/r/20250611203341.3733478-1-superm1@kernel.org Reviewed-by: Ilpo Järvinen Signed-off-by: Ilpo Järvinen Signed-off-by: Sasha Levin --- **YES** This commit should be backported to stable kernel trees. Here's the extensive explanation based on the code analysis: ## Key Reasons for Backporting: ### 1. **Bug Fix for Real Hardware Issue** The commit fixes a legitimate suspend/resume bug on the PCSpecialist Lafite Pro V 14M laptop where: - Every other s2idle cycle fails to reach hardware sleep when keyboard wakeup is enabled - This is confirmed to be an EC (Embedded Controller) firmware bug - The issue causes spurious wakeups, severely affecting power management ### 2. **Simple, Contained Fix** The change is minimal and low-risk: ```diff + { + .ident = "PCSpecialist Lafite Pro V 14M", + .driver_data = &quirk_spurious_8042, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "PCSpecialist"), + DMI_MATCH(DMI_PRODUCT_NAME, "Lafite Pro V 14M"), + } + }, ``` It only adds a DMI match entry to an existing quirk list, using an already-established mechanism (`quirk_spurious_8042`). ### 3. **Follows Established Pattern** This commit follows the exact same pattern as previous backported commits: - Commit `a55bdad5dfd1` (Framework 13) - BACKPORTED - Commit `0887817e4953` (MECHREVO Wujie 14XA) - BACKPORTED Both use the same `quirk_spurious_8042` mechanism and were deemed suitable for stable. ### 4. **Hardware-Specific Fix** The fix is: - Only activated for specific hardware (DMI matching) - Cannot affect other systems - Has zero risk of regression on non-affected hardware ### 5. **User Impact** >From the commit message and bug report: - The vendor refuses to fix the EC firmware bug - Without this fix, users experience broken suspend/resume behavior - This is the "lesser of two evils" - disabling keyboard wakeup vs. having unreliable suspend ### 6. **Implementation Details** The quirk works by setting `dev->disable_8042_wakeup = true` in `amd_pmc_quirks_init()`, which triggers `amd_pmc_wa_irq1()` during suspend to: ```c disable_irq_wake(1); device_set_wakeup_enable(d, false); ``` This disables IRQ1 (keyboard) as a wakeup source, preventing the spurious wakeups. ### 7. **Tested Solution** The commit includes: - Reported-by tag - Tested-by tag - Reference to bug report (https://bugzilla.kernel.org/show_bug.cgi?id=220116) This indicates the fix has been verified to resolve the issue on affected hardware. The commit meets all criteria for stable backporting: it fixes a real bug affecting users, is minimal in scope, has no risk of regression, and follows the established pattern of similar fixes that have already been backported. drivers/platform/x86/amd/pmc/pmc-quirks.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/platform/x86/amd/pmc/pmc-quirks.c b/drivers/platform/x86/amd/pmc/pmc-quirks.c index 2e3f6fc67c568..7ed12c1d3b34c 100644 --- a/drivers/platform/x86/amd/pmc/pmc-quirks.c +++ b/drivers/platform/x86/amd/pmc/pmc-quirks.c @@ -224,6 +224,15 @@ static const struct dmi_system_id fwbug_list[] = { DMI_MATCH(DMI_BOARD_NAME, "WUJIE14-GX4HRXL"), } }, + /* https://bugzilla.kernel.org/show_bug.cgi?id=220116 */ + { + .ident = "PCSpecialist Lafite Pro V 14M", + .driver_data = &quirk_spurious_8042, + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "PCSpecialist"), + DMI_MATCH(DMI_PRODUCT_NAME, "Lafite Pro V 14M"), + } + }, {} }; -- 2.39.5