diff options
author | Jiang Liu <jiang.liu@linux.intel.com> | 2014-02-19 01:02:16 -0500 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2014-02-20 18:27:47 -0500 |
commit | 8b296d9412a087c1e2191d3e7448c76d9498714f (patch) | |
tree | daafec8c5469e60bbe7e1472c37967851e5dd270 /drivers/acpi/acpi_pad.c | |
parent | 05730c1952787faa422ea2898634a1f9cdb61161 (diff) |
ACPI / PAD: use acpi_evaluate_ost() to replace open-coded version
Use public function acpi_evaluate_ost() to replace open-coded
version of evaluating ACPI _OST method.
Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/acpi_pad.c')
-rw-r--r-- | drivers/acpi/acpi_pad.c | 24 |
1 files changed, 5 insertions, 19 deletions
diff --git a/drivers/acpi/acpi_pad.c b/drivers/acpi/acpi_pad.c index df96a0fe4890..37d73024b82e 100644 --- a/drivers/acpi/acpi_pad.c +++ b/drivers/acpi/acpi_pad.c | |||
@@ -408,28 +408,14 @@ static int acpi_pad_pur(acpi_handle handle) | |||
408 | return num; | 408 | return num; |
409 | } | 409 | } |
410 | 410 | ||
411 | /* Notify firmware how many CPUs are idle */ | ||
412 | static void acpi_pad_ost(acpi_handle handle, int stat, | ||
413 | uint32_t idle_cpus) | ||
414 | { | ||
415 | union acpi_object params[3] = { | ||
416 | {.type = ACPI_TYPE_INTEGER,}, | ||
417 | {.type = ACPI_TYPE_INTEGER,}, | ||
418 | {.type = ACPI_TYPE_BUFFER,}, | ||
419 | }; | ||
420 | struct acpi_object_list arg_list = {3, params}; | ||
421 | |||
422 | params[0].integer.value = ACPI_PROCESSOR_AGGREGATOR_NOTIFY; | ||
423 | params[1].integer.value = stat; | ||
424 | params[2].buffer.length = 4; | ||
425 | params[2].buffer.pointer = (void *)&idle_cpus; | ||
426 | acpi_evaluate_object(handle, "_OST", &arg_list, NULL); | ||
427 | } | ||
428 | |||
429 | static void acpi_pad_handle_notify(acpi_handle handle) | 411 | static void acpi_pad_handle_notify(acpi_handle handle) |
430 | { | 412 | { |
431 | int num_cpus; | 413 | int num_cpus; |
432 | uint32_t idle_cpus; | 414 | uint32_t idle_cpus; |
415 | struct acpi_buffer param = { | ||
416 | .length = 4, | ||
417 | .pointer = (void *)&idle_cpus, | ||
418 | }; | ||
433 | 419 | ||
434 | mutex_lock(&isolated_cpus_lock); | 420 | mutex_lock(&isolated_cpus_lock); |
435 | num_cpus = acpi_pad_pur(handle); | 421 | num_cpus = acpi_pad_pur(handle); |
@@ -439,7 +425,7 @@ static void acpi_pad_handle_notify(acpi_handle handle) | |||
439 | } | 425 | } |
440 | acpi_pad_idle_cpus(num_cpus); | 426 | acpi_pad_idle_cpus(num_cpus); |
441 | idle_cpus = acpi_pad_idle_cpus_num(); | 427 | idle_cpus = acpi_pad_idle_cpus_num(); |
442 | acpi_pad_ost(handle, 0, idle_cpus); | 428 | acpi_evaluate_ost(handle, ACPI_PROCESSOR_AGGREGATOR_NOTIFY, 0, ¶m); |
443 | mutex_unlock(&isolated_cpus_lock); | 429 | mutex_unlock(&isolated_cpus_lock); |
444 | } | 430 | } |
445 | 431 | ||