platform/x86: fujitsu-laptop: switch to a managed backlight device
Use a managed backlight device to get rid of acpi_fujitsu_bl_remove(). Change the parent of the backlight device from NULL to the FUJ02B1 ACPI device as the latter is required for the backlight device to work. Signed-off-by: Michał Kępień <kernel@kempniu.pl> Reviewed-by: Jonathan Woithe <jwoithe@just42.net> Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
This commit is contained in:
parent
07acf62a40
commit
a1aabd5f36
|
@ -550,17 +550,18 @@ static int acpi_fujitsu_bl_input_setup(struct acpi_device *device)
|
|||
return input_register_device(fujitsu_bl->input);
|
||||
}
|
||||
|
||||
static int fujitsu_backlight_register(void)
|
||||
static int fujitsu_backlight_register(struct acpi_device *device)
|
||||
{
|
||||
struct backlight_properties props = {
|
||||
const struct backlight_properties props = {
|
||||
.brightness = fujitsu_bl->brightness_level,
|
||||
.max_brightness = fujitsu_bl->max_brightness - 1,
|
||||
.type = BACKLIGHT_PLATFORM
|
||||
};
|
||||
struct backlight_device *bd;
|
||||
|
||||
bd = backlight_device_register("fujitsu-laptop", NULL, NULL,
|
||||
&fujitsu_bl_ops, &props);
|
||||
bd = devm_backlight_device_register(&device->dev, "fujitsu-laptop",
|
||||
&device->dev, NULL,
|
||||
&fujitsu_bl_ops, &props);
|
||||
if (IS_ERR(bd))
|
||||
return PTR_ERR(bd);
|
||||
|
||||
|
@ -629,24 +630,13 @@ static int acpi_fujitsu_bl_add(struct acpi_device *device)
|
|||
fujitsu_bl->max_brightness = FUJITSU_LCD_N_LEVELS;
|
||||
get_lcd_level();
|
||||
|
||||
error = fujitsu_backlight_register();
|
||||
error = fujitsu_backlight_register(device);
|
||||
if (error)
|
||||
return error;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int acpi_fujitsu_bl_remove(struct acpi_device *device)
|
||||
{
|
||||
struct fujitsu_bl *fujitsu_bl = acpi_driver_data(device);
|
||||
|
||||
backlight_device_unregister(fujitsu_bl->bl_device);
|
||||
|
||||
fujitsu_bl->acpi_handle = NULL;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* Brightness notify */
|
||||
|
||||
static void acpi_fujitsu_bl_notify(struct acpi_device *device, u32 event)
|
||||
|
@ -1077,7 +1067,6 @@ static struct acpi_driver acpi_fujitsu_bl_driver = {
|
|||
.ids = fujitsu_bl_device_ids,
|
||||
.ops = {
|
||||
.add = acpi_fujitsu_bl_add,
|
||||
.remove = acpi_fujitsu_bl_remove,
|
||||
.notify = acpi_fujitsu_bl_notify,
|
||||
},
|
||||
};
|
||||
|
|
Loading…
Reference in New Issue