|
Kyle McMartin |
592f4fb |
From baa7ac7527ee3990007fb28b59ec1d73b922ddaa Mon Sep 17 00:00:00 2001
|
|
Kyle McMartin |
592f4fb |
From: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
|
|
Kyle McMartin |
592f4fb |
Date: Mon, 9 Aug 2010 23:48:19 -0300
|
|
Kyle McMartin |
592f4fb |
Subject: [PATCH] thinkpad-acpi: untangle ACPI/vendor backlight selection
|
|
Kyle McMartin |
592f4fb |
|
|
Kyle McMartin |
592f4fb |
acpi_video_backlight_support() already tells us if ACPI is handling
|
|
Kyle McMartin |
592f4fb |
backlight control through the generic ACPI handle. It is better to just
|
|
Kyle McMartin |
592f4fb |
trust it.
|
|
Kyle McMartin |
592f4fb |
|
|
Kyle McMartin |
592f4fb |
While at it, adjust down a printk priority, and test earlier for
|
|
Kyle McMartin |
592f4fb |
brightness_enable=0.
|
|
Kyle McMartin |
592f4fb |
|
|
Kyle McMartin |
592f4fb |
Signed-off-by: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
|
|
Kyle McMartin |
592f4fb |
Signed-off-by: Matthew Garrett <mjg@redhat.com>
|
|
Kyle McMartin |
592f4fb |
---
|
|
Kyle McMartin |
592f4fb |
Documentation/laptops/thinkpad-acpi.txt | 4 +++
|
|
Kyle McMartin |
592f4fb |
drivers/platform/x86/thinkpad_acpi.c | 42 ++++++++++++++----------------
|
|
Kyle McMartin |
592f4fb |
2 files changed, 24 insertions(+), 22 deletions(-)
|
|
Kyle McMartin |
592f4fb |
|
|
Kyle McMartin |
592f4fb |
diff --git a/Documentation/laptops/thinkpad-acpi.txt b/Documentation/laptops/thinkpad-acpi.txt
|
|
Kyle McMartin |
592f4fb |
index fc15538..720ba04 100644
|
|
Kyle McMartin |
592f4fb |
--- a/Documentation/laptops/thinkpad-acpi.txt
|
|
Kyle McMartin |
592f4fb |
+++ b/Documentation/laptops/thinkpad-acpi.txt
|
|
Kyle McMartin |
592f4fb |
@@ -1073,6 +1073,10 @@ ThinkPad-specific interface. The driver will disable its native
|
|
Kyle McMartin |
592f4fb |
backlight brightness control interface if it detects that the standard
|
|
Kyle McMartin |
592f4fb |
ACPI interface is available in the ThinkPad.
|
|
Jesse Keating |
7a32965 |
|
|
Kyle McMartin |
592f4fb |
+If you want to use the thinkpad-acpi backlight brightness control
|
|
Kyle McMartin |
592f4fb |
+instead of the generic ACPI video backlight brightness control for some
|
|
Kyle McMartin |
592f4fb |
+reason, you should use the acpi_backlight=vendor kernel parameter.
|
|
Kyle McMartin |
592f4fb |
+
|
|
Kyle McMartin |
592f4fb |
The brightness_enable module parameter can be used to control whether
|
|
Kyle McMartin |
592f4fb |
the LCD brightness control feature will be enabled when available.
|
|
Kyle McMartin |
592f4fb |
brightness_enable=0 forces it to be disabled. brightness_enable=1
|
|
Kyle McMartin |
592f4fb |
diff --git a/drivers/platform/x86/thinkpad_acpi.c b/drivers/platform/x86/thinkpad_acpi.c
|
|
Kyle McMartin |
592f4fb |
index 4bdb137..b383cc6 100644
|
|
Kyle McMartin |
592f4fb |
--- a/drivers/platform/x86/thinkpad_acpi.c
|
|
Kyle McMartin |
592f4fb |
+++ b/drivers/platform/x86/thinkpad_acpi.c
|
|
Kyle McMartin |
592f4fb |
@@ -6313,28 +6313,6 @@ static int __init brightness_init(struct ibm_init_struct *iibm)
|
|
Kyle McMartin |
592f4fb |
if (tp_features.bright_unkfw)
|
|
Kyle McMartin |
592f4fb |
return 1;
|
|
Jesse Keating |
7a32965 |
|
|
Kyle McMartin |
592f4fb |
- if (tp_features.bright_acpimode) {
|
|
Jesse Keating |
7a32965 |
- if (acpi_video_backlight_support()) {
|
|
Jesse Keating |
7a32965 |
- if (brightness_enable > 1) {
|
|
Jesse Keating |
7a32965 |
- printk(TPACPI_NOTICE
|
|
Jesse Keating |
7a32965 |
- "Standard ACPI backlight interface "
|
|
Jesse Keating |
7a32965 |
- "available, not loading native one.\n");
|
|
Jesse Keating |
7a32965 |
- return 1;
|
|
Jesse Keating |
7a32965 |
- } else if (brightness_enable == 1) {
|
|
Jesse Keating |
7a32965 |
- printk(TPACPI_NOTICE
|
|
Jesse Keating |
7a32965 |
- "Backlight control force enabled, even if standard "
|
|
Jesse Keating |
7a32965 |
- "ACPI backlight interface is available\n");
|
|
Jesse Keating |
7a32965 |
- }
|
|
Jesse Keating |
7a32965 |
- } else {
|
|
Jesse Keating |
7a32965 |
- if (brightness_enable > 1) {
|
|
Jesse Keating |
7a32965 |
- printk(TPACPI_NOTICE
|
|
Jesse Keating |
7a32965 |
- "Standard ACPI backlight interface not "
|
|
Jesse Keating |
7a32965 |
- "available, thinkpad_acpi native "
|
|
Jesse Keating |
7a32965 |
- "brightness control enabled\n");
|
|
Jesse Keating |
7a32965 |
- }
|
|
Kyle McMartin |
592f4fb |
- }
|
|
Kyle McMartin |
592f4fb |
- }
|
|
Kyle McMartin |
592f4fb |
-
|
|
Kyle McMartin |
592f4fb |
if (!brightness_enable) {
|
|
Kyle McMartin |
592f4fb |
dbg_printk(TPACPI_DBG_INIT | TPACPI_DBG_BRGHT,
|
|
Kyle McMartin |
592f4fb |
"brightness support disabled by "
|
|
Kyle McMartin |
592f4fb |
@@ -6342,6 +6320,26 @@ static int __init brightness_init(struct ibm_init_struct *iibm)
|
|
Kyle McMartin |
592f4fb |
return 1;
|
|
Kyle McMartin |
592f4fb |
}
|
|
Kyle McMartin |
592f4fb |
|
|
Jesse Keating |
7a32965 |
+ if (acpi_video_backlight_support()) {
|
|
Jesse Keating |
7a32965 |
+ if (brightness_enable > 1) {
|
|
Kyle McMartin |
592f4fb |
+ printk(TPACPI_INFO
|
|
Jesse Keating |
7a32965 |
+ "Standard ACPI backlight interface "
|
|
Jesse Keating |
7a32965 |
+ "available, not loading native one.\n");
|
|
Jesse Keating |
7a32965 |
+ return 1;
|
|
Jesse Keating |
7a32965 |
+ } else if (brightness_enable == 1) {
|
|
Kyle McMartin |
592f4fb |
+ printk(TPACPI_WARN
|
|
Kyle McMartin |
592f4fb |
+ "Cannot enable backlight brightness support, "
|
|
Kyle McMartin |
592f4fb |
+ "ACPI is already handling it. Refer to the "
|
|
Kyle McMartin |
592f4fb |
+ "acpi_backlight kernel parameter\n");
|
|
Kyle McMartin |
592f4fb |
+ return 1;
|
|
Jesse Keating |
7a32965 |
+ }
|
|
Kyle McMartin |
592f4fb |
+ } else if (tp_features.bright_acpimode && brightness_enable > 1) {
|
|
Kyle McMartin |
592f4fb |
+ printk(TPACPI_NOTICE
|
|
Kyle McMartin |
592f4fb |
+ "Standard ACPI backlight interface not "
|
|
Kyle McMartin |
592f4fb |
+ "available, thinkpad_acpi native "
|
|
Kyle McMartin |
592f4fb |
+ "brightness control enabled\n");
|
|
Kyle McMartin |
592f4fb |
+ }
|
|
Kyle McMartin |
592f4fb |
+
|
|
Kyle McMartin |
592f4fb |
/*
|
|
Kyle McMartin |
592f4fb |
* Check for module parameter bogosity, note that we
|
|
Kyle McMartin |
592f4fb |
* init brightness_mode to TPACPI_BRGHT_MODE_MAX in order to be
|
|
Kyle McMartin |
592f4fb |
--
|
|
Kyle McMartin |
592f4fb |
1.7.3.2
|
|
Kyle McMartin |
592f4fb |
|