platform/x86: thinkpad_acpi: not loading brightness_init when _BCL invalid
authorAaron Ma <aaron.ma@canonical.com>
Fri, 10 Jul 2020 01:56:14 +0000 (09:56 +0800)
committerAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Wed, 15 Jul 2020 09:45:06 +0000 (12:45 +0300)
When _BCL invalid, disable thinkpad_acpi backlight brightness control.

brightness_enable is already checked at the beginning.
Most new thinkpads are using GPU driver to control brightness now,
print notice when enabled brightness control even when brightness_enable = 1.

Signed-off-by: Aaron Ma <aaron.ma@canonical.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
drivers/platform/x86/thinkpad_acpi.c

index 7fee3c1..a703ab7 100644 (file)
@@ -6963,10 +6963,13 @@ static int __init brightness_init(struct ibm_init_struct *iibm)
                        pr_warn("Cannot enable backlight brightness support, ACPI is already handling it.  Refer to the acpi_backlight kernel parameter.\n");
                        return 1;
                }
-       } else if (tp_features.bright_acpimode && brightness_enable > 1) {
-               pr_notice("Standard ACPI backlight interface not available, thinkpad_acpi native brightness control enabled\n");
+       } else if (!tp_features.bright_acpimode) {
+               pr_notice("ACPI backlight interface not available\n");
+               return 1;
        }
 
+       pr_notice("ACPI native brightness control enabled\n");
+
        /*
         * Check for module parameter bogosity, note that we
         * init brightness_mode to TPACPI_BRGHT_MODE_MAX in order to be