linux/arch/arm/mach-sa1100
Viresh Kumar 9c0ebcf78f cpufreq: Implement light weight ->target_index() routine
Currently, the prototype of cpufreq_drivers target routines is:

int target(struct cpufreq_policy *policy, unsigned int target_freq,
		unsigned int relation);

And most of the drivers call cpufreq_frequency_table_target() to get a valid
index of their frequency table which is closest to the target_freq. And they
don't use target_freq and relation after that.

So, it makes sense to just do this work in cpufreq core before calling
cpufreq_frequency_table_target() and simply pass index instead. But this can be
done only with drivers which expose their frequency table with cpufreq core. For
others we need to stick with the old prototype of target() until those drivers
are converted to expose frequency tables.

This patch implements the new light weight prototype for target_index() routine.
It looks like this:

int target_index(struct cpufreq_policy *policy, unsigned int index);

CPUFreq core will call cpufreq_frequency_table_target() before calling this
routine and pass index to it. Because CPUFreq core now requires to call routines
present in freq_table.c CONFIG_CPU_FREQ_TABLE must be enabled all the time.

This also marks target() interface as deprecated. So, that new drivers avoid
using it. And Documentation is updated accordingly.

It also converts existing .target() to newly defined light weight
.target_index() routine for many driver.

Acked-by: Hans-Christian Egtvedt <egtvedt@samfundet.no>
Acked-by: Jesper Nilsson <jesper.nilsson@axis.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Russell King <linux@arm.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Tested-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Signed-off-by: Rafael J. Wysocki <rjw@rjwysocki.net>
2013-10-25 22:42:24 +02:00
..
include/mach cpufreq: sa11x0: move cpufreq driver to drivers/cpufreq 2013-04-10 13:19:24 +02:00
assabet.c arm-soc: cleanups 2013-02-21 14:58:40 -08:00
badge4.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
cerf.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
clock.c ARM: sa1100: clean up clock support 2012-02-28 10:08:07 +08:00
collie.c ARM: sa1100: collie.c: fall back to jedec_probe flash detection 2013-09-18 08:20:27 -07:00
generic.c cpufreq: Implement light weight ->target_index() routine 2013-10-25 22:42:24 +02:00
generic.h cpufreq: Implement light weight ->target_index() routine 2013-10-25 22:42:24 +02:00
h3xxx.c ARM: move serial_sa1100.h header file to linux/platform_data 2012-11-16 11:35:29 +00:00
h3100.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
h3600.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
hackkit.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
irq.c ARM: sa11x0/pxa: convert OS timer registers to IOMEM 2012-07-09 17:37:35 +01:00
jornada720_ssp.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
jornada720.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
Kconfig cpufreq: sa11x0: move cpufreq driver to drivers/cpufreq 2013-04-10 13:19:24 +02:00
lart.c arm-soc: cleanups 2013-02-21 14:58:40 -08:00
Makefile cpufreq: sa11x0: move cpufreq driver to drivers/cpufreq 2013-04-10 13:19:24 +02:00
Makefile.boot ARM: sa1100: fix build error 2011-12-08 14:55:57 +08:00
nanoengine.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
neponset.c ARM: drivers: remove __dev* attributes. 2013-01-03 15:57:04 -08:00
pci-nanoengine.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
pleb.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
pm.c ARM: sa11x0/pxa: convert OS timer registers to IOMEM 2012-07-09 17:37:35 +01:00
shannon.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
simpad.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
sleep.S ARM: 7452/1: delay: allow timer-based delay implementation to be selected 2012-07-09 17:42:23 +01:00
ssp.c ARM: 7342/2: sa1100: prepare for sparse irq conversion 2012-03-25 23:57:20 +01:00
time.c sched_clock: Make ARM's sched_clock generic for all architectures 2013-06-12 14:02:13 -07:00