GNU Linux-libre 4.14.266-gnu1
[releases.git] / arch / powerpc / platforms / pseries / offline_states.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _OFFLINE_STATES_H_
3 #define _OFFLINE_STATES_H_
4
5 /* Cpu offline states go here */
6 enum 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
14 extern enum cpu_state_vals get_cpu_current_state(int cpu);
15 extern void set_cpu_current_state(int cpu, enum cpu_state_vals state);
16 extern void set_preferred_offline_state(int cpu, enum cpu_state_vals state);
17 extern void set_default_offline_state(int cpu);
18 #else
19 static inline enum cpu_state_vals get_cpu_current_state(int cpu)
20 {
21         return CPU_STATE_ONLINE;
22 }
23
24 static inline void set_cpu_current_state(int cpu, enum cpu_state_vals state)
25 {
26 }
27
28 static inline void set_preferred_offline_state(int cpu, enum cpu_state_vals state)
29 {
30 }
31
32 static inline void set_default_offline_state(int cpu)
33 {
34 }
35 #endif
36
37 extern enum cpu_state_vals get_preferred_offline_state(int cpu);
38 #endif