GIF89a;
target() cpufreq drivers. For information purposes * only. Please free allocated memory by calling * cpufreq_put_available_frequencies after use. */ extern struct cpufreq_available_frequencies *cpufreq_get_available_frequencies(unsigned int cpu); extern void cpufreq_put_available_frequencies( struct cpufreq_available_frequencies *first); /* determine affected CPUs * * Remember to call cpufreq_put_affected_cpus when no longer needed * to avoid memory leakage, please. */ extern struct cpufreq_affected_cpus *cpufreq_get_affected_cpus(unsigned int cpu); extern void cpufreq_put_affected_cpus(struct cpufreq_affected_cpus *first); /* determine related CPUs * * Remember to call cpufreq_put_related_cpus when no longer needed * to avoid memory leakage, please. */ extern struct cpufreq_affected_cpus *cpufreq_get_related_cpus(unsigned int cpu); extern void cpufreq_put_related_cpus(struct cpufreq_affected_cpus *first); /* determine stats for cpufreq subsystem * * This is not available in all kernel versions or configurations. */ extern struct cpufreq_stats *cpufreq_get_stats(unsigned int cpu, unsigned long long *total_time); extern void cpufreq_put_stats(struct cpufreq_stats *stats); extern unsigned long cpufreq_get_transitions(unsigned int cpu); /* set new cpufreq policy * * Tries to set the passed policy as new policy as close as possible, * but results may differ depending e.g. on governors being available. */ extern int cpufreq_set_policy(unsigned int cpu, struct cpufreq_policy *policy); /* modify a policy by only changing min/max freq or governor * * Does not check whether result is what was intended. */ extern int cpufreq_modify_policy_min(unsigned int cpu, unsigned long min_freq); extern int cpufreq_modify_policy_max(unsigned int cpu, unsigned long max_freq); extern int cpufreq_modify_policy_governor(unsigned int cpu, char *governor); /* set a specific frequency * * Does only work if userspace governor can be used and no external * interference (other calls to this function or to set/modify_policy) * occurs. Also does not work on ->range() cpufreq drivers. */ extern int cpufreq_set_frequency(unsigned int cpu, unsigned long target_frequency); #ifdef __cplusplus } #endif #endif /* _CPUFREQ_H */