[Maverick SRU] UBUNTU: [Upstream] Call acpi_video_register() in intel_opregion_init() failure path

Stefan Bader stefan.bader at canonical.com
Mon Nov 29 13:54:53 UTC 2010


On 11/26/2010 10:40 AM, Keng-Yu Lin wrote:
> This patch gets merged in 2.6.36. Since the last stable release 
> of 2.6.35.9 is out. This patch may be included as an SRU in Ubuntu.
> 
> SRU Justification:
> 
> Impact:
> The backlight brightness of laptop type Toshiba NB305 cannot be adjusted.
> 
> Fix:
> Call acpi_video_register() on the failure path.
> 
> Testcase:
> Cameron Matheson verified on Toshiba NB305.
> David Woodhouse verified on Lenovo IdeaPad S10-3
> 
> ---
> From 89dcb83236bb656f7e9eaa75b53c5783ff0b8418 Mon Sep 17 00:00:00 2001
> From: David Woodhouse <David.Woodhouse at intel.com>
> Date: Fri, 13 Aug 2010 00:56:54 +0100
> Subject: [Maverick SRU] UBUNTU: [Upstream] Call acpi_video_register() in intel_opregion_init() failure path
> 
> BugLink: http://bugs.launchpad.net/bugs/615947
> upstream commit: 54b9b308fa39e5147e2edde3492d8650b957be6c
> 
> If i915 opregion is present, the acpi_video driver doesn't register
> itself immediately; it defers that until the i915 opregion code is done.
> But if that *fails*, the acpi_video driver was never getting registered.
> And thus I have no backlight support on my Lenovo IdeaPad S10-3.
> 
> Call acpi_video_register() on the failure path, and it works again.
> 
> Signed-off-by: David Woodhouse <David.Woodhouse at intel.com>
> Acked-by: Jesse Barnes <jbarnes at virtuousgeek.org>
> Acked-by: Matthew Garrett <mjg at redhat.com>
> Tested-by: Cameron Matheson <cameron.matheson at gmail.com>
> Signed-off-by: Keng-Yu Lin <keng-yu.lin at canonical.com>
> ---
>  drivers/gpu/drm/i915/i915_opregion.c |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_opregion.c b/drivers/gpu/drm/i915/i915_opregion.c
> index 8fcc75c..d1bf92b 100644
> --- a/drivers/gpu/drm/i915/i915_opregion.c
> +++ b/drivers/gpu/drm/i915/i915_opregion.c
> @@ -535,6 +535,7 @@ int intel_opregion_init(struct drm_device *dev, int resume)
>  err_out:
>  	iounmap(opregion->header);
>  	opregion->header = NULL;
> +	acpi_video_register();
>  	return err;
>  }
>  
Acked-by: Stefan Bader <stefan.bader at canonical.com>




More information about the kernel-team mailing list