[CPUFREQ] powernow-k8: check space_id of _PCT registers to be FFH
authorDave Jones <davej@codemonkey.org.uk>
Fri, 5 Jun 2009 16:37:07 +0000 (12:37 -0400)
committerDave Jones <davej@redhat.com>
Fri, 5 Jun 2009 17:25:25 +0000 (13:25 -0400)
The powernow-k8 driver checks to see that the Performance Control/Status
Registers are declared as FFH (functional fixed hardware) by the BIOS.
However, this check got broken in the commit:
 0e64a0c982c06a6b8f5e2a7f29eb108fdf257b2f
 [CPUFREQ] checkpatch cleanups for powernow-k8

Fix based on an original patch from Naga Chumbalkar.

Signed-off-by: Naga Chumbalkar <nagananda.chumbalkar@hp.com>
Cc: Mark Langsdorf <mark.langsdorf@amd.com>
Signed-off-by: Dave Jones <davej@redhat.com>
arch/x86/kernel/cpu/cpufreq/powernow-k8.c

index f6b32d11235733a1c2cf7153effc4fa42e68e251..35dc8fbe92bd1679ffe0bd5311e474134b6f2ddb 100644 (file)
@@ -835,7 +835,7 @@ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data)
 {
        struct cpufreq_frequency_table *powernow_table;
        int ret_val = -ENODEV;
-       acpi_integer space_id;
+       acpi_integer control, status;
 
        if (acpi_processor_register_performance(&data->acpi_data, data->cpu)) {
                dprintk("register performance failed: bad ACPI data\n");
@@ -848,12 +848,13 @@ static int powernow_k8_cpu_init_acpi(struct powernow_k8_data *data)
                goto err_out;
        }
 
-       space_id = data->acpi_data.control_register.space_id;
-       if ((space_id != ACPI_ADR_SPACE_FIXED_HARDWARE) ||
-               (space_id != ACPI_ADR_SPACE_FIXED_HARDWARE)) {
+       control = data->acpi_data.control_register.space_id;
+       status = data->acpi_data.status_register.space_id;
+
+       if ((control != ACPI_ADR_SPACE_FIXED_HARDWARE) ||
+           (status != ACPI_ADR_SPACE_FIXED_HARDWARE)) {
                dprintk("Invalid control/status registers (%x - %x)\n",
-                       data->acpi_data.control_register.space_id,
-                       space_id);
+                       control, status);
                goto err_out;
        }