diff options
author | Hans de Goede <hdegoede@redhat.com> | 2024-01-02 13:13:01 +0100 |
---|---|---|
committer | Hans de Goede <hdegoede@redhat.com> | 2024-01-02 13:13:01 +0100 |
commit | 2ad815797ef01136091e502944e05b6794b9e5b8 (patch) | |
tree | b2ddef3601a2e5a71d581c377ff0979e8c4b962b /drivers/platform/x86/intel/pmc/core.h | |
parent | 27f2b08735c90d0f6bd5888edb58bbce7fcf22a8 (diff) | |
parent | 70681aa0746ae61d7668b9f651221fad5e30c71e (diff) |
Merge tag 'platform-drivers-x86-v6.7-6' into pdx86/for-next
Merge the 'platform-drivers-x86-v6.7-6' fixes into pdx86/for-next
so that the "Intel PMC GBE LTR regression" fixes can also be
applied to the new Arrow Lake and Lunar Lake platform support
code in pdx86/for-next .
Diffstat (limited to 'drivers/platform/x86/intel/pmc/core.h')
-rw-r--r-- | drivers/platform/x86/intel/pmc/core.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/platform/x86/intel/pmc/core.h b/drivers/platform/x86/intel/pmc/core.h index 2891d8d04fad..e2826e1ef90f 100644 --- a/drivers/platform/x86/intel/pmc/core.h +++ b/drivers/platform/x86/intel/pmc/core.h @@ -389,6 +389,7 @@ struct pmc { * @s0ix_counter: S0ix residency (step adjusted) * @num_lpm_modes: Count of enabled modes * @lpm_en_modes: Array of enabled modes from lowest to highest priority + * @suspend: Function to perform platform specific suspend * @resume: Function to perform platform specific resume * * pmc_dev contains info about power management controller device. @@ -406,6 +407,7 @@ struct pmc_dev { u64 s0ix_counter; int num_lpm_modes; int lpm_en_modes[LPM_MAX_NUM_MODES]; + void (*suspend)(struct pmc_dev *pmcdev); int (*resume)(struct pmc_dev *pmcdev); bool has_die_c6; @@ -565,7 +567,7 @@ extern const struct pmc_reg_map arl_pchs_reg_map; extern void pmc_core_get_tgl_lpm_reqs(struct platform_device *pdev); extern int pmc_core_ssram_get_lpm_reqs(struct pmc_dev *pmcdev); -extern int pmc_core_send_ltr_ignore(struct pmc_dev *pmcdev, u32 value); +int pmc_core_send_ltr_ignore(struct pmc_dev *pmcdev, u32 value, int ignore); int pmc_core_resume_common(struct pmc_dev *pmcdev); int get_primary_reg_base(struct pmc *pmc); @@ -586,6 +588,9 @@ int mtl_core_init(struct pmc_dev *pmcdev); int arl_core_init(struct pmc_dev *pmcdev); int lnl_core_init(struct pmc_dev *pmcdev); +void cnl_suspend(struct pmc_dev *pmcdev); +int cnl_resume(struct pmc_dev *pmcdev); + #define pmc_for_each_mode(i, mode, pmcdev) \ for (i = 0, mode = pmcdev->lpm_en_modes[i]; \ i < pmcdev->num_lpm_modes; \ |