lkml.org 
[lkml]   [2017]   [Oct]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 4.13 103/110] platform/x86: fujitsu-laptop: Dont oops when FUJ02E3 is not presnt
On Tue, Oct 03, 2017 at 02:30:05PM +0200, Greg Kroah-Hartman wrote:
> 4.13-stable review patch. If anyone has any objections, please let me know.

As per my earlier suggestion, I'm more than happy for this to go to stable
since it fixes a regression.

Reviewed-by: Jonathan Woithe <jwoithe@just42.net>

> ------------------
>
> From: Ville Syrjälä <ville.syrjala@linux.intel.com>
>
> commit ce7c47d60bda6c7f09ccf16e978d971c8fa16ff0 upstream.
>
> My Fujitsu-Siemens Lifebook S6120 doesn't have the FUJ02E3 device,
> but it does have FUJ02B1. That means we do register the backlight
> device (and it even seems to work), but the code will oops as soon
> as we try to set the backlight brightness because it's trying to
> call call_fext_func() with a NULL device. Let's just skip those
> function calls when the FUJ02E3 device is not present.
>
> Cc: Jonathan Woithe <jwoithe@just42.net>
> Cc: Andy Shevchenko <andy@infradead.org>
> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> Signed-off-by: Darren Hart (VMware) <dvhart@infradead.org>
> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
>
> ---
> drivers/platform/x86/fujitsu-laptop.c | 10 ++++++----
> 1 file changed, 6 insertions(+), 4 deletions(-)
>
> --- a/drivers/platform/x86/fujitsu-laptop.c
> +++ b/drivers/platform/x86/fujitsu-laptop.c
> @@ -254,10 +254,12 @@ static int bl_update_status(struct backl
> {
> struct acpi_device *device = bl_get_data(b);
>
> - if (b->props.power == FB_BLANK_POWERDOWN)
> - call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x3);
> - else
> - call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x0);
> + if (fext) {
> + if (b->props.power == FB_BLANK_POWERDOWN)
> + call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x3);
> + else
> + call_fext_func(fext, FUNC_BACKLIGHT, 0x1, 0x4, 0x0);
> + }
>
> return set_lcd_level(device, b->props.brightness);
> }
>

\
 
 \ /
  Last update: 2017-10-04 00:11    [W:2.662 / U:0.052 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site