Hi Thomas, On 07.02.2014 16:55, Thomas Abraham wrote:
From: Thomas Abraham <thomas.ab@xxxxxxxxxxx> Lookup for the optional boost-frequency property in cpu0 node and if available, enable support for boost mode frequencies. The frequencies usable in boost mode are determined while preparing the cpufreq table from the list of operating points available. In addition to this, enable the CPU_FREQ_BOOST_SW config option for this driver by default. On platforms that do not support boost mode, the boost mode frequencies will not be specified in cpu0 node and hence the boost mode support will not be enabled. Since this driver anyways depends on THERMAL config option, it is safe to enable CPU_FREQ_BOOST_SW config option as default. Cc: Shawn Guo <shawn.guo@xxxxxxxxxx> Cc: Lukasz Majewski <l.majewski@xxxxxxxxxxx> Signed-off-by: Thomas Abraham <thomas.ab@xxxxxxxxxxx> --- Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt | 2 ++ drivers/cpufreq/Kconfig | 1 + drivers/cpufreq/cpufreq-cpu0.c | 3 +++ 3 files changed, 6 insertions(+) diff --git a/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt b/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt index f055515..60f321a 100644 --- a/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt +++ b/Documentation/devicetree/bindings/cpufreq/cpufreq-cpu0.txt @@ -19,6 +19,8 @@ Optional properties: - cooling-min-level: - cooling-max-level: Please refer to Documentation/devicetree/bindings/thermal/thermal.txt. +- boost-frequency: + Please refer to Documentation/devicetree/bindings/cpufreq/cpufreq-boost.txt Examples: diff --git a/drivers/cpufreq/Kconfig b/drivers/cpufreq/Kconfig index 4b029c0..52cc704 100644 --- a/drivers/cpufreq/Kconfig +++ b/drivers/cpufreq/Kconfig @@ -187,6 +187,7 @@ config GENERIC_CPUFREQ_CPU0 tristate "Generic CPU0 cpufreq driver" depends on HAVE_CLK && REGULATOR && OF && THERMAL && CPU_THERMAL select PM_OPP + select CPU_FREQ_BOOST_SW help This adds a generic cpufreq driver for CPU0 frequency management. It supports both uniprocessor (UP) and symmetric multiprocessor (SMP) diff --git a/drivers/cpufreq/cpufreq-cpu0.c b/drivers/cpufreq/cpufreq-cpu0.c index 0c12ffc..06539eb 100644 --- a/drivers/cpufreq/cpufreq-cpu0.c +++ b/drivers/cpufreq/cpufreq-cpu0.c @@ -195,6 +195,9 @@ static int cpu0_cpufreq_probe(struct platform_device *pdev) transition_latency += ret * 1000; } + if (of_find_property(cpu_dev->of_node, "boost-frequency", NULL)) + cpu0_cpufreq_driver.boost_supported = true; + ret = cpufreq_register_driver(&cpu0_cpufreq_driver); if (ret) { pr_err("failed register driver: %d\n", ret);
I'd say that boost should be enabled depending on user's preference, as done before in Exynos cpufreq driver. So both presence of boost-frequency property and state of CPU_FREQ_BOOST_SW should be considered.
As for CPU_FREQ_BOOST_SW, I don't think it should be always selected, but ather, either converted to a user-selectable bool entry or made selectable by other entry, like current ARM_EXYNOS_CPU_FREQ_BOOST_SW.
Best regards, Tomasz -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html