aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/base/power/opp.c
Commit message (Collapse)AuthorAgeFilesLines
* PM: OPP: Add opp_find_volt_floor/ceil functionsTaras Kondratiuk2012-09-041-0/+88
| | | | | | | | Add functions to find OPP by voltage value in the same way as it is made for frequency. Change-Id: Ic7250258de82ca02d4ee27cfa53bafc7de87685f Signed-off-by: Taras Kondratiuk <taras@ti.com>
* PM: OPP: introduce function to free cpufreq table(v2)Nishanth Menon2011-06-131-0/+17
| | | | | | | | | | | cpufreq table allocated by opp_init_cpufreq_table is better freed by OPP layer itself. This allows future modifications to the table handling to be transparent to the users. Example discussion: http://marc.info/?t=130570440600005&r=1&w=2 Acked-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com>
* PM / OPP: opp_find_freq_exact() documentation fixNishanth Menon2011-03-151-1/+1
| | | | | | | | | | | opp_find_freq_exact() documentation has is_available instead of available. This also fixes warning with the kernel-doc: scripts/kernel-doc drivers/base/power/opp.c >/dev/null Warning(drivers/base/power/opp.c:246): No description found for parameter 'available' Warning(drivers/base/power/opp.c:246): Excess function parameter 'is_available' description in 'opp_find_freq_exact' Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
* PM: Introduce library for device-specific OPPs (v7)Nishanth Menon2010-10-171-0/+628
SoCs have a standard set of tuples consisting of frequency and voltage pairs that the device will support per voltage domain. These are called Operating Performance Points or OPPs. The actual definitions of OPP varies over silicon versions. For a specific domain, we can have a set of {frequency, voltage} pairs. As the kernel boots and more information is available, a default set of these are activated based on the precise nature of device. Further on operation, based on conditions prevailing in the system (such as temperature), some OPP availability may be temporarily controlled by the SoC frameworks. To implement an OPP, some sort of power management support is necessary hence this library depends on CONFIG_PM. Contributions include: Sanjeev Premi for the initial concept: http://patchwork.kernel.org/patch/50998/ Kevin Hilman for converting original design to device-based. Kevin Hilman and Paul Walmsey for cleaning up many of the function abstractions, improvements and data structure handling. Romit Dasgupta for using enums instead of opp pointers. Thara Gopinath, Eduardo Valentin and Vishwanath BS for fixes and cleanups. Linus Walleij for recommending this layer be made generic for usage in other architectures beyond OMAP and ARM. Mark Brown, Andrew Morton, Rafael J. Wysocki, Paul E. McKenney for valuable improvements. Discussions and comments from: http://marc.info/?l=linux-omap&m=126033945313269&w=2 http://marc.info/?l=linux-omap&m=125482970102327&w=2 http://marc.info/?t=125809247500002&r=1&w=2 http://marc.info/?l=linux-omap&m=126025973426007&w=2 http://marc.info/?t=128152609200064&r=1&w=2 http://marc.info/?t=128468723000002&r=1&w=2 incorporated. v1: http://marc.info/?t=128468723000002&r=1&w=2 Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>