Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
| 2 | #ifndef _ASM_ARM_TOPOLOGY_H |
| 3 | #define _ASM_ARM_TOPOLOGY_H |
| 4 | |
| 5 | #ifdef CONFIG_ARM_CPU_TOPOLOGY |
| 6 | |
| 7 | #include <linux/cpumask.h> |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 8 | #include <linux/arch_topology.h> |
| 9 | |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 10 | /* big.LITTLE switcher is incompatible with frequency invariance */ |
| 11 | #ifndef CONFIG_BL_SWITCHER |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 12 | /* Replace task scheduler's default frequency-invariant accounting */ |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 13 | #define arch_set_freq_scale topology_set_freq_scale |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 14 | #define arch_scale_freq_capacity topology_get_freq_scale |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 15 | #define arch_scale_freq_invariant topology_scale_freq_invariant |
| 16 | #endif |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 17 | |
| 18 | /* Replace task scheduler's default cpu-invariant accounting */ |
| 19 | #define arch_scale_cpu_capacity topology_get_cpu_scale |
| 20 | |
David Brazdil | 0f672f6 | 2019-12-10 10:32:29 +0000 | [diff] [blame] | 21 | /* Enable topology flag updates */ |
| 22 | #define arch_update_cpu_topology topology_update_cpu_topology |
| 23 | |
Olivier Deprez | 157378f | 2022-04-04 15:47:50 +0200 | [diff] [blame^] | 24 | /* Replace task scheduler's default thermal pressure API */ |
| 25 | #define arch_scale_thermal_pressure topology_get_thermal_pressure |
| 26 | #define arch_set_thermal_pressure topology_set_thermal_pressure |
| 27 | |
Andrew Scull | b4b6d4a | 2019-01-02 15:54:55 +0000 | [diff] [blame] | 28 | #else |
| 29 | |
| 30 | static inline void init_cpu_topology(void) { } |
| 31 | static inline void store_cpu_topology(unsigned int cpuid) { } |
| 32 | |
| 33 | #endif |
| 34 | |
| 35 | #include <asm-generic/topology.h> |
| 36 | |
| 37 | #endif /* _ASM_ARM_TOPOLOGY_H */ |