Re: [PATCH v12 0/7] cpufreq:boost: CPU Boost mode support

Zhang Rui
2014-01-10T06:33:53Z

On Wed, 2014-01-08 at 01:35 +0100, Rafael J. Wysocki wrote:
> On Tuesday, January 07, 2014 07:58:24 AM Lukasz Majewski wrote:
> > Hi Rafael,
>
> Hi,
>
> > > This patch series introduces support for CPU overclocking technique
> > > called Boost.
> > >
> > > It is a follow up of a LAB governor proposal. Boost is a LAB
> > > component:
> > > http://thread.gmane.org/gmane.linux.kernel/1484746/match=cpufreq
> > >
> > > Boost unifies hardware based solution (e.g. Intel Nehalem) with
> > > software oriented one (like the one done at Exynos).
> > > For this reason cpufreq/freq_table code has been reorganized to
> > > include common code.
> > >
> > > Important design decisions:
> > > - Boost related code is compiled-in unconditionally to cpufreq core
> > > and disabled by default. The cpufreq_driver is responsibile for
> > > setting boost_supported flag and providing set_boost callback(if HW
> > > support is needed). For software managed boost, special Kconfig flag -
> > > CONFIG_CPU_FREQ_BOOST_SW has been defined. It will be selected only
> > > when a target platform has thermal framework properly configured.
> > >
> > > - struct cpufreq_driver has been extended with boost related fields:
> > > -- boost_supported - when driver supports boosting
> > > -- boost_enabled - boost state
> > > -- set_boost - callback to function, which is necessary to
> > > enable/disable boost
> > >
> > > - Boost sysfs attribute (/sys/devices/system/cpu/cpufreq/boost) is
> > > visible _only_ when cpufreq driver supports Boost.
> > >
> > > - No special spin_lock for Boost was created. The one from cpufreq
> > > core was reused.
> > >
> > > - The Boost code doesn't rely on any policy. When boost state is
> > > changed, then the policy list is iterated and proper adjustements are
> > > done.
> > >
> > > - To improve safety level, the thermal framework is also extended to
> > > disable software boosting, when thermal trip point is reached. After
> > > cooling down the boost can be enabled again. This emulates behaviour
> > > similar to HW managed boost (like x86)
> > >
> > > Tested at HW:
> > > Exynos 4412 3.13-rc4 Linux
> > > Intel Core i7-3770 3.13-rc4 Linux
> > >
> > > Above patches were posted on top of kernel_pm/bleeding-edge
> > > (SHA1: bd0f3a5d9dce48a917ce1f1047534d79c725149)
> > >
> > > Lukasz Majewski (7):
> > > cpufreq: Add boost frequency support in core
> > > cpufreq:acpi:x86: Adjust the acpi-cpufreq.c code to work with common
> > > boost solution
> > > cpufreq:boost:Kconfig: Provide support for software managed BOOST
> > > cpufreq:exynos:Extend Exynos cpufreq driver to support boost
> > > framework
> > > Documentation:cpufreq:boost: Update BOOST documentation
> > > cpufreq:exynos4x12: Change L0 driver data to CPUFREQ_BOOST_FREQ
> > > thermal:exynos:boost: Automatic enable/disable of BOOST feature (at
> > > Exynos4412)
> > >
> > > Documentation/cpu-freq/boost.txt | 26 +++----
> > > drivers/cpufreq/Kconfig | 4 +
> > > drivers/cpufreq/Kconfig.arm | 15 ++++
> > > drivers/cpufreq/acpi-cpufreq.c | 86
> > > +++++++-------------- drivers/cpufreq/cpufreq.c |
> > > 118 ++++++++++++++++++++++++++++-
> > > drivers/cpufreq/exynos-cpufreq.c | 3 +
> > > drivers/cpufreq/exynos4x12-cpufreq.c | 2 +-
> > > drivers/cpufreq/freq_table.c | 56 ++++++++++++--
> > > drivers/thermal/samsung/exynos_tmu_data.c | 12 +--
> > > include/linux/cpufreq.h | 24 ++++++ 10 files
> > > changed, 261 insertions(+), 85 deletions(-)
> > >
> >
> > A gentle ping about BOOST patches.
> >
> > Its been already acked by Viresh and Eduardo.
> >
> > It applies on kernel_pm/bleeding_edge SHA1:
> > 4836deb72c5e2a9af0cb2129c1149783a26d99ab
>
> It looks like Rui is still looking into this.
>
> Rui, are you fine with this series?
>
Yes, I'm okay with the thermal related parts of this patch set.

thanks,
rui
> Rafael
>