ACPI: video: Change Sony Vaio VPCEH3U1E quirk to force_native
authorHans de Goede <hdegoede@redhat.com>
Mon, 14 Nov 2022 14:44:55 +0000 (15:44 +0100)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 16 Nov 2022 18:52:48 +0000 (19:52 +0100)
According to: https://bugzilla.kernel.org/show_bug.cgi?id=202401
the Sony Vaio VPCEH3U1E quirk was added to disable the acpi_video0
backlight interface because that was not working, so that userspace
will pick the actually working native nv_backlight interface instead.

With the new kernel behavior of hiding native interfaces unless
acpi_video_get_backlight_type() returns native, the current
video_detect_force_vendor quirk will cause the working nv_backlight
interface will be disabled too.

Change the quirk to video_detect_force_native to get the desired
result of only registering the nv_backlight interface.

After this all currently remaining force_vendor quirks in
video_detect_dmi_table[] are there to prefer a vendor interface over
a non working ACPI video interface, add a comment to document this.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/video_detect.c

index a1ac7de186beeb07f0387188af3333bfeca617cd..327e0967ba54564712b99a3b5b20accc3ad96c0e 100644 (file)
@@ -132,6 +132,10 @@ static int video_detect_force_none(const struct dmi_system_id *d)
 }
 
 static const struct dmi_system_id video_detect_dmi_table[] = {
+       /*
+        * Models which should use the vendor backlight interface,
+        * because of broken ACPI video backlight control.
+        */
        {
         /* https://bugzilla.redhat.com/show_bug.cgi?id=1128309 */
         .callback = video_detect_force_vendor,
@@ -226,15 +230,6 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
                DMI_MATCH(DMI_BOARD_NAME, "NC210/NC110"),
                },
        },
-       {
-        /* https://bugzilla.kernel.org/show_bug.cgi?id=202401 */
-        .callback = video_detect_force_vendor,
-        /* Sony VPCEH3U1E */
-        .matches = {
-               DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
-               DMI_MATCH(DMI_PRODUCT_NAME, "VPCEH3U1E"),
-               },
-       },
        {
         .callback = video_detect_force_vendor,
         /* Xiaomi Mi Pad 2 */
@@ -604,6 +599,15 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
                DMI_MATCH(DMI_BOARD_NAME, "N250P"),
                },
        },
+       {
+        /* https://bugzilla.kernel.org/show_bug.cgi?id=202401 */
+        .callback = video_detect_force_native,
+        /* Sony Vaio VPCEH3U1E */
+        .matches = {
+               DMI_MATCH(DMI_SYS_VENDOR, "Sony Corporation"),
+               DMI_MATCH(DMI_PRODUCT_NAME, "VPCEH3U1E"),
+               },
+       },
 
        /*
         * These Toshibas have a broken acpi-video interface for brightness