mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
66 lines
1.7 KiB
66 lines
1.7 KiB
/* SPDX-License-Identifier: GPL-2.0 */ |
|
#ifndef _ASM_X86_CPU_H |
|
#define _ASM_X86_CPU_H |
|
|
|
#include <linux/device.h> |
|
#include <linux/cpu.h> |
|
#include <linux/topology.h> |
|
#include <linux/nodemask.h> |
|
#include <linux/percpu.h> |
|
|
|
#ifdef CONFIG_SMP |
|
|
|
extern void prefill_possible_map(void); |
|
|
|
#else /* CONFIG_SMP */ |
|
|
|
static inline void prefill_possible_map(void) {} |
|
|
|
#define cpu_physical_id(cpu) boot_cpu_physical_apicid |
|
#define cpu_acpi_id(cpu) 0 |
|
#define safe_smp_processor_id() 0 |
|
|
|
#endif /* CONFIG_SMP */ |
|
|
|
struct x86_cpu { |
|
struct cpu cpu; |
|
}; |
|
|
|
#ifdef CONFIG_HOTPLUG_CPU |
|
extern int arch_register_cpu(int num); |
|
extern void arch_unregister_cpu(int); |
|
extern void start_cpu0(void); |
|
#ifdef CONFIG_DEBUG_HOTPLUG_CPU0 |
|
extern int _debug_hotplug_cpu(int cpu, int action); |
|
#endif |
|
#endif |
|
|
|
int mwait_usable(const struct cpuinfo_x86 *); |
|
|
|
unsigned int x86_family(unsigned int sig); |
|
unsigned int x86_model(unsigned int sig); |
|
unsigned int x86_stepping(unsigned int sig); |
|
#ifdef CONFIG_CPU_SUP_INTEL |
|
extern void __init cpu_set_core_cap_bits(struct cpuinfo_x86 *c); |
|
extern void switch_to_sld(unsigned long tifn); |
|
extern bool handle_user_split_lock(struct pt_regs *regs, long error_code); |
|
extern bool handle_guest_split_lock(unsigned long ip); |
|
#else |
|
static inline void __init cpu_set_core_cap_bits(struct cpuinfo_x86 *c) {} |
|
static inline void switch_to_sld(unsigned long tifn) {} |
|
static inline bool handle_user_split_lock(struct pt_regs *regs, long error_code) |
|
{ |
|
return false; |
|
} |
|
|
|
static inline bool handle_guest_split_lock(unsigned long ip) |
|
{ |
|
return false; |
|
} |
|
#endif |
|
#ifdef CONFIG_IA32_FEAT_CTL |
|
void init_ia32_feat_ctl(struct cpuinfo_x86 *c); |
|
#else |
|
static inline void init_ia32_feat_ctl(struct cpuinfo_x86 *c) {} |
|
#endif |
|
#endif /* _ASM_X86_CPU_H */
|
|
|