On Tue, Mar 15, 2022 at 8:02 PM Werner Sembach <wse@xxxxxxxxxxxxxxxxxxx> wrote: > > Clevo NL5xRU and NL5xNU/TUXEDO Aura 15 Gen1 and Gen2 have both a working > native and video interface. However the default detection mechanism first > registers the video interface before unregistering it again and switching > to the native interface during boot. This results in a dangling SBIOS > request for backlight change for some reason, causing the backlight to > switch to ~2% once per boot on the first power cord connect or disconnect > event. Setting the native interface explicitly circumvents this buggy > behaviour by avoiding the unregistering process. > > Signed-off-by: Werner Sembach <wse@xxxxxxxxxxxxxxxxxxx> > Cc: stable@xxxxxxxxxxxxxxx > --- > drivers/acpi/video_detect.c | 75 +++++++++++++++++++++++++++++++++++++ > 1 file changed, 75 insertions(+) > > diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c > index 4f64713e9917..becc198e4c22 100644 > --- a/drivers/acpi/video_detect.c > +++ b/drivers/acpi/video_detect.c > @@ -415,6 +415,81 @@ static const struct dmi_system_id video_detect_dmi_table[] = { > DMI_MATCH(DMI_PRODUCT_NAME, "GA503"), > }, > }, > + /* > + * Clevo NL5xRU and NL5xNU/TUXEDO Aura 15 Gen1 and Gen2 have both a > + * working native and video interface. However the default detection > + * mechanism first registers the video interface before unregistering > + * it again and switching to the native interface during boot. This > + * results in a dangling SBIOS request for backlight change for some > + * reason, causing the backlight to switch to ~2% once per boot on the > + * first power cord connect or disconnect event. Setting the native > + * interface explicitly circumvents this buggy behaviour, by avoiding > + * the unregistering process. > + */ > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xRU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"), > + DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xRU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SchenkerTechnologiesGmbH"), > + DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xRU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "Notebook"), > + DMI_MATCH(DMI_BOARD_NAME, "NL5xRU"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xRU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"), > + DMI_MATCH(DMI_BOARD_NAME, "AURA1501"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xRU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"), > + DMI_MATCH(DMI_BOARD_NAME, "EDUBOOK1502"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xNU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "TUXEDO"), > + DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xNU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "SchenkerTechnologiesGmbH"), > + DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"), > + }, > + }, > + { > + .callback = video_detect_force_native, > + .ident = "Clevo NL5xNU", > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "Notebook"), > + DMI_MATCH(DMI_BOARD_NAME, "NL5xNU"), > + }, > + }, > > /* > * Desktops which falsely report a backlight and which our heuristics > -- Applied as 5.18 material, thanks!