Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef _OFFLINE_STATES_H_
3#define _OFFLINE_STATES_H_
4
5/* Cpu offline states go here */
6enum cpu_state_vals {
7 CPU_STATE_OFFLINE,
8 CPU_STATE_INACTIVE,
9 CPU_STATE_ONLINE,
10 CPU_MAX_OFFLINE_STATES
11};
12
13#ifdef CONFIG_HOTPLUG_CPU
14extern enum cpu_state_vals get_cpu_current_state(int cpu);
15extern void set_cpu_current_state(int cpu, enum cpu_state_vals state);
16extern void set_preferred_offline_state(int cpu, enum cpu_state_vals state);
17extern void set_default_offline_state(int cpu);
18#else
19static inline enum cpu_state_vals get_cpu_current_state(int cpu)
20{
21 return CPU_STATE_ONLINE;
22}
23
24static inline void set_cpu_current_state(int cpu, enum cpu_state_vals state)
25{
26}
27
28static inline void set_preferred_offline_state(int cpu, enum cpu_state_vals state)
29{
30}
31
32static inline void set_default_offline_state(int cpu)
33{
34}
35#endif
36
37extern enum cpu_state_vals get_preferred_offline_state(int cpu);
38#endif