Re: [PATCH] cpufreq: acpi: Add comment under ACPI_ADR_SPACE_SYSTEM_IO case

Viresh Kumar
2013-10-21T07:13:34Z

[-- Attachment #1: Type: text/plain, Size: 508 bytes --]

On 13 October 2013 06:07, Viresh Kumar <viresh.kumar@linaro.org> wrote:
> On 13/10/2013, Rafael J. Wysocki <rjw@sisk.pl> wrote:
>> -> What about this:
>>
>> /*
>> * The core will not set policy->cur, because cpufreq_driver->get is NULL,
>> * so we need to set it here. However, we have to guess it, because the
>> * current speed is unknown and not detectable via IO ports.
>> */
>
> Far better. Attached again. Thanks.

Have you missed applying this one? Attached again..

[-- Attachment #2: 0001-cpufreq-acpi-Add-comment-under-ACPI_ADR_SPACE_SYSTEM.patch --]
[-- Type: application/octet-stream, Size: 1743 bytes --]

From 055b5d73bef0898d477188372b215cd2ec82fe81 Mon Sep 17 00:00:00 2001
Message-Id: <055b5d73bef0898d477188372b215cd2ec82fe81.1381624602.git.viresh.kumar@linaro.org>
From: Viresh Kumar <viresh.kumar@linaro.org>
Date: Sat, 12 Oct 2013 07:00:01 +0530
Subject: [PATCH] cpufreq: acpi: Add comment under ACPI_ADR_SPACE_SYSTEM_IO
case

policy->cur is now set by cpufreq core when cpufreq_driver->get() is defined and
so drivers aren't required to set it. When space_id is ACPI_ADR_SPACE_SYSTEM_IO
for acpi cpufreq driver it doesn't set ->get to a valid function pointer and so
policy->cur is required to be set by driver.

This is already followed in acpi-cpufreq driver. This patch adds a comment
describing why we need to set policy->cur from driver.

Suggested-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
---
drivers/cpufreq/acpi-cpufreq.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/cpufreq/acpi-cpufreq.c b/drivers/cpufreq/acpi-cpufreq.c
index a8dac7b..a1717d7 100644
--- a/drivers/cpufreq/acpi-cpufreq.c
+++ b/drivers/cpufreq/acpi-cpufreq.c
@@ -837,7 +837,12 @@ static int acpi_cpufreq_cpu_init(struct cpufreq_policy *policy)

switch (perf->control_register.space_id) {
case ACPI_ADR_SPACE_SYSTEM_IO:
- /* Current speed is unknown and not detectable by IO port */
+ /*
+ * The core will not set policy->cur, because
+ * cpufreq_driver->get is NULL, so we need to set it here.
+ * However, we have to guess it, because the current speed is
+ * unknown and not detectable via IO ports.
+ */
policy->cur = acpi_cpufreq_guess_freq(data, policy->cpu);
break;
case ACPI_ADR_SPACE_FIXED_HARDWARE:
--
1.7.12.rc2.18.g61b472e