/root/src/xen/xen/include/acpi/cpufreq/processor_perf.h
Line | Count | Source (jump to first uncovered line) |
1 | | #ifndef __XEN_PROCESSOR_PM_H__ |
2 | | #define __XEN_PROCESSOR_PM_H__ |
3 | | |
4 | | #include <public/platform.h> |
5 | | #include <public/sysctl.h> |
6 | | #include <xen/acpi.h> |
7 | | |
8 | 0 | #define XEN_PX_INIT 0x80000000 |
9 | | |
10 | | int powernow_cpufreq_init(void); |
11 | | unsigned int powernow_register_driver(void); |
12 | | unsigned int get_measured_perf(unsigned int cpu, unsigned int flag); |
13 | | void cpufreq_residency_update(unsigned int, uint8_t); |
14 | | void cpufreq_statistic_update(unsigned int, uint8_t, uint8_t); |
15 | | int cpufreq_statistic_init(unsigned int); |
16 | | void cpufreq_statistic_exit(unsigned int); |
17 | | void cpufreq_statistic_reset(unsigned int); |
18 | | |
19 | | int cpufreq_limit_change(unsigned int); |
20 | | |
21 | | int cpufreq_add_cpu(unsigned int); |
22 | | int cpufreq_del_cpu(unsigned int); |
23 | | |
24 | | struct processor_performance { |
25 | | uint32_t state; |
26 | | uint32_t platform_limit; |
27 | | struct xen_pct_register control_register; |
28 | | struct xen_pct_register status_register; |
29 | | uint32_t state_count; |
30 | | struct xen_processor_px *states; |
31 | | struct xen_psd_package domain_info; |
32 | | uint32_t shared_type; |
33 | | |
34 | | uint32_t init; |
35 | | }; |
36 | | |
37 | | struct processor_pminfo { |
38 | | uint32_t acpi_id; |
39 | | uint32_t id; |
40 | | struct processor_performance perf; |
41 | | }; |
42 | | |
43 | | extern struct processor_pminfo *processor_pminfo[NR_CPUS]; |
44 | | |
45 | | struct px_stat { |
46 | | uint8_t total; /* total Px states */ |
47 | | uint8_t usable; /* usable Px states */ |
48 | | uint8_t last; /* last Px state */ |
49 | | uint8_t cur; /* current Px state */ |
50 | | uint64_t *trans_pt; /* Px transition table */ |
51 | | pm_px_val_t *pt; |
52 | | }; |
53 | | |
54 | | struct pm_px { |
55 | | struct px_stat u; |
56 | | uint64_t prev_state_wall; |
57 | | uint64_t prev_idle_wall; |
58 | | }; |
59 | | |
60 | | DECLARE_PER_CPU(struct pm_px *, cpufreq_statistic_data); |
61 | | |
62 | | int cpufreq_cpu_init(unsigned int cpuid); |
63 | | #endif /* __XEN_PROCESSOR_PM_H__ */ |