mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-11 07:39:47 +00:00
x86/ACPI: CPPC: Move init_freq_invariance_cppc() into x86 CPPC
The init_freq_invariance_cppc code actually doesn't need the SMP functionality. So setting the CONFIG_SMP as the check condition for init_freq_invariance_cppc may cause the confusion to misunderstand the CPPC. And the x86 CPPC file is better space to store the CPPC related functions, while the init_freq_invariance_cppc is out of smpboot, that means, the CONFIG_SMP won't be mandatory condition any more. And It's more clear than before. Signed-off-by: Huang Rui <ray.huang@amd.com> [ rjw: Subject adjustment ] Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
parent
666f6ecf35
commit
eb5616d4ad
@ -225,12 +225,10 @@ static inline void init_freq_invariance(bool secondary, bool cppc_ready)
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_ACPI_CPPC_LIB) && defined(CONFIG_SMP)
|
||||
#ifdef CONFIG_ACPI_CPPC_LIB
|
||||
void init_freq_invariance_cppc(void);
|
||||
#define init_freq_invariance_cppc init_freq_invariance_cppc
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_ACPI_CPPC_LIB
|
||||
bool amd_set_max_freq_ratio(u64 *ratio);
|
||||
#else
|
||||
static inline bool amd_set_max_freq_ratio(u64 *ratio)
|
||||
|
@ -87,3 +87,17 @@ bool amd_set_max_freq_ratio(u64 *ratio)
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static DEFINE_MUTEX(freq_invariance_lock);
|
||||
|
||||
void init_freq_invariance_cppc(void)
|
||||
{
|
||||
static bool secondary;
|
||||
|
||||
mutex_lock(&freq_invariance_lock);
|
||||
|
||||
init_freq_invariance(secondary, true);
|
||||
secondary = true;
|
||||
|
||||
mutex_unlock(&freq_invariance_lock);
|
||||
}
|
||||
|
@ -83,10 +83,6 @@
|
||||
#include <asm/hw_irq.h>
|
||||
#include <asm/stackprotector.h>
|
||||
|
||||
#ifdef CONFIG_ACPI_CPPC_LIB
|
||||
#include <acpi/cppc_acpi.h>
|
||||
#endif
|
||||
|
||||
/* representing HT siblings of each logical CPU */
|
||||
DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_map);
|
||||
EXPORT_PER_CPU_SYMBOL(cpu_sibling_map);
|
||||
@ -2156,22 +2152,6 @@ void init_freq_invariance(bool secondary, bool cppc_ready)
|
||||
}
|
||||
}
|
||||
|
||||
#ifdef CONFIG_ACPI_CPPC_LIB
|
||||
static DEFINE_MUTEX(freq_invariance_lock);
|
||||
|
||||
void init_freq_invariance_cppc(void)
|
||||
{
|
||||
static bool secondary;
|
||||
|
||||
mutex_lock(&freq_invariance_lock);
|
||||
|
||||
init_freq_invariance(secondary, true);
|
||||
secondary = true;
|
||||
|
||||
mutex_unlock(&freq_invariance_lock);
|
||||
}
|
||||
#endif
|
||||
|
||||
static void disable_freq_invariance_workfn(struct work_struct *work)
|
||||
{
|
||||
static_branch_disable(&arch_scale_freq_key);
|
||||
|
Loading…
x
Reference in New Issue
Block a user