Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a1aabd5f authored by Michał Kępień's avatar Michał Kępień Committed by Darren Hart (VMware)
Browse files

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: default avatarMichał Kępień <kernel@kempniu.pl>
Reviewed-by: default avatarJonathan Woithe <jwoithe@just42.net>
Signed-off-by: default avatarDarren Hart (VMware) <dvhart@infradead.org>
parent 07acf62a
Loading
Loading
Loading
Loading
+6 −17
Original line number Diff line number Diff line
@@ -550,16 +550,17 @@ 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,
	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,
		},
};