diff options
author | Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com> | 2015-04-10 19:58:58 +0200 |
---|---|---|
committer | Seung-Woo Kim <sw0312.kim@samsung.com> | 2016-12-14 13:50:12 +0900 |
commit | 7ba543e2fa14332c86a704641102c4b1bdddfb5b (patch) | |
tree | 9780226b0cd0985e06f08e1e3a653e636b2fe55a /Documentation | |
parent | 01d5f3b599dbaf11ca78f3c6ac7cfe902e441df1 (diff) |
cpufreq-dt: add 'boost' mode frequencies support
Add 'boost' mode frequencies support:
- add boost-opps binding to cpufreq-dt driver bindings
- make cpufreq_init() adjust freq_table accordingly
- fix set_target() to handle boost frequencies
- add boost_supported field to struct cpufreq_dt_platform_data
- set dt_cpufreq_driver.boost_supported in dt_cpufreq_probe()
This patch makes cpufreq-dt driver aware of 'boost' mode frequencies
and prepares it for adding support for Exynos4x12 'boost' support.
boost-opps binding is currently limited to cpufreq-dt but once there is
a need for cpufreq wide and/or generic Linux device support for 'boost'
mode cpufreq-dt can be updated to handle the new code without changing
the binding itself.
The decision to make 'boost' mode support limited to cpufreq-dt driver
for now was taken because 'boost' mode is currently a niche feature and
code needed for parsing boost-opps binding is minimal and simple. More
generic (i.e. separate 'boost' OPPs list in struct device and generic
cpufreq convertion of them to freq_table format) support would need far
more code and effort to make it work. Doing it without a demonstrated
real need would be on overengineering IMHO.
Cc: Tomasz Figa <tomasz.figa@gmail.com>
Cc: Mike Turquette <mturquette@linaro.org>
Cc: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
Cc: Thomas Abraham <thomas.ab@samsung.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt b/Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt index e41c98ffbccb..98572d8eded3 100644 --- a/Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt +++ b/Documentation/devicetree/bindings/cpufreq/cpufreq-dt.txt @@ -14,6 +14,16 @@ Optional properties: - operating-points: Refer to Documentation/devicetree/bindings/power/opp.txt for details. OPPs *must* be supplied either via DT, i.e. this property, or populated at runtime. +- boost-opps: Certain CPUs can be operated in optional 'boost' mode (sometimes + also referred as overclocking) in which the CPU can operate at frequencies + which are not specified by the manufacturer as CPU's operating frequency. + CPU usually can operate in 'boost' mode for limited amount of time which + depends on thermal conditions. This makes the boost operating points + separate from normal ones which can be used at any time. This property + consists of an array of 2-tuples items, and each item consists of frequency + and voltage like <freq-kHz vol-uV>. + freq: clock frequency in kHz + vol: voltage in microvolt - clock-latency: Specify the possible maximum transition latency for clock, in unit of nanoseconds. - voltage-tolerance: Specify the CPU voltage tolerance in percentage. @@ -38,6 +48,10 @@ cpus { 396000 950000 198000 850000 >; + boost-opps = < + /* kHz uV */ + 891000 1150000 + >; clock-latency = <61036>; /* two CLK32 periods */ #cooling-cells = <2>; cooling-min-level = <0>; |