Hello, I own an ASUS FX505DT (integrated vega amdgpu), and the backlight control seems to be conflicting with the asus-nb-wmi driver. Upon booting normally with a standard kernel 5.3.7 on Arch, the asus-nb-wmi driver gets loaded properly. It does not create any backlight devices in /sys/class/backlight. However, ACPI-video seems to fail to get created and I get This in my systemd log: systemd-backlight[771]: Failed to get backlight or LED device 'backlight:acpi_vi deo0': No such device This implies that acpi_video0 gets registered by systemd but fails early on during the boot process. Regardless, backlight seems to work fine using the hotkeys as the only device present in /sys/class/backlight is amdgpu_bl0. As any sane person, I want to remove those nasty fail messages from my log. with the solution being to set acpi_backlight=vendor in my boot flags, which stops acpi_video0 from being registered and removes the log, however asus-nb-wmi kicks in and registers it's own backlight device. There are two backlight devices currently active amdgpu_bl0 and asus-nb-wmi and the latter does not control the backlight but seems to take priority in the keybinds. I looked throught the driver and implemented the following: index b361c73..e0ca145 100644 --- a/drivers/platform/x86/asus-nb-wmi.c +++ b/drivers/platform/x86/asus-nb-wmi.c @@ -105,6 +105,11 @@ static struct quirk_entry quirk_asus_x550lb = { .xusb2pr = 0x01D9, }; +static struct quirk_entry quirk_asus_fx505dt = { + .wmi_backlight_power = true, + .wmi_backlight_set_devstate = true, +}; + static struct quirk_entry quirk_asus_forceals = { .wmi_backlight_set_devstate = true, .wmi_force_als_set = true, @@ -411,6 +416,15 @@ static const struct dmi_system_id asus_quirks[] = { }, .driver_data = &quirk_asus_forceals, }, + { + .callback = dmi_matched, + .ident = "ASUSTeK COMPUTER INC. FX505DT TESTING", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "ASUSTeK COMPUTER INC."), + DMI_MATCH(DMI_PRODUCT_NAME, "FX505DT"), + }, + .driver_data = &quirk_asus_fx505dt, + }, {}, }; where wmi_backlight_power is supposed to prevent the creation (or use) of this new backlight device. However this does not seem to be the case. So far the only way the backlight works is with acpi_backlight not defined at all. If I set it to anything, even video, it creates another worthless backlight device. I do believe this is either a bug in asus-wmi and wmi_backlight_power doing not what it's supposed to. Either that or I am mistaken as to how any of this works, and would like help with implementing my device.