Skip to content

Commit

Permalink
sony-laptop: input initialization should be done before SNC
Browse files Browse the repository at this point in the history
SNC needs input devices so better have those ready before starting
handle events.

Signed-off-by: Mattia Dongili <malattia@linux.it>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
  • Loading branch information
Mattia Dongili authored and Matthew Garrett committed Jun 26, 2012
1 parent 014fc8f commit ca3c2c7
Showing 1 changed file with 12 additions and 13 deletions.
25 changes: 12 additions & 13 deletions drivers/platform/x86/sony-laptop.c
Original file line number Diff line number Diff line change
Expand Up @@ -2642,6 +2642,12 @@ static int sony_nc_add(struct acpi_device *device)
}
}

result = sony_laptop_setup_input(device);
if (result) {
pr_err("Unable to create input devices\n");
goto outplatform;
}

if (ACPI_SUCCESS(acpi_get_handle(sony_nc_acpi_handle, "ECON",
&handle))) {
int arg = 1;
Expand All @@ -2659,12 +2665,6 @@ static int sony_nc_add(struct acpi_device *device)
}

/* setup input devices and helper fifo */
result = sony_laptop_setup_input(device);
if (result) {
pr_err("Unable to create input devices\n");
goto outsnc;
}

if (acpi_video_backlight_support()) {
pr_info("brightness ignored, must be controlled by ACPI video driver\n");
} else {
Expand Down Expand Up @@ -2712,22 +2712,21 @@ static int sony_nc_add(struct acpi_device *device)

return 0;

out_sysfs:
out_sysfs:
for (item = sony_nc_values; item->name; ++item) {
device_remove_file(&sony_pf_device->dev, &item->devattr);
}
sony_nc_backlight_cleanup();

sony_laptop_remove_input();

outsnc:
sony_nc_function_cleanup(sony_pf_device);
sony_nc_handles_cleanup(sony_pf_device);

outpresent:
outplatform:
sony_laptop_remove_input();

outpresent:
sony_pf_remove();

outwalk:
outwalk:
sony_nc_rfkill_cleanup();
return result;
}
Expand Down

0 comments on commit ca3c2c7

Please sign in to comment.