cpufreq.c (910c6e881c3a610dfd7575b96975d4df21e3a920) cpufreq.c (1aefc75b2449eb68a6fc3ca932e2a4ee353b748d)
1/*
2 * linux/drivers/cpufreq/cpufreq.c
3 *
4 * Copyright (C) 2001 Russell King
5 * (C) 2002 - 2003 Dominik Brodowski <linux@brodo.de>
6 * (C) 2013 Viresh Kumar <viresh.kumar@linaro.org>
7 *
8 * Oct 2005 - Ashok Raj <ashok.raj@intel.com>

--- 333 unchanged lines hidden (view full) ---

342 adjust_jiffies(CPUFREQ_PRECHANGE, freqs);
343 break;
344
345 case CPUFREQ_POSTCHANGE:
346 adjust_jiffies(CPUFREQ_POSTCHANGE, freqs);
347 pr_debug("FREQ: %lu - CPU: %lu\n",
348 (unsigned long)freqs->new, (unsigned long)freqs->cpu);
349 trace_cpu_frequency(freqs->new, freqs->cpu);
1/*
2 * linux/drivers/cpufreq/cpufreq.c
3 *
4 * Copyright (C) 2001 Russell King
5 * (C) 2002 - 2003 Dominik Brodowski <linux@brodo.de>
6 * (C) 2013 Viresh Kumar <viresh.kumar@linaro.org>
7 *
8 * Oct 2005 - Ashok Raj <ashok.raj@intel.com>

--- 333 unchanged lines hidden (view full) ---

342 adjust_jiffies(CPUFREQ_PRECHANGE, freqs);
343 break;
344
345 case CPUFREQ_POSTCHANGE:
346 adjust_jiffies(CPUFREQ_POSTCHANGE, freqs);
347 pr_debug("FREQ: %lu - CPU: %lu\n",
348 (unsigned long)freqs->new, (unsigned long)freqs->cpu);
349 trace_cpu_frequency(freqs->new, freqs->cpu);
350 cpufreq_stats_record_transition(policy, freqs->new);
350 srcu_notifier_call_chain(&cpufreq_transition_notifier_list,
351 CPUFREQ_POSTCHANGE, freqs);
352 if (likely(policy) && likely(policy->cpu == freqs->cpu))
353 policy->cur = freqs->new;
354 break;
355 }
356}
357

--- 745 unchanged lines hidden (view full) ---

1103 struct kobject *kobj;
1104 struct completion *cmp;
1105
1106 if (notify)
1107 blocking_notifier_call_chain(&cpufreq_policy_notifier_list,
1108 CPUFREQ_REMOVE_POLICY, policy);
1109
1110 down_write(&policy->rwsem);
351 srcu_notifier_call_chain(&cpufreq_transition_notifier_list,
352 CPUFREQ_POSTCHANGE, freqs);
353 if (likely(policy) && likely(policy->cpu == freqs->cpu))
354 policy->cur = freqs->new;
355 break;
356 }
357}
358

--- 745 unchanged lines hidden (view full) ---

1104 struct kobject *kobj;
1105 struct completion *cmp;
1106
1107 if (notify)
1108 blocking_notifier_call_chain(&cpufreq_policy_notifier_list,
1109 CPUFREQ_REMOVE_POLICY, policy);
1110
1111 down_write(&policy->rwsem);
1112 cpufreq_stats_free_table(policy);
1111 cpufreq_remove_dev_symlink(policy);
1112 kobj = &policy->kobj;
1113 cmp = &policy->kobj_unregister;
1114 up_write(&policy->rwsem);
1115 kobject_put(kobj);
1116
1117 /*
1118 * We need to make sure that the underlying kobj is

--- 138 unchanged lines hidden (view full) ---

1257 __func__, policy->cpu, policy->cur);
1258 }
1259 }
1260
1261 if (new_policy) {
1262 ret = cpufreq_add_dev_interface(policy);
1263 if (ret)
1264 goto out_exit_policy;
1113 cpufreq_remove_dev_symlink(policy);
1114 kobj = &policy->kobj;
1115 cmp = &policy->kobj_unregister;
1116 up_write(&policy->rwsem);
1117 kobject_put(kobj);
1118
1119 /*
1120 * We need to make sure that the underlying kobj is

--- 138 unchanged lines hidden (view full) ---

1259 __func__, policy->cpu, policy->cur);
1260 }
1261 }
1262
1263 if (new_policy) {
1264 ret = cpufreq_add_dev_interface(policy);
1265 if (ret)
1266 goto out_exit_policy;
1267
1268 cpufreq_stats_create_table(policy);
1265 blocking_notifier_call_chain(&cpufreq_policy_notifier_list,
1266 CPUFREQ_CREATE_POLICY, policy);
1267
1268 write_lock_irqsave(&cpufreq_driver_lock, flags);
1269 list_add(&policy->policy_list, &cpufreq_policy_list);
1270 write_unlock_irqrestore(&cpufreq_driver_lock, flags);
1271 }
1272

--- 1306 unchanged lines hidden ---
1269 blocking_notifier_call_chain(&cpufreq_policy_notifier_list,
1270 CPUFREQ_CREATE_POLICY, policy);
1271
1272 write_lock_irqsave(&cpufreq_driver_lock, flags);
1273 list_add(&policy->policy_list, &cpufreq_policy_list);
1274 write_unlock_irqrestore(&cpufreq_driver_lock, flags);
1275 }
1276

--- 1306 unchanged lines hidden ---