43,8 → 43,9 |
* level driver of CPUFreq support, and its spinlock. This lock |
* also protects the cpufreq_cpu_data array. |
*/ |
static struct cpufreq_policy cpufreq_cpu_policy; |
static struct cpufreq_policy *cpufreq_cpu_data = &cpufreq_cpu_policy; |
static struct cpufreq_driver *cpufreq_driver; |
static struct cpufreq_policy *cpufreq_cpu_data; |
static spinlock_t cpufreq_driver_lock = SPIN_LOCK_UNLOCKED; |
|
/********************************************************************* |
56,6 → 57,26 |
return cpufreq_driver_target(cpufreq_cpu_data, target_freq, relation); |
} |
|
int cpufreq_get_cur_freq(void) |
{ |
return cpufreq_cpu_data->cur; |
} |
|
int cpufreq_get_min_freq(void) |
{ |
return cpufreq_cpu_data->min; |
} |
|
int cpufreq_get_max_freq(void) |
{ |
return cpufreq_cpu_data->max; |
} |
|
int cpufreq_get_latency(void) |
{ |
return cpufreq_cpu_data->cpuinfo.transition_latency; |
} |
|
/********************************************************************* |
* GOVERNOR * |
*********************************************************************/ |
75,6 → 96,22 |
} |
|
/********************************************************************* |
* NOTIFIER * |
*********************************************************************/ |
void cpufreq_notify_transition(struct cpufreq_freqs *freqs, unsigned int state) |
{ |
switch (state) { |
case CPUFREQ_PRECHANGE: |
//adjust_jiffies(CPUFREQ_PRECHANGE, freqs); |
break; |
case CPUFREQ_POSTCHANGE: |
//adjust_jiffies(CPUFREQ_POSTCHANGE, freqs); |
cpufreq_cpu_data->cur = freqs->new; |
break; |
} |
} |
|
/********************************************************************* |
* REGISTER / UNREGISTER CPUFREQ DRIVER * |
*********************************************************************/ |
|