@@ -219,16 +219,16 @@ static u32 dbg_level = 0x03;
static int call_fext_func(int cmd, int arg0, int arg1, int arg2)
{
- acpi_status status = AE_OK;
union acpi_object params[4] = {
- { .type = ACPI_TYPE_INTEGER },
- { .type = ACPI_TYPE_INTEGER },
- { .type = ACPI_TYPE_INTEGER },
- { .type = ACPI_TYPE_INTEGER }
+ { .integer.type = ACPI_TYPE_INTEGER, .integer.value = cmd },
+ { .integer.type = ACPI_TYPE_INTEGER, .integer.value = arg0 },
+ { .integer.type = ACPI_TYPE_INTEGER, .integer.value = arg1 },
+ { .integer.type = ACPI_TYPE_INTEGER, .integer.value = arg2 }
};
- struct acpi_object_list arg_list = { 4, ¶ms[0] };
+ struct acpi_object_list arg_list = { 4, params };
unsigned long long value;
- acpi_handle handle = NULL;
+ acpi_status status;
+ acpi_handle handle;
status = acpi_get_handle(fujitsu_laptop->acpi_handle, "FUNC", &handle);
if (ACPI_FAILURE(status)) {
@@ -237,11 +237,6 @@ static int call_fext_func(int cmd, int arg0, int arg1, int arg2)
return -ENODEV;
}
- params[0].integer.value = cmd;
- params[1].integer.value = arg0;
- params[2].integer.value = arg1;
- params[3].integer.value = arg2;
-
status = acpi_evaluate_integer(handle, NULL, &arg_list, &value);
if (ACPI_FAILURE(status)) {
vdbg_printk(FUJLAPTOP_DBG_WARN,
Set values of FUNC call parameters in a designated initializer. Do not initialize status and handle variables as the values these are initialized to have no influence on execution flow. Use an array variable instead of the address of the first element of that array. Signed-off-by: Michał Kępień <kernel@kempniu.pl> --- drivers/platform/x86/fujitsu-laptop.c | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-)