Loading drivers/devfreq/devfreq.c +20 −11 Original line number Diff line number Diff line Loading @@ -91,26 +91,35 @@ static int devfreq_get_freq_level(struct devfreq *devfreq, unsigned long freq) */ static int devfreq_update_status(struct devfreq *devfreq, unsigned long freq) { int lev, prev_lev; int lev, prev_lev, ret = 0; unsigned long cur_time; lev = devfreq_get_freq_level(devfreq, freq); if (lev < 0) return lev; cur_time = jiffies; devfreq->time_in_state[lev] += prev_lev = devfreq_get_freq_level(devfreq, devfreq->previous_freq); if (prev_lev < 0) { ret = prev_lev; goto out; } devfreq->time_in_state[prev_lev] += cur_time - devfreq->last_stat_updated; if (freq != devfreq->previous_freq) { prev_lev = devfreq_get_freq_level(devfreq, devfreq->previous_freq); lev = devfreq_get_freq_level(devfreq, freq); if (lev < 0) { ret = lev; goto out; } if (lev != prev_lev) { devfreq->trans_table[(prev_lev * devfreq->profile->max_state) + lev]++; devfreq->total_trans++; } devfreq->last_stat_updated = cur_time; return 0; out: devfreq->last_stat_updated = cur_time; return ret; } /** Loading Loading
drivers/devfreq/devfreq.c +20 −11 Original line number Diff line number Diff line Loading @@ -91,26 +91,35 @@ static int devfreq_get_freq_level(struct devfreq *devfreq, unsigned long freq) */ static int devfreq_update_status(struct devfreq *devfreq, unsigned long freq) { int lev, prev_lev; int lev, prev_lev, ret = 0; unsigned long cur_time; lev = devfreq_get_freq_level(devfreq, freq); if (lev < 0) return lev; cur_time = jiffies; devfreq->time_in_state[lev] += prev_lev = devfreq_get_freq_level(devfreq, devfreq->previous_freq); if (prev_lev < 0) { ret = prev_lev; goto out; } devfreq->time_in_state[prev_lev] += cur_time - devfreq->last_stat_updated; if (freq != devfreq->previous_freq) { prev_lev = devfreq_get_freq_level(devfreq, devfreq->previous_freq); lev = devfreq_get_freq_level(devfreq, freq); if (lev < 0) { ret = lev; goto out; } if (lev != prev_lev) { devfreq->trans_table[(prev_lev * devfreq->profile->max_state) + lev]++; devfreq->total_trans++; } devfreq->last_stat_updated = cur_time; return 0; out: devfreq->last_stat_updated = cur_time; return ret; } /** Loading