From 886d8d374160144bb4bf9bcccd5a928c340a4885 Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Wed, 4 Jun 2014 20:12:18 -0700 Subject: [PATCH] 3.4-stable patches added patches: drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch drm-i915-panel-invert-brightness-acer-aspire-5734z.patch drm-i915-panel-invert-brightness-via-quirk.patch --- ...-invert-brightness-on-emachines-e725.patch | 34 +++++ ...-invert-brightness-on-emachines-g725.patch | 33 +++++ ...ert-brightness-on-packard-bell-ncl20.patch | 33 +++++ ...-invert-brightness-acer-aspire-5734z.patch | 45 +++++++ ...15-panel-invert-brightness-via-quirk.patch | 116 ++++++++++++++++++ queue-3.4/series | 5 + 6 files changed, 266 insertions(+) create mode 100644 queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch create mode 100644 queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch create mode 100644 queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch create mode 100644 queue-3.4/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch create mode 100644 queue-3.4/drm-i915-panel-invert-brightness-via-quirk.patch diff --git a/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch b/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch new file mode 100644 index 00000000000..d57ae23c373 --- /dev/null +++ b/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch @@ -0,0 +1,34 @@ +From 01e3a8feb40e54b962a20fa7eb595c5efef5e109 Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Tue, 22 Jan 2013 12:50:35 +0200 +Subject: drm/i915: add quirk to invert brightness on eMachines e725 + +From: Jani Nikula + +commit 01e3a8feb40e54b962a20fa7eb595c5efef5e109 upstream. + +Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=31522#c35 +[Note: There are more than one broken setups in the bug. This fixes one.] +Reported-by: Martins +Signed-off-by: Jani Nikula +Signed-off-by: Daniel Vetter +Signed-off-by: Ben Hutchings +[wml: Backported to 3.4: Adjust context] +Signed-off-by: Weng Meiling +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/i915/intel_display.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -9249,6 +9249,9 @@ struct intel_quirk intel_quirks[] = { + /* Acer/eMachines G725 */ + { 0x2a42, 0x1025, 0x0210, quirk_invert_brightness }, + ++ /* Acer/eMachines e725 */ ++ { 0x2a42, 0x1025, 0x0212, quirk_invert_brightness }, ++ + /* Dell XPS13 HD Sandy Bridge */ + { 0x0116, 0x1028, 0x052e, quirk_no_pcm_pwm_enable }, + /* Dell XPS13 HD and XPS13 FHD Ivy Bridge */ diff --git a/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch b/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch new file mode 100644 index 00000000000..23a30d2dd52 --- /dev/null +++ b/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch @@ -0,0 +1,33 @@ +From 1ffff60320879830e469e26062c18f75236822ba Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Tue, 22 Jan 2013 12:50:34 +0200 +Subject: drm/i915: add quirk to invert brightness on eMachines G725 + +From: Jani Nikula + +commit 1ffff60320879830e469e26062c18f75236822ba upstream. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=59628 +Reported-by: Roland Gruber +Signed-off-by: Jani Nikula +Signed-off-by: Daniel Vetter +Signed-off-by: Ben Hutchings +[wml: Backported to 3.4: Adjust context] +Signed-off-by: Weng Meiling +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/i915/intel_display.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -9246,6 +9246,9 @@ struct intel_quirk intel_quirks[] = { + /* Acer Aspire 5734Z must invert backlight brightness */ + { 0x2a42, 0x1025, 0x0459, quirk_invert_brightness }, + ++ /* Acer/eMachines G725 */ ++ { 0x2a42, 0x1025, 0x0210, quirk_invert_brightness }, ++ + /* Dell XPS13 HD Sandy Bridge */ + { 0x0116, 0x1028, 0x052e, quirk_no_pcm_pwm_enable }, + /* Dell XPS13 HD and XPS13 FHD Ivy Bridge */ diff --git a/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch b/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch new file mode 100644 index 00000000000..d7741b27205 --- /dev/null +++ b/queue-3.4/drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch @@ -0,0 +1,33 @@ +From 5559ecadad5a73b27f863e92f4b4f369501dce6f Mon Sep 17 00:00:00 2001 +From: Jani Nikula +Date: Tue, 22 Jan 2013 12:50:36 +0200 +Subject: drm/i915: add quirk to invert brightness on Packard Bell NCL20 + +From: Jani Nikula + +commit 5559ecadad5a73b27f863e92f4b4f369501dce6f upstream. + +Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=44156 +Reported-by: Alan Zimmerman +Signed-off-by: Jani Nikula +Signed-off-by: Daniel Vetter +Signed-off-by: Ben Hutchings +[wml: Backported to 3.4: Adjust context] +Signed-off-by: Weng Meiling +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/i915/intel_display.c | 3 +++ + 1 file changed, 3 insertions(+) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -9252,6 +9252,9 @@ struct intel_quirk intel_quirks[] = { + /* Acer/eMachines e725 */ + { 0x2a42, 0x1025, 0x0212, quirk_invert_brightness }, + ++ /* Acer/Packard Bell NCL20 */ ++ { 0x2a42, 0x1025, 0x034b, quirk_invert_brightness }, ++ + /* Dell XPS13 HD Sandy Bridge */ + { 0x0116, 0x1028, 0x052e, quirk_no_pcm_pwm_enable }, + /* Dell XPS13 HD and XPS13 FHD Ivy Bridge */ diff --git a/queue-3.4/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch b/queue-3.4/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch new file mode 100644 index 00000000000..24051a3752e --- /dev/null +++ b/queue-3.4/drm-i915-panel-invert-brightness-acer-aspire-5734z.patch @@ -0,0 +1,45 @@ +From 5a15ab5b93e4a3ebcd4fa6c76cf646a45e9cf806 Mon Sep 17 00:00:00 2001 +From: Carsten Emde +Date: Thu, 15 Mar 2012 15:56:27 +0100 +Subject: drm/i915: panel: invert brightness acer aspire 5734z + +commit 5a15ab5b93e4a3ebcd4fa6c76cf646a45e9cf806 upstream. + +Mark the Acer Aspire 5734Z that this machines requires the module to +invert the panel backlight brightness value after reading from and prior +to writing to the PCI configuration space. + +Signed-off-by: Carsten Emde +Acked-by: Chris Wilson +Signed-off-by: Daniel Vetter +Acked-by: Jani Nikula +Signed-off-by: Ben Hutchings +[wml: Backported to 3.4: Adjust context] +Signed-off-by: Weng Meiling +Signed-off-by: Greg Kroah-Hartman +--- + drivers/gpu/drm/i915/intel_display.c | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -9201,7 +9201,8 @@ static void quirk_no_pcm_pwm_enable(stru + } + + /* +- * A machine may need to invert the panel backlight brightness value ++ * A machine (e.g. Acer Aspire 5734Z) may need to invert the panel backlight ++ * brightness value + */ + static void quirk_invert_brightness(struct drm_device *dev) + { +@@ -9242,6 +9243,9 @@ struct intel_quirk intel_quirks[] = { + /* Sony Vaio Y cannot use SSC on LVDS */ + { 0x0046, 0x104d, 0x9076, quirk_ssc_force_disable }, + ++ /* Acer Aspire 5734Z must invert backlight brightness */ ++ { 0x2a42, 0x1025, 0x0459, quirk_invert_brightness }, ++ + /* Dell XPS13 HD Sandy Bridge */ + { 0x0116, 0x1028, 0x052e, quirk_no_pcm_pwm_enable }, + /* Dell XPS13 HD and XPS13 FHD Ivy Bridge */ diff --git a/queue-3.4/drm-i915-panel-invert-brightness-via-quirk.patch b/queue-3.4/drm-i915-panel-invert-brightness-via-quirk.patch new file mode 100644 index 00000000000..ab6857bf712 --- /dev/null +++ b/queue-3.4/drm-i915-panel-invert-brightness-via-quirk.patch @@ -0,0 +1,116 @@ +From 4dca20efb1a9c2efefc28ad2867e5d6c3f5e1955 Mon Sep 17 00:00:00 2001 +From: Carsten Emde +Date: Thu, 15 Mar 2012 15:56:26 +0100 +Subject: drm/i915: panel: invert brightness via quirk + +From: Carsten Emde + +commit 4dca20efb1a9c2efefc28ad2867e5d6c3f5e1955 upstream. + +A machine may need to invert the panel backlight brightness value. This +patch adds the infrastructure for a quirk to do so. + +Signed-off-by: Carsten Emde +Reviewed-by: Chris Wilson +Signed-off-by: Daniel Vetter +Acked-by: Jani Nikula +Signed-off-by: Ben Hutchings +[wml: Backported to 3.4: +- Adjust context +- one more flag QUIRK_NO_PCH_PWM_ENABLE] +Signed-off-by: Weng Meiling +Signed-off-by: Greg Kroah-Hartman +--- + Documentation/kernel-parameters.txt | 17 +++++++++++------ + drivers/gpu/drm/i915/i915_drv.h | 3 ++- + drivers/gpu/drm/i915/intel_display.c | 9 +++++++++ + drivers/gpu/drm/i915/intel_panel.c | 15 +++++++++++---- + 4 files changed, 33 insertions(+), 11 deletions(-) + +--- a/Documentation/kernel-parameters.txt ++++ b/Documentation/kernel-parameters.txt +@@ -993,14 +993,19 @@ bytes respectively. Such letter suffixes + i8k.restricted [HW] Allow controlling fans only if SYS_ADMIN + capability is set. + +- i915.invert_brightness ++ i915.invert_brightness= + [DRM] Invert the sense of the variable that is used to + set the brightness of the panel backlight. Normally a +- value of 0 indicates backlight switched off, and the +- maximum value sets the backlight to maximum brightness. +- If this parameter is specified, a value of 0 sets the +- backlight to maximum brightness, and the maximum value +- switches the backlight off. ++ brightness value of 0 indicates backlight switched off, ++ and the maximum of the brightness value sets the backlight ++ to maximum brightness. If this parameter is set to 0 ++ (default) and the machine requires it, or this parameter ++ is set to 1, a brightness value of 0 sets the backlight ++ to maximum brightness, and the maximum of the brightness ++ value switches the backlight off. ++ -1 -- never invert brightness ++ 0 -- machine default ++ 1 -- force brightness inversion + + icn= [HW,ISDN] + Format: [,[,[,]]] +--- a/drivers/gpu/drm/i915/i915_drv.h ++++ b/drivers/gpu/drm/i915/i915_drv.h +@@ -296,7 +296,8 @@ enum intel_pch { + + #define QUIRK_PIPEA_FORCE (1<<0) + #define QUIRK_LVDS_SSC_DISABLE (1<<1) +-#define QUIRK_NO_PCH_PWM_ENABLE (1<<2) ++#define QUIRK_INVERT_BRIGHTNESS (1<<2) ++#define QUIRK_NO_PCH_PWM_ENABLE (1<<3) + + struct intel_fbdev; + struct intel_fbc_work; +--- a/drivers/gpu/drm/i915/intel_display.c ++++ b/drivers/gpu/drm/i915/intel_display.c +@@ -9200,6 +9200,15 @@ static void quirk_no_pcm_pwm_enable(stru + DRM_INFO("applying no-PCH_PWM_ENABLE quirk\n"); + } + ++/* ++ * A machine may need to invert the panel backlight brightness value ++ */ ++static void quirk_invert_brightness(struct drm_device *dev) ++{ ++ struct drm_i915_private *dev_priv = dev->dev_private; ++ dev_priv->quirks |= QUIRK_INVERT_BRIGHTNESS; ++} ++ + struct intel_quirk { + int device; + int subsystem_vendor; +--- a/drivers/gpu/drm/i915/intel_panel.c ++++ b/drivers/gpu/drm/i915/intel_panel.c +@@ -190,15 +190,22 @@ u32 intel_panel_get_max_backlight(struct + return max; + } + +-static bool i915_panel_invert_brightness; +-MODULE_PARM_DESC(invert_brightness, "Invert backlight brightness, please " ++static int i915_panel_invert_brightness; ++MODULE_PARM_DESC(invert_brightness, "Invert backlight brightness " ++ "(-1 force normal, 0 machine defaults, 1 force inversion), please " + "report PCI device ID, subsystem vendor and subsystem device ID " + "to dri-devel@lists.freedesktop.org, if your machine needs it. " + "It will then be included in an upcoming module version."); +-module_param_named(invert_brightness, i915_panel_invert_brightness, bool, 0600); ++module_param_named(invert_brightness, i915_panel_invert_brightness, int, 0600); + static u32 intel_panel_compute_brightness(struct drm_device *dev, u32 val) + { +- if (i915_panel_invert_brightness) ++ struct drm_i915_private *dev_priv = dev->dev_private; ++ ++ if (i915_panel_invert_brightness < 0) ++ return val; ++ ++ if (i915_panel_invert_brightness > 0 || ++ dev_priv->quirks & QUIRK_INVERT_BRIGHTNESS) + return intel_panel_get_max_backlight(dev) - val; + + return val; diff --git a/queue-3.4/series b/queue-3.4/series index 969f69312f0..f0469d7a04f 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -168,3 +168,8 @@ drm-i915-only-increment-the-user-pin-count-after-successfully-pinning-the-bo.pat drm-i915-dump-uts_release-into-the-error_state.patch drm-i915-add-missing-n-to-uts_release-in-the-error_state.patch drm-i915-panel-invert-brightness-via-parameter.patch +drm-i915-panel-invert-brightness-via-quirk.patch +drm-i915-panel-invert-brightness-acer-aspire-5734z.patch +drm-i915-add-quirk-to-invert-brightness-on-emachines-g725.patch +drm-i915-add-quirk-to-invert-brightness-on-emachines-e725.patch +drm-i915-add-quirk-to-invert-brightness-on-packard-bell-ncl20.patch -- 2.47.3