hc
2023-12-11 d2ccde1c8e90d38cee87a1b0309ad2827f3fd30d
kernel/arch/arm64/include/asm/topology.h
....@@ -4,29 +4,6 @@
44
55 #include <linux/cpumask.h>
66
7
-struct cpu_topology {
8
- int thread_id;
9
- int core_id;
10
- int package_id;
11
- int llc_id;
12
- cpumask_t thread_sibling;
13
- cpumask_t core_sibling;
14
- cpumask_t llc_sibling;
15
-};
16
-
17
-extern struct cpu_topology cpu_topology[NR_CPUS];
18
-
19
-#define topology_physical_package_id(cpu) (cpu_topology[cpu].package_id)
20
-#define topology_core_id(cpu) (cpu_topology[cpu].core_id)
21
-#define topology_core_cpumask(cpu) (&cpu_topology[cpu].core_sibling)
22
-#define topology_sibling_cpumask(cpu) (&cpu_topology[cpu].thread_sibling)
23
-#define topology_llc_cpumask(cpu) (&cpu_topology[cpu].llc_sibling)
24
-
25
-void init_cpu_topology(void);
26
-void store_cpu_topology(unsigned int cpuid);
27
-void remove_cpu_topology(unsigned int cpuid);
28
-const struct cpumask *cpu_coregroup_mask(int cpu);
29
-
307 #ifdef CONFIG_NUMA
318
329 struct pci_bus;
....@@ -39,11 +16,19 @@
3916
4017 #include <linux/arch_topology.h>
4118
42
-/* Replace task scheduler's default frequency-invariant accounting */
43
-#define arch_scale_freq_capacity topology_get_freq_scale
19
+#ifdef CONFIG_ARM64_AMU_EXTN
20
+/*
21
+ * Replace task scheduler's default counter-based
22
+ * frequency-invariance scale factor setting.
23
+ */
24
+void topology_scale_freq_tick(void);
25
+#define arch_scale_freq_tick topology_scale_freq_tick
26
+#endif /* CONFIG_ARM64_AMU_EXTN */
4427
45
-/* Replace task scheduler's default max-frequency-invariant accounting */
46
-#define arch_scale_max_freq_capacity topology_get_max_freq_scale
28
+/* Replace task scheduler's default frequency-invariant accounting */
29
+#define arch_set_freq_scale topology_set_freq_scale
30
+#define arch_scale_freq_capacity topology_get_freq_scale
31
+#define arch_scale_freq_invariant topology_scale_freq_invariant
4732
4833 /* Replace task scheduler's default cpu-invariant accounting */
4934 #define arch_scale_cpu_capacity topology_get_cpu_scale
....@@ -51,6 +36,10 @@
5136 /* Enable topology flag updates */
5237 #define arch_update_cpu_topology topology_update_cpu_topology
5338
39
+/* Replace task scheduler's default thermal pressure API */
40
+#define arch_scale_thermal_pressure topology_get_thermal_pressure
41
+#define arch_set_thermal_pressure topology_set_thermal_pressure
42
+
5443 #include <asm-generic/topology.h>
5544
5645 #endif /* _ASM_ARM_TOPOLOGY_H */