1 From: Thomas Renninger <trenn@suse.de>
2 Subject: [PATCH] fujitsu-laptop: fingers off backlight if video.ko is serving this functionality
3 Patch-Mainline: queued for .28 in Len's/ak's ACPI tree
5 commit 44cce15b053d27477980e34b1086e0c3ce642afe
7 Signed-off-by: Thomas Renninger <trenn@suse.de>
8 Signed-off-by: Andi Kleen <ak@linux.intel.com>
10 drivers/misc/fujitsu-laptop.c | 26 ++++++++++++++------------
11 1 file changed, 14 insertions(+), 12 deletions(-)
13 --- a/drivers/misc/fujitsu-laptop.c
14 +++ b/drivers/misc/fujitsu-laptop.c
15 @@ -970,16 +970,16 @@ static int __init fujitsu_init(void)
17 /* Register backlight stuff */
19 - fujitsu->bl_device =
20 - backlight_device_register("fujitsu-laptop", NULL, NULL,
22 - if (IS_ERR(fujitsu->bl_device))
23 - return PTR_ERR(fujitsu->bl_device);
25 - max_brightness = fujitsu->max_brightness;
27 - fujitsu->bl_device->props.max_brightness = max_brightness - 1;
28 - fujitsu->bl_device->props.brightness = fujitsu->brightness_level;
29 + if (!acpi_video_backlight_support()) {
30 + fujitsu->bl_device =
31 + backlight_device_register("fujitsu-laptop", NULL, NULL,
33 + if (IS_ERR(fujitsu->bl_device))
34 + return PTR_ERR(fujitsu->bl_device);
35 + max_brightness = fujitsu->max_brightness;
36 + fujitsu->bl_device->props.max_brightness = max_brightness - 1;
37 + fujitsu->bl_device->props.brightness = fujitsu->brightness_level;
40 ret = platform_driver_register(&fujitsupf_driver);
42 @@ -1015,7 +1015,8 @@ fail_hotkey:
46 - backlight_device_unregister(fujitsu->bl_device);
47 + if (fujitsu->bl_device)
48 + backlight_device_unregister(fujitsu->bl_device);
50 fail_platform_device2:
52 @@ -1042,7 +1043,8 @@ static void __exit fujitsu_cleanup(void)
53 &fujitsupf_attribute_group);
54 platform_device_unregister(fujitsu->pf_device);
55 platform_driver_unregister(&fujitsupf_driver);
56 - backlight_device_unregister(fujitsu->bl_device);
57 + if (fujitsu->bl_device)
58 + backlight_device_unregister(fujitsu->bl_device);
60 acpi_bus_unregister_driver(&acpi_fujitsu_driver);