Thanks, Hans: On Mon, Oct 31, 2022 at 10:25:56PM +0100, Hans de Goede wrote: > The Dell G15 5515 has the WMI interface (and WMI call returns) expected > by the nvidia-wmi-ec-backlight interface. But the backlight class device > registered by the nvidia-wmi-ec-backlight driver does not actually work. > > The amdgpu_bl0 native GPU backlight class device does actually work, > add a backlight=native DMI quirk for this. I'm not certain whether you have direct access to the system, but I am curious as to what mode the system is in when it exposes a non-working WMI backlight interface. The expectation is that the WMI EC backlight interface should only be exposed when the system is in dynamic mode (different vendors may call this differeint things in the EFI setup menus), and the native backlight interfaces for the GPUs, be they discrete or integrated, should only be exposed when a mode that keeps only one of the GPUs connected to the panel; i.e., in discrete-only mode the discrete GPU should have a working native backlight interface, and in integrated-only mode, or a hybrid mode which does not allow dynamic mux switching, the integrated GPU should have a working native backlight interface. For this notebook the AMD GPU would be the integrated one, so if the system is *not* in dynamic switch mode, and the WMI interface is reporting that the backlight should be handled by the EC, then that is certainly a bug in the system, and this would be the correct workaround, when the system is operating in an iGPU-only or non-dynamic hybrid mode. However, if the system is switched to a dynamic mode, then this would break the EC backlight, which should be the corect backlight interface for that case. Another possible system bug would be if the condition described in the change description occurs when the system *is* in a dynamic mode, but is routing backlight control to the iGPU anyway. That would be a messier bug to deal with, since it would also be necessary to determine which backlight interface is functional when the display is switched over to the dGPU. If it's not too much trouble could you (or the reporter, if you don't have the system) check which backlight interfaces are exposed, and which of those actually work, for each of the different hybrid GPU modes? I am not certain what they would be called on the setup screen, but the possible modes should be: * Integrated only * Discrete only * Hybrid, without dynamic switching * Hybrid, with dynamic switching , or a subset thereof. Usually I would expect the minimal subset to be discrete only plus one or both of the hybrid modes. Since we're not sure what these are called on the setup screen it is probably best to simply report the names of the mode as they are listed in the UI. > Cc: Daniel Dadap <ddadap@xxxxxxxxxx> > Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx> > --- > drivers/acpi/video_detect.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c > index 841f6213b4de..88acc09773bb 100644 > --- a/drivers/acpi/video_detect.c > +++ b/drivers/acpi/video_detect.c > @@ -645,6 +645,16 @@ static const struct dmi_system_id video_detect_dmi_table[] = { > }, > }, > > + /* Models which have nvidia-ec-wmi support, but should not use it. */ > + { > + .callback = video_detect_force_native, > + /* Dell G15 5515 */ > + .matches = { > + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), > + DMI_MATCH(DMI_PRODUCT_NAME, "Dell G15 5515"), > + }, > + }, > + > /* > * Desktops which falsely report a backlight and which our heuristics > * for this do not catch. > -- > 2.37.3 >