File: interfaces.h

package info (click to toggle)
cpufrequtils 008-1
  • links: PTS
  • area: main
  • in suites: jessie, jessie-kfreebsd, stretch, wheezy
  • size: 832 kB
  • sloc: ansic: 3,454; sh: 393; makefile: 301
file content (76 lines) | stat: -rw-r--r-- 5,201 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
#ifdef INTERFACE_SYSFS

extern unsigned int sysfs_cpu_exists(unsigned int cpu);
extern unsigned long sysfs_get_freq_kernel(unsigned int cpu);
extern unsigned long sysfs_get_freq_hardware(unsigned int cpu);
extern unsigned long sysfs_get_transition_latency(unsigned int cpu);
extern int sysfs_get_hardware_limits(unsigned int cpu, unsigned long *min, unsigned long *max);
extern char * sysfs_get_driver(unsigned int cpu);
extern struct cpufreq_policy * sysfs_get_policy(unsigned int cpu);
extern struct cpufreq_available_governors * sysfs_get_available_governors(unsigned int cpu);
extern struct cpufreq_available_frequencies * sysfs_get_available_frequencies(unsigned int cpu);
extern struct cpufreq_affected_cpus * sysfs_get_affected_cpus(unsigned int cpu);
extern struct cpufreq_affected_cpus * sysfs_get_related_cpus(unsigned int cpu);
extern struct cpufreq_stats * sysfs_get_stats(unsigned int cpu, unsigned long long *total_time);
extern unsigned long sysfs_get_transitions(unsigned int cpu);
extern int sysfs_set_policy(unsigned int cpu, struct cpufreq_policy *policy);
extern int sysfs_modify_policy_min(unsigned int cpu, unsigned long min_freq);
extern int sysfs_modify_policy_max(unsigned int cpu, unsigned long max_freq);
extern int sysfs_modify_policy_governor(unsigned int cpu, char *governor);
extern int sysfs_set_frequency(unsigned int cpu, unsigned long target_frequency);

#else

static inline unsigned int sysfs_cpu_exists(unsigned int cpu) { return -ENOSYS; }
static inline unsigned long sysfs_get_freq_kernel(unsigned int cpu) { return 0; }
static inline unsigned long sysfs_get_freq_hardware(unsigned int cpu) { return 0; }
static inline unsigned long sysfs_get_transition_latency(unsigned int cpu) { return 0; }
static inline int sysfs_get_hardware_limits(unsigned int cpu, unsigned long *min, unsigned long *max)  { return -ENOSYS; }
static inline char * sysfs_get_driver(unsigned int cpu) { return NULL; }
static inline struct cpufreq_policy * sysfs_get_policy(unsigned int cpu) { return NULL; }
static inline struct cpufreq_available_governors * sysfs_get_available_governors(unsigned int cpu) { return NULL; }
static inline struct cpufreq_available_frequencies * sysfs_get_available_frequencies(unsigned int cpu) { return NULL; }
static inline struct cpufreq_affected_cpus * sysfs_get_affected_cpus(unsigned int cpu) { return NULL; }
static inline struct cpufreq_related_cpus * sysfs_get_affected_cpus(unsigned int cpu) { return NULL; }
static inline struct cpufreq_stats * sysfs_get_stats(unsigned int cpu, unsigned long long *total_time) { return NULL; }
static inline unsigned long sysfs_get_transitions(unsigned int cpu) { return 0; }
static inline int sysfs_set_policy(unsigned int cpu, struct cpufreq_policy *policy) { return -ENOSYS; }
static inline int sysfs_modify_policy_min(unsigned int cpu, unsigned long min_freq) { return -ENOSYS; }
static inline int sysfs_modify_policy_max(unsigned int cpu, unsigned long max_freq) { return -ENOSYS; }
static inline int sysfs_modify_policy_governor(unsigned int cpu, char *governor) { return -ENOSYS; }
static inline int sysfs_set_frequency(unsigned int cpu, unsigned long target_frequency) { return -ENOSYS; }

#endif


#ifdef INTERFACE_PROC

extern int proc_cpu_exists(unsigned int cpu);
extern unsigned long proc_get_freq_kernel(unsigned int cpu);
extern struct cpufreq_policy * proc_get_policy(unsigned int cpu);
extern int proc_set_policy(unsigned int cpu, struct cpufreq_policy *policy);
extern int proc_set_frequency(unsigned int cpu, unsigned long target_frequency);
#else

static inline int proc_cpu_exists(unsigned int cpu) {return -ENOSYS; }
static inline unsigned long proc_get_freq_kernel(unsigned int cpu) { return 0; }
static inline struct cpufreq_policy * proc_get_policy(unsigned int cpu) { return NULL; }
static inline int proc_set_policy(unsigned int cpu, struct cpufreq_policy *policy) { return -ENOSYS; }
static inline int proc_set_frequency(unsigned int cpu, unsigned long target_frequency) { return -ENOSYS; }

#endif

/* these aren't implemented in /proc, and probably never will...*/

static inline unsigned long proc_get_freq_hardware(unsigned int cpu) { return 0; }
static inline unsigned long proc_get_transition_latency(unsigned int cpu) { return -ENOSYS; }
static inline int proc_get_hardware_limits(unsigned int cpu, unsigned long *min, unsigned long *max)  { return -ENOSYS; }
static inline char * proc_get_driver(unsigned int cpu) {return NULL; }
static inline struct cpufreq_available_governors * proc_get_available_governors(unsigned int cpu) { return NULL; }
static inline struct cpufreq_available_frequencies * proc_get_available_frequencies(unsigned int cpu) { return NULL; }
static inline struct cpufreq_affected_cpus * proc_get_affected_cpus(unsigned int cpu) { return NULL; }
static inline struct cpufreq_affected_cpus * proc_get_related_cpus(unsigned int cpu) { return NULL; }
static inline int proc_modify_policy_min(unsigned int cpu, unsigned long min_freq) { return -ENOSYS; }
static inline int proc_modify_policy_max(unsigned int cpu, unsigned long max_freq) { return -ENOSYS; }
static inline int proc_modify_policy_governor(unsigned int cpu, char *governor) { return -ENOSYS; }