diff options
| author | Mario Limonciello <[email protected]> | 2025-07-24 18:51:08 +0000 |
|---|---|---|
| committer | Ilpo Järvinen <[email protected]> | 2025-08-12 12:02:31 +0000 |
| commit | 5b9e07551faa7bb2f26cb039cc6e8d00bc4d0831 (patch) | |
| tree | 868e4d267b9e9d87238483ccd8643a9eb68b560e /drivers/platform/x86/amd/pmc/pmc.c | |
| parent | platform/x86: dell-smbios-wmi: Stop touching WMI device ID (diff) | |
| download | kernel-5b9e07551faa7bb2f26cb039cc6e8d00bc4d0831.tar.gz kernel-5b9e07551faa7bb2f26cb039cc6e8d00bc4d0831.zip | |
platform/x86/amd: pmc: Drop SMU F/W match for Cezanne
Chris reported that even on a BIOS that has a new enough SMU F/W
version there is still a spurious IRQ1. Although the solution was
added to SMU F/W 64.66.0 it turns out there needs to be a matching
SBIOS change to activate it. Thus Linux shouldn't be avoiding the
IRQ1 workaround on newer SMU F/W because there is no indication the
BIOS change is in place.
Drop the match for 64.66.0+ and instead match all RN/CZN/BRC (they
all share same SMU F/W). Adjust the quirk infrastructure to allow
quirking the workaround on or off and also adjust existing quirks
to match properly.
Unfortunately this may cause some systems that did have the SBIOS
change in place to regress in keyboard wakeup but we don't have a
way to know. If a user reports a keyboard wakeup regression they can
run with amd_pmc.disable_workarounds=1 to deactivate the workaround
and share DMI data so that their system can be quirked not to use
the workaround in the upstream kernel.
Reported-by: Chris Bainbridge <[email protected]>
Closes: https://gitlab.freedesktop.org/drm/amd/-/issues/4449
Tested-by: Chris Bainbridge <[email protected]>
Signed-off-by: Mario Limonciello <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Reviewed-by: Ilpo Järvinen <[email protected]>
Signed-off-by: Ilpo Järvinen <[email protected]>
Diffstat (limited to 'drivers/platform/x86/amd/pmc/pmc.c')
| -rw-r--r-- | drivers/platform/x86/amd/pmc/pmc.c | 13 |
1 files changed, 0 insertions, 13 deletions
diff --git a/drivers/platform/x86/amd/pmc/pmc.c b/drivers/platform/x86/amd/pmc/pmc.c index 0b9b23eb7c2c..bd318fd02ccf 100644 --- a/drivers/platform/x86/amd/pmc/pmc.c +++ b/drivers/platform/x86/amd/pmc/pmc.c @@ -530,19 +530,6 @@ static int amd_pmc_get_os_hint(struct amd_pmc_dev *dev) static int amd_pmc_wa_irq1(struct amd_pmc_dev *pdev) { struct device *d; - int rc; - - /* cezanne platform firmware has a fix in 64.66.0 */ - if (pdev->cpu_id == AMD_CPU_ID_CZN) { - if (!pdev->major) { - rc = amd_pmc_get_smu_version(pdev); - if (rc) - return rc; - } - - if (pdev->major > 64 || (pdev->major == 64 && pdev->minor > 65)) - return 0; - } d = bus_find_device_by_name(&serio_bus, NULL, "serio0"); if (!d) |
