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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:57 +0000 (13:32 +0100)
[ Upstream commit 84d56f326a8ef0071df8c0c3b983b9e2c3b73006 ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/acpi/video_detect.c

index 375d1ef..0ab98f2 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,14 +230,6 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
        },
        {
         .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 */
         .matches = {
                        DMI_MATCH(DMI_SYS_VENDOR, "Xiaomi Inc"),
@@ -601,6 +597,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