mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-21 03:33:59 +08:00
asus-laptop: platform dev as parent for led and backlight
Makes asus-laptop platform device the parent device of backlight and led classes. With this patch, leds and backlight are also available in /sys/devices/platform/asus-laptop/ like thinkpad_acpi. Signed-off-by: Corentin Chary <corentincj@iksaif.net> Signed-off-by: Len Brown <len.brown@intel.com>
This commit is contained in:
parent
cede2cb6ee
commit
116bf2e010
@ -1321,7 +1321,6 @@ out:
|
|||||||
|
|
||||||
static int __init asus_laptop_init(void)
|
static int __init asus_laptop_init(void)
|
||||||
{
|
{
|
||||||
struct device *dev;
|
|
||||||
int result;
|
int result;
|
||||||
|
|
||||||
if (acpi_disabled)
|
if (acpi_disabled)
|
||||||
@ -1343,24 +1342,10 @@ static int __init asus_laptop_init(void)
|
|||||||
return -ENODEV;
|
return -ENODEV;
|
||||||
}
|
}
|
||||||
|
|
||||||
dev = acpi_get_physical_device(hotk->device->handle);
|
|
||||||
|
|
||||||
if (!acpi_video_backlight_support()) {
|
|
||||||
result = asus_backlight_init(dev);
|
|
||||||
if (result)
|
|
||||||
goto fail_backlight;
|
|
||||||
} else
|
|
||||||
printk(ASUS_INFO "Brightness ignored, must be controlled by "
|
|
||||||
"ACPI video driver\n");
|
|
||||||
|
|
||||||
result = asus_input_init();
|
result = asus_input_init();
|
||||||
if (result)
|
if (result)
|
||||||
goto fail_input;
|
goto fail_input;
|
||||||
|
|
||||||
result = asus_led_init(dev);
|
|
||||||
if (result)
|
|
||||||
goto fail_led;
|
|
||||||
|
|
||||||
/* Register platform stuff */
|
/* Register platform stuff */
|
||||||
result = platform_driver_register(&asuspf_driver);
|
result = platform_driver_register(&asuspf_driver);
|
||||||
if (result)
|
if (result)
|
||||||
@ -1381,8 +1366,27 @@ static int __init asus_laptop_init(void)
|
|||||||
if (result)
|
if (result)
|
||||||
goto fail_sysfs;
|
goto fail_sysfs;
|
||||||
|
|
||||||
|
result = asus_led_init(&asuspf_device->dev);
|
||||||
|
if (result)
|
||||||
|
goto fail_led;
|
||||||
|
|
||||||
|
if (!acpi_video_backlight_support()) {
|
||||||
|
result = asus_backlight_init(&asuspf_device->dev);
|
||||||
|
if (result)
|
||||||
|
goto fail_backlight;
|
||||||
|
} else
|
||||||
|
printk(ASUS_INFO "Brightness ignored, must be controlled by "
|
||||||
|
"ACPI video driver\n");
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
|
fail_backlight:
|
||||||
|
asus_led_exit();
|
||||||
|
|
||||||
|
fail_led:
|
||||||
|
sysfs_remove_group(&asuspf_device->dev.kobj,
|
||||||
|
&asuspf_attribute_group);
|
||||||
|
|
||||||
fail_sysfs:
|
fail_sysfs:
|
||||||
platform_device_del(asuspf_device);
|
platform_device_del(asuspf_device);
|
||||||
|
|
||||||
@ -1393,15 +1397,9 @@ fail_platform_device1:
|
|||||||
platform_driver_unregister(&asuspf_driver);
|
platform_driver_unregister(&asuspf_driver);
|
||||||
|
|
||||||
fail_platform_driver:
|
fail_platform_driver:
|
||||||
asus_led_exit();
|
|
||||||
|
|
||||||
fail_led:
|
|
||||||
asus_input_exit();
|
asus_input_exit();
|
||||||
|
|
||||||
fail_input:
|
fail_input:
|
||||||
asus_backlight_exit();
|
|
||||||
|
|
||||||
fail_backlight:
|
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user