| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/cpufreq-nforce2.c linux-3.10.0-229.el7/drivers/cpufreq/cpufreq-nforce2.c |
| |
| |
| @@ -270,7 +270,7 @@ |
| pr_debug("Old CPU frequency %d kHz, new %d kHz\n", |
| freqs.old, freqs.new); |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| /* Disable IRQs */ |
| /* local_irq_save(flags); */ |
| @@ -285,7 +285,7 @@ |
| /* Enable IRQs */ |
| /* local_irq_restore(flags); */ |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| return 0; |
| } |
| Binary files linux-3.10.0-229.el7.original/drivers/cpufreq/.cpufreq-nforce2.c.swp and linux-3.10.0-229.el7/drivers/cpufreq/.cpufreq-nforce2.c.swp differ |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/exynos5440-cpufreq.c linux-3.10.0-229.el7/drivers/cpufreq/exynos5440-cpufreq.c |
| |
| |
| @@ -238,7 +238,7 @@ |
| freqs.old = dvfs_info->cur_frequency; |
| freqs.new = freq_table[index].frequency; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| /* Set the target frequency in all C0_3_PSTATE register */ |
| for_each_cpu(i, policy->cpus) { |
| @@ -279,7 +279,7 @@ |
| dev_crit(dvfs_info->dev, "New frequency out of range\n"); |
| freqs.new = dvfs_info->cur_frequency; |
| } |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| cpufreq_cpu_put(policy); |
| mutex_unlock(&cpufreq_lock); |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/gx-suspmod.c linux-3.10.0-229.el7/drivers/cpufreq/gx-suspmod.c |
| |
| |
| @@ -265,7 +265,7 @@ |
| |
| freqs.new = new_khz; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| local_irq_save(flags); |
| |
| if (new_khz != stock_freq) { |
| @@ -314,7 +314,7 @@ |
| |
| gx_params->pci_suscfg = suscfg; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| pr_debug("suspend modulation w/ duration of ON:%d us, OFF:%d us\n", |
| gx_params->on_duration * 32, gx_params->off_duration * 32); |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/integrator-cpufreq.c linux-3.10.0-229.el7/drivers/cpufreq/integrator-cpufreq.c |
| |
| |
| @@ -121,7 +121,7 @@ |
| return 0; |
| } |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| cm_osc = __raw_readl(CM_OSC); |
| |
| @@ -142,7 +142,7 @@ |
| */ |
| set_cpus_allowed(current, cpus_allowed); |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| return 0; |
| } |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/longhaul.c linux-3.10.0-229.el7/drivers/cpufreq/longhaul.c |
| |
| |
| @@ -269,7 +269,7 @@ |
| freqs.old = calc_speed(longhaul_get_cpu_mult()); |
| freqs.new = speed; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| pr_debug("Setting to FSB:%dMHz Mult:%d.%dx (%s)\n", |
| fsb, mult/10, mult%10, print_speed(speed/1000)); |
| @@ -386,7 +386,7 @@ |
| } |
| } |
| /* Report true CPU frequency */ |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| if (!bm_timeout) |
| printk(KERN_INFO PFX "Warning: Timeout while waiting for " |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/powernow-k6.c linux-3.10.0-229.el7/drivers/cpufreq/powernow-k6.c |
| |
| |
| @@ -83,7 +83,7 @@ |
| freqs.old = busfreq * powernow_k6_get_cpu_multiplier(); |
| freqs.new = busfreq * clock_ratio[best_i].driver_data; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| /* we now need to transform best_i to the BVC format, see AMD#23446 */ |
| |
| @@ -98,7 +98,7 @@ |
| msrval = POWERNOW_IOPORT + 0x0; |
| wrmsr(MSR_K6_EPMR, msrval, 0); /* disable it again */ |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| return; |
| } |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/powernow-k7.c linux-3.10.0-229.el7/drivers/cpufreq/powernow-k7.c |
| |
| |
| @@ -269,7 +269,7 @@ |
| |
| freqs.new = powernow_table[index].frequency; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| /* Now do the magic poking into the MSRs. */ |
| |
| @@ -290,7 +290,7 @@ |
| if (have_a0 == 1) |
| local_irq_enable(); |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| } |
| |
| |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/sh-cpufreq.c linux-3.10.0-229.el7/drivers/cpufreq/sh-cpufreq.c |
| |
| |
| @@ -68,10 +68,10 @@ |
| freqs.new = (freq + 500) / 1000; |
| freqs.flags = 0; |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| set_cpus_allowed_ptr(current, &cpus_allowed); |
| clk_set_rate(cpuclk, freq); |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, 0); |
| |
| dev_dbg(dev, "set frequency %lu Hz\n", freq); |
| |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/speedstep-centrino.c linux-3.10.0-229.el7/drivers/cpufreq/speedstep-centrino.c |
| |
| |
| @@ -345,7 +345,6 @@ |
| struct cpuinfo_x86 *cpu = &cpu_data(policy->cpu); |
| unsigned freq; |
| unsigned l, h; |
| - int ret; |
| int i; |
| |
| /* Only Intel makes Enhanced Speedstep-capable CPUs */ |
| @@ -402,15 +401,8 @@ |
| |
| pr_debug("centrino_cpu_init: cur=%dkHz\n", policy->cur); |
| |
| - ret = cpufreq_frequency_table_cpuinfo(policy, |
| + return cpufreq_table_validate_and_show(policy, |
| per_cpu(centrino_model, policy->cpu)->op_points); |
| - if (ret) |
| - return (ret); |
| - |
| - cpufreq_frequency_table_get_attr( |
| - per_cpu(centrino_model, policy->cpu)->op_points, policy->cpu); |
| - |
| - return 0; |
| } |
| |
| static int centrino_cpu_exit(struct cpufreq_policy *policy) |
| @@ -428,19 +420,6 @@ |
| } |
| |
| /** |
| - * centrino_verify - verifies a new CPUFreq policy |
| - * @policy: new policy |
| - * |
| - * Limit must be within this model's frequency range at least one |
| - * border included. |
| - */ |
| -static int centrino_verify (struct cpufreq_policy *policy) |
| -{ |
| - return cpufreq_frequency_table_verify(policy, |
| - per_cpu(centrino_model, policy->cpu)->op_points); |
| -} |
| - |
| -/** |
| * centrino_setpolicy - set a new CPUFreq policy |
| * @policy: new policy |
| * @target_freq: the target frequency |
| @@ -561,20 +540,15 @@ |
| return retval; |
| } |
| |
| -static struct freq_attr* centrino_attr[] = { |
| - &cpufreq_freq_attr_scaling_available_freqs, |
| - NULL, |
| -}; |
| - |
| static struct cpufreq_driver centrino_driver = { |
| .name = "centrino", /* should be speedstep-centrino, |
| but there's a 16 char limit */ |
| .init = centrino_cpu_init, |
| .exit = centrino_cpu_exit, |
| - .verify = centrino_verify, |
| + .verify = cpufreq_generic_frequency_table_verify, |
| .target = centrino_target, |
| .get = get_cur_freq, |
| - .attr = centrino_attr, |
| + .attr = cpufreq_generic_attr, |
| }; |
| |
| /* |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/speedstep-ich.c linux-3.10.0-229.el7/drivers/cpufreq/speedstep-ich.c |
| |
| |
| @@ -289,18 +289,6 @@ |
| } |
| |
| |
| -/** |
| - * speedstep_verify - verifies a new CPUFreq policy |
| - * @policy: new policy |
| - * |
| - * Limit must be within speedstep_low_freq and speedstep_high_freq, with |
| - * at least one border included. |
| - */ |
| -static int speedstep_verify(struct cpufreq_policy *policy) |
| -{ |
| - return cpufreq_frequency_table_verify(policy, &speedstep_freqs[0]); |
| -} |
| - |
| struct get_freqs { |
| struct cpufreq_policy *policy; |
| int ret; |
| @@ -320,7 +308,6 @@ |
| |
| static int speedstep_cpu_init(struct cpufreq_policy *policy) |
| { |
| - int result; |
| unsigned int policy_cpu, speed; |
| struct get_freqs gf; |
| |
| @@ -349,36 +336,18 @@ |
| /* cpuinfo and default policy values */ |
| policy->cur = speed; |
| |
| - result = cpufreq_frequency_table_cpuinfo(policy, speedstep_freqs); |
| - if (result) |
| - return result; |
| - |
| - cpufreq_frequency_table_get_attr(speedstep_freqs, policy->cpu); |
| - |
| - return 0; |
| + return cpufreq_table_validate_and_show(policy, speedstep_freqs); |
| } |
| |
| |
| -static int speedstep_cpu_exit(struct cpufreq_policy *policy) |
| -{ |
| - cpufreq_frequency_table_put_attr(policy->cpu); |
| - return 0; |
| -} |
| - |
| -static struct freq_attr *speedstep_attr[] = { |
| - &cpufreq_freq_attr_scaling_available_freqs, |
| - NULL, |
| -}; |
| - |
| - |
| static struct cpufreq_driver speedstep_driver = { |
| .name = "speedstep-ich", |
| - .verify = speedstep_verify, |
| + .verify = cpufreq_generic_frequency_table_verify, |
| .target = speedstep_target, |
| .init = speedstep_cpu_init, |
| - .exit = speedstep_cpu_exit, |
| + .exit = cpufreq_generic_exit, |
| .get = speedstep_get, |
| - .attr = speedstep_attr, |
| + .attr = cpufreq_generic_attr, |
| }; |
| |
| static const struct x86_cpu_id ss_smi_ids[] = { |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/speedstep-smi.c linux-3.10.0-229.el7/drivers/cpufreq/speedstep-smi.c |
| |
| |
| @@ -264,19 +264,6 @@ |
| } |
| |
| |
| -/** |
| - * speedstep_verify - verifies a new CPUFreq policy |
| - * @policy: new policy |
| - * |
| - * Limit must be within speedstep_low_freq and speedstep_high_freq, with |
| - * at least one border included. |
| - */ |
| -static int speedstep_verify(struct cpufreq_policy *policy) |
| -{ |
| - return cpufreq_frequency_table_verify(policy, &speedstep_freqs[0]); |
| -} |
| - |
| - |
| static int speedstep_cpu_init(struct cpufreq_policy *policy) |
| { |
| int result; |
| @@ -329,19 +316,7 @@ |
| policy->cpuinfo.transition_latency = CPUFREQ_ETERNAL; |
| policy->cur = speed; |
| |
| - result = cpufreq_frequency_table_cpuinfo(policy, speedstep_freqs); |
| - if (result) |
| - return result; |
| - |
| - cpufreq_frequency_table_get_attr(speedstep_freqs, policy->cpu); |
| - |
| - return 0; |
| -} |
| - |
| -static int speedstep_cpu_exit(struct cpufreq_policy *policy) |
| -{ |
| - cpufreq_frequency_table_put_attr(policy->cpu); |
| - return 0; |
| + return cpufreq_table_validate_and_show(policy, speedstep_freqs); |
| } |
| |
| static unsigned int speedstep_get(unsigned int cpu) |
| @@ -362,20 +337,15 @@ |
| return result; |
| } |
| |
| -static struct freq_attr *speedstep_attr[] = { |
| - &cpufreq_freq_attr_scaling_available_freqs, |
| - NULL, |
| -}; |
| - |
| static struct cpufreq_driver speedstep_driver = { |
| .name = "speedstep-smi", |
| - .verify = speedstep_verify, |
| + .verify = cpufreq_generic_frequency_table_verify, |
| .target = speedstep_target, |
| .init = speedstep_cpu_init, |
| - .exit = speedstep_cpu_exit, |
| + .exit = cpufreq_generic_exit, |
| .get = speedstep_get, |
| .resume = speedstep_resume, |
| - .attr = speedstep_attr, |
| + .attr = cpufreq_generic_attr, |
| }; |
| |
| static const struct x86_cpu_id ss_smi_ids[] = { |
| diff -urN linux-3.10.0-229.el7.original/drivers/cpufreq/unicore2-cpufreq.c linux-3.10.0-229.el7/drivers/cpufreq/unicore2-cpufreq.c |
| |
| |
| @@ -50,14 +50,14 @@ |
| struct cpufreq_freqs freqs; |
| struct clk *mclk = clk_get(NULL, "MAIN_CLK"); |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_PRECHANGE); |
| + cpufreq_freq_transition_begin(policy, &freqs); |
| |
| if (!clk_set_rate(mclk, target_freq * 1000)) { |
| freqs.old = cur; |
| freqs.new = target_freq; |
| } |
| |
| - cpufreq_notify_transition(policy, &freqs, CPUFREQ_POSTCHANGE); |
| + cpufreq_freq_transition_end(policy, &freqs, ret); |
| |
| return 0; |
| } |