aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/platform/x86/intel/pmc/spt.c
Commit message (Collapse)AuthorAgeFilesLines
* platform/x86/intel/pmc: Remove unnecessary declarations in headerXi Pardee2025-02-241-6/+6
| | | | | | | | | | | Remove unnecessary declarations in header file. Variable that are used by only one .c file are removed from header file and changed to be static in their corresponding .c file. Signed-off-by: Xi Pardee <[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]>
* platform/x86:intel/pmc: Move arch specific action to init functionXi Pardee2025-02-131-0/+21
| | | | | | | | | Move arch specific action from core.c to the init() function of spt.c. Signed-off-by: Xi Pardee <[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]>
* platform/x86/intel/pmc: Remove simple init functionsXi Pardee2025-02-101-6/+1
| | | | | | | | | | | | Remove simple init functions to avoid duplicate code. Store init function performing architecture specific action in the corresponding pmc_dev_info structure. Replace init function with pmc_dev_info structure in X86_MATCH_VFM() of core.c. Signed-off-by: Xi Pardee <[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]>
* platform/x86:intel/pmc: Create generic_core_init() for all platformsXi Pardee2025-02-101-12/+5
| | | | | | | | | | | | | | Create a generic_core_init() function for all architectures to reduce duplicate code in each architecture file. Create an info structure to catch the variations between each architecture and pass it to the generic init function. Convert all architectures to call the generic core init function. Signed-off-by: Xi Pardee <[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]>
* platform/x86:intel/pmc: Disable ACPI PM Timer disabling on Sky and Kaby LakeHans de Goede2024-10-061-2/+0
| | | | | | | | | | | | | | | | | | | | | | There have been multiple reports that the ACPI PM Timer disabling is causing Sky and Kaby Lake systems to hang on all suspend (s2idle, s3, hibernate) methods. Remove the acpi_pm_tmr_ctl_offset and acpi_pm_tmr_disable_bit settings from spt_reg_map to disable the ACPI PM Timer disabling on Sky and Kaby Lake to fix the hang on suspend. Fixes: e86c8186d03a ("platform/x86:intel/pmc: Enable the ACPI PM Timer to be turned off when suspended") Reported-by: Paul Menzel <[email protected]> Closes: https://lore.kernel.org/linux-pm/[email protected]/ Reported-by: Todd Brandt <[email protected]> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219346 Cc: Marek Maslanka <[email protected]> Signed-off-by: Hans de Goede <[email protected]> Tested-by: Todd Brandt <[email protected]> Tested-by: Paul Menzel <[email protected]> # Dell XPS 13 9360/0596KF Acked-by: Rafael J. Wysocki <[email protected]> Link: https://lore.kernel.org/r/[email protected]
* platform/x86:intel/pmc: Enable the ACPI PM Timer to be turned off when suspendedMarek Maslanka2024-09-061-0/+2
| | | | | | | | | | | | | | | | Allow to disable ACPI PM Timer on suspend and enable on resume. A disabled timer helps optimise power consumption when the system is suspended. On resume the timer is only reactivated if it was activated prior to suspend, so unless the ACPI PM timer is enabled in the BIOS, this won't change anything. The ACPI PM timer is used by Intel's iTCO/wdat_wdt watchdog to drive the watchdog, so it doesn't need to run during suspend. Signed-off-by: Marek Maslanka <[email protected]> Reviewed-by: Hans de Goede <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Daniel Lezcano <[email protected]>
* platform/x86:intel/pmc: Call pmc_get_low_power_modes from platform initXi Pardee2023-12-041-1/+9
| | | | | | | | | | | | | | In order to setup a table of low power mode requirements for Meteor Lake, pmc_core_get_low_power_modes() will need to be run from platform init code so that the enabled modes are known, allowing the use of the pmc_for_each_mode helper. Make the function global and call it from the platform init code. Signed-off-by: Xi Pardee <[email protected]> Signed-off-by: David E. Box <[email protected]> Reviewed-by: Ilpo Järvinen <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Hans de Goede <[email protected]>
* platform/x86:intel/pmc: Add support to handle multiple PMCsXi Pardee2023-06-201-2/+4
| | | | | | | | | | To support platforms with multiple PMCs, add a PMC device structure to support each PMC instance. Signed-off-by: Xi Pardee <[email protected]> Reviewed-by: Ilpo Järvinen <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Hans de Goede <[email protected]>
* platform/x86:intel/pmc: Combine core_init() and core_configure()Xi Pardee2023-06-201-1/+2
| | | | | | | | | | Combine core_init() and core_configure() functions to have a cleaner setup for platforms. Signed-off-by: Xi Pardee <[email protected]> Reviewed-by: Ilpo Järvinen <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Hans de Goede <[email protected]>
* platform/x86: intel/pmc: Relocate Sunrise Point PCH supportRajvi Jingar2022-11-211-0/+140
Create spt.c for Sunrise Point PCH specific structures and init(). This file supports Sky Lake and Kaby Lake platforms. There are no functional changes involved. Cc: David E Box <[email protected]> Reviewed-by: "David E. Box" <[email protected]> Signed-off-by: Rajvi Jingar <[email protected]> Signed-off-by: "David E. Box" <[email protected]> Link: https://lore.kernel.org/r/[email protected] Reviewed-by: Hans de Goede <[email protected]> Signed-off-by: Hans de Goede <[email protected]>