// SPDX-License-Identifier: GPL-2.0-or-later /* * AMD SoC Power Management Controller Driver Quirks * * Copyright (c) 2023, Advanced Micro Devices, Inc. * All Rights Reserved. * * Author: Mario Limonciello <[email protected]> */ #include <linux/dmi.h> #include <linux/io.h> #include <linux/ioport.h> #include "pmc.h" struct quirk_entry { … }; static struct quirk_entry quirk_s2idle_bug = …; static struct quirk_entry quirk_spurious_8042 = …; static const struct dmi_system_id fwbug_list[] = …; /* * Laptops that run a SMI handler during the D3->D0 transition that occurs * specifically when exiting suspend to idle which can cause * large delays during resume when the IOMMU translation layer is enabled (the default * behavior) for NVME devices: * * To avoid this firmware problem, skip the SMI handler on these machines before the * D0 transition occurs. */ static void amd_pmc_skip_nvme_smi_handler(u32 s2idle_bug_mmio) { … } void amd_pmc_process_restore_quirks(struct amd_pmc_dev *dev) { … } void amd_pmc_quirks_init(struct amd_pmc_dev *dev) { … }