浏览代码

ACPI: dock: convert acpi_evaluate_object() to acpi_evaluate_integer()

acpi_evaluate_integer() is an ACPI API introduced to evaluate an
ACPI control method that is known to have an integer return value.
This API can simplify the code because the calling function does not need to
use the specified acpi_buffer structure required by acpi_evaluate_object();

Convert acpi_evaluate_object() to acpi_evaluate_integer()
in drivers/acpi/dock.c in this patch.

Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Zhang Rui 12 年之前
父节点
当前提交
6a868e171c
共有 1 个文件被更改,包括 2 次插入4 次删除
  1. 2 4
      drivers/acpi/dock.c

+ 2 - 4
drivers/acpi/dock.c

@@ -441,7 +441,7 @@ static void handle_dock(struct dock_station *ds, int dock)
 	acpi_status status;
 	acpi_status status;
 	struct acpi_object_list arg_list;
 	struct acpi_object_list arg_list;
 	union acpi_object arg;
 	union acpi_object arg;
-	struct acpi_buffer buffer = { ACPI_ALLOCATE_BUFFER, NULL };
+	unsigned long long value;
 
 
 	acpi_handle_info(ds->handle, "%s\n", dock ? "docking" : "undocking");
 	acpi_handle_info(ds->handle, "%s\n", dock ? "docking" : "undocking");
 
 
@@ -450,12 +450,10 @@ static void handle_dock(struct dock_station *ds, int dock)
 	arg_list.pointer = &arg;
 	arg_list.pointer = &arg;
 	arg.type = ACPI_TYPE_INTEGER;
 	arg.type = ACPI_TYPE_INTEGER;
 	arg.integer.value = dock;
 	arg.integer.value = dock;
-	status = acpi_evaluate_object(ds->handle, "_DCK", &arg_list, &buffer);
+	status = acpi_evaluate_integer(ds->handle, "_DCK", &arg_list, &value);
 	if (ACPI_FAILURE(status) && status != AE_NOT_FOUND)
 	if (ACPI_FAILURE(status) && status != AE_NOT_FOUND)
 		acpi_handle_err(ds->handle, "Failed to execute _DCK (0x%x)\n",
 		acpi_handle_err(ds->handle, "Failed to execute _DCK (0x%x)\n",
 				status);
 				status);
-
-	kfree(buffer.pointer);
 }
 }
 
 
 static inline void dock(struct dock_station *ds)
 static inline void dock(struct dock_station *ds)