X86 platform drivers
 help / color / mirror / Atom feed
* [PATCH] asus-wmi: restore kbd led level after resume
@ 2015-09-14  9:16 Oleksij Rempel
       [not found] ` <CAHR064h++fTgHzCNK9oxALROoL=DuoksTykaDrfY2+hBgoyfrQ@mail.gmail.com>
  2015-09-18 22:31 ` Darren Hart
  0 siblings, 2 replies; 7+ messages in thread
From: Oleksij Rempel @ 2015-09-14  9:16 UTC (permalink / raw)
  To: corentin.chary, acpi4asus-user, platform-driver-x86; +Cc: Oleksij Rempel

Afters suspend/resume cycle with closed lid the kbd backlight level
is lost. This patch will will restore this value to last known level.

Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
---
 drivers/platform/x86/asus-wmi.c | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
index efbc3f0..1f7d80f 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
@@ -582,7 +582,7 @@ static void asus_wmi_led_exit(struct asus_wmi *asus)
 
 static int asus_wmi_led_init(struct asus_wmi *asus)
 {
-	int rv = 0;
+	int rv = 0, led_val;
 
 	asus->led_workqueue = create_singlethread_workqueue("led_workqueue");
 	if (!asus->led_workqueue)
@@ -602,9 +602,11 @@ static int asus_wmi_led_init(struct asus_wmi *asus)
 			goto error;
 	}
 
-	if (kbd_led_read(asus, NULL, NULL) >= 0) {
+	led_val = kbd_led_read(asus, NULL, NULL);
+	if (led_val >= 0) {
 		INIT_WORK(&asus->kbd_led_work, kbd_led_update);
 
+		asus->kbd_led_wk = led_val;
 		asus->kbd_led.name = "asus::kbd_backlight";
 		asus->kbd_led.brightness_set = kbd_led_set;
 		asus->kbd_led.brightness_get = kbd_led_get;
@@ -2160,6 +2162,16 @@ static int asus_hotk_thaw(struct device *device)
 	return 0;
 }
 
+static int asus_hotk_resume(struct device *device)
+{
+	struct asus_wmi *asus = dev_get_drvdata(device);
+
+	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
+		queue_work(asus->led_workqueue, &asus->kbd_led_work);
+
+	return 0;
+}
+
 static int asus_hotk_restore(struct device *device)
 {
 	struct asus_wmi *asus = dev_get_drvdata(device);
@@ -2190,6 +2202,8 @@ static int asus_hotk_restore(struct device *device)
 		bl = !asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_UWB);
 		rfkill_set_sw_state(asus->uwb.rfkill, bl);
 	}
+	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
+		queue_work(asus->led_workqueue, &asus->kbd_led_work);
 
 	return 0;
 }
@@ -2197,6 +2211,7 @@ static int asus_hotk_restore(struct device *device)
 static const struct dev_pm_ops asus_pm_ops = {
 	.thaw = asus_hotk_thaw,
 	.restore = asus_hotk_restore,
+	.resume = asus_hotk_resume,
 };
 
 static int asus_wmi_probe(struct platform_device *pdev)
-- 
2.5.0

^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] asus-wmi: restore kbd led level after resume
       [not found] ` <CAHR064h++fTgHzCNK9oxALROoL=DuoksTykaDrfY2+hBgoyfrQ@mail.gmail.com>
@ 2015-09-15 13:58   ` Corentin Chary
  0 siblings, 0 replies; 7+ messages in thread
From: Corentin Chary @ 2015-09-15 13:58 UTC (permalink / raw)
  To: Oleksij Rempel; +Cc: acpi4asus-user, platform-driver-x86@vger.kernel.org

On Tue, Sep 15, 2015 at 3:56 PM, Corentin Chary
<corentin.chary@gmail.com> wrote:
>
>
> On Mon, Sep 14, 2015 at 11:16 AM, Oleksij Rempel <linux@rempel-privat.de>
> wrote:
>>
>> Afters suspend/resume cycle with closed lid the kbd backlight level
>> is lost. This patch will will restore this value to last known level.
>>
>> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
>> ---
>>  drivers/platform/x86/asus-wmi.c | 19 +++++++++++++++++--
>>  1 file changed, 17 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/platform/x86/asus-wmi.c
>> b/drivers/platform/x86/asus-wmi.c
>> index efbc3f0..1f7d80f 100644
>> --- a/drivers/platform/x86/asus-wmi.c
>> +++ b/drivers/platform/x86/asus-wmi.c
>> @@ -582,7 +582,7 @@ static void asus_wmi_led_exit(struct asus_wmi *asus)
>>
>>  static int asus_wmi_led_init(struct asus_wmi *asus)
>>  {
>> -       int rv = 0;
>> +       int rv = 0, led_val;
>>
>>         asus->led_workqueue =
>> create_singlethread_workqueue("led_workqueue");
>>         if (!asus->led_workqueue)
>> @@ -602,9 +602,11 @@ static int asus_wmi_led_init(struct asus_wmi *asus)
>>                         goto error;
>>         }
>>
>> -       if (kbd_led_read(asus, NULL, NULL) >= 0) {
>> +       led_val = kbd_led_read(asus, NULL, NULL);
>> +       if (led_val >= 0) {
>>                 INIT_WORK(&asus->kbd_led_work, kbd_led_update);
>>
>> +               asus->kbd_led_wk = led_val;
>>                 asus->kbd_led.name = "asus::kbd_backlight";
>>                 asus->kbd_led.brightness_set = kbd_led_set;
>>                 asus->kbd_led.brightness_get = kbd_led_get;
>> @@ -2160,6 +2162,16 @@ static int asus_hotk_thaw(struct device *device)
>>         return 0;
>>  }
>>
>> +static int asus_hotk_resume(struct device *device)
>> +{
>> +       struct asus_wmi *asus = dev_get_drvdata(device);
>> +
>> +       if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
>> +               queue_work(asus->led_workqueue, &asus->kbd_led_work);
>> +
>> +       return 0;
>> +}
>> +
>>  static int asus_hotk_restore(struct device *device)
>>  {
>>         struct asus_wmi *asus = dev_get_drvdata(device);
>> @@ -2190,6 +2202,8 @@ static int asus_hotk_restore(struct device *device)
>>                 bl = !asus_wmi_get_devstate_simple(asus,
>> ASUS_WMI_DEVID_UWB);
>>                 rfkill_set_sw_state(asus->uwb.rfkill, bl);
>>         }
>> +       if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
>> +               queue_work(asus->led_workqueue, &asus->kbd_led_work);
>>
>>         return 0;
>>  }
>> @@ -2197,6 +2211,7 @@ static int asus_hotk_restore(struct device *device)
>>  static const struct dev_pm_ops asus_pm_ops = {
>>         .thaw = asus_hotk_thaw,
>>         .restore = asus_hotk_restore,
>> +       .resume = asus_hotk_resume,
>>  };
>>
>>  static int asus_wmi_probe(struct platform_device *pdev)
>> --
>> 2.5.0
>>
>
> Looks good to me.
>
> Reviewed-by: Corentin Chary <corentin.chary@gmail.com>

Again, without HTML, to the right address. Sorry for the mess.


-- 
Corentin Chary
http://xf.iksaif.net

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] asus-wmi: restore kbd led level after resume
  2015-09-14  9:16 [PATCH] asus-wmi: restore kbd led level after resume Oleksij Rempel
       [not found] ` <CAHR064h++fTgHzCNK9oxALROoL=DuoksTykaDrfY2+hBgoyfrQ@mail.gmail.com>
@ 2015-09-18 22:31 ` Darren Hart
  2015-09-19  5:45   ` Oleksij Rempel
  1 sibling, 1 reply; 7+ messages in thread
From: Darren Hart @ 2015-09-18 22:31 UTC (permalink / raw)
  To: Oleksij Rempel; +Cc: corentin.chary, acpi4asus-user, platform-driver-x86

On Mon, Sep 14, 2015 at 11:16:30AM +0200, Oleksij Rempel wrote:
> Afters suspend/resume cycle with closed lid the kbd backlight level
> is lost. This patch will will restore this value to last known level.
> 
> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>

Hi Oleksij,

Please always run scripts/get_maintainer.pl -f path/to/files/changed

And include *all* the maintainers and lists on Cc. This will ensure a faster
response.

> ---
>  drivers/platform/x86/asus-wmi.c | 19 +++++++++++++++++--
>  1 file changed, 17 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
> index efbc3f0..1f7d80f 100644
> --- a/drivers/platform/x86/asus-wmi.c
> +++ b/drivers/platform/x86/asus-wmi.c
> @@ -582,7 +582,7 @@ static void asus_wmi_led_exit(struct asus_wmi *asus)
>  
>  static int asus_wmi_led_init(struct asus_wmi *asus)
>  {
> -	int rv = 0;
> +	int rv = 0, led_val;
>  
>  	asus->led_workqueue = create_singlethread_workqueue("led_workqueue");
>  	if (!asus->led_workqueue)
> @@ -602,9 +602,11 @@ static int asus_wmi_led_init(struct asus_wmi *asus)
>  			goto error;
>  	}
>  
> -	if (kbd_led_read(asus, NULL, NULL) >= 0) {
> +	led_val = kbd_led_read(asus, NULL, NULL);
> +	if (led_val >= 0) {
>  		INIT_WORK(&asus->kbd_led_work, kbd_led_update);
>  
> +		asus->kbd_led_wk = led_val;
>  		asus->kbd_led.name = "asus::kbd_backlight";
>  		asus->kbd_led.brightness_set = kbd_led_set;
>  		asus->kbd_led.brightness_get = kbd_led_get;
> @@ -2160,6 +2162,16 @@ static int asus_hotk_thaw(struct device *device)
>  	return 0;
>  }
>  
> +static int asus_hotk_resume(struct device *device)
> +{
> +	struct asus_wmi *asus = dev_get_drvdata(device);
> +
> +	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))

	if (asus->kbd_led.dev)

	should be sufficient, I don't see the dev pointer being stored as an
	errno.

	Corentin?

> +		queue_work(asus->led_workqueue, &asus->kbd_led_work);
> +
> +	return 0;
> +}
> +
>  static int asus_hotk_restore(struct device *device)
>  {
>  	struct asus_wmi *asus = dev_get_drvdata(device);
> @@ -2190,6 +2202,8 @@ static int asus_hotk_restore(struct device *device)
>  		bl = !asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_UWB);
>  		rfkill_set_sw_state(asus->uwb.rfkill, bl);
>  	}
> +	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
> +		queue_work(asus->led_workqueue, &asus->kbd_led_work);

Ditto

>  
>  	return 0;
>  }
> @@ -2197,6 +2211,7 @@ static int asus_hotk_restore(struct device *device)
>  static const struct dev_pm_ops asus_pm_ops = {
>  	.thaw = asus_hotk_thaw,
>  	.restore = asus_hotk_restore,
> +	.resume = asus_hotk_resume,
>  };
>  
>  static int asus_wmi_probe(struct platform_device *pdev)
> -- 
> 2.5.0
> 
> --
> To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

-- 
Darren Hart
Intel Open Source Technology Center

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] asus-wmi: restore kbd led level after resume
  2015-09-18 22:31 ` Darren Hart
@ 2015-09-19  5:45   ` Oleksij Rempel
  2015-09-21 17:12     ` Darren Hart
  0 siblings, 1 reply; 7+ messages in thread
From: Oleksij Rempel @ 2015-09-19  5:45 UTC (permalink / raw)
  To: Darren Hart; +Cc: corentin.chary, acpi4asus-user, platform-driver-x86

[-- Attachment #1: Type: text/plain, Size: 3493 bytes --]

Hi,

Am 19.09.2015 um 00:31 schrieb Darren Hart:
> On Mon, Sep 14, 2015 at 11:16:30AM +0200, Oleksij Rempel wrote:
>> Afters suspend/resume cycle with closed lid the kbd backlight level
>> is lost. This patch will will restore this value to last known level.
>>
>> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
> 
> Hi Oleksij,
> 
> Please always run scripts/get_maintainer.pl -f path/to/files/changed
> 
> And include *all* the maintainers and lists on Cc. This will ensure a faster
> response.
> 
>> ---
>>  drivers/platform/x86/asus-wmi.c | 19 +++++++++++++++++--
>>  1 file changed, 17 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
>> index efbc3f0..1f7d80f 100644
>> --- a/drivers/platform/x86/asus-wmi.c
>> +++ b/drivers/platform/x86/asus-wmi.c
>> @@ -582,7 +582,7 @@ static void asus_wmi_led_exit(struct asus_wmi *asus)
>>  
>>  static int asus_wmi_led_init(struct asus_wmi *asus)
>>  {
>> -	int rv = 0;
>> +	int rv = 0, led_val;
>>  
>>  	asus->led_workqueue = create_singlethread_workqueue("led_workqueue");
>>  	if (!asus->led_workqueue)
>> @@ -602,9 +602,11 @@ static int asus_wmi_led_init(struct asus_wmi *asus)
>>  			goto error;
>>  	}
>>  
>> -	if (kbd_led_read(asus, NULL, NULL) >= 0) {
>> +	led_val = kbd_led_read(asus, NULL, NULL);
>> +	if (led_val >= 0) {
>>  		INIT_WORK(&asus->kbd_led_work, kbd_led_update);
>>  
>> +		asus->kbd_led_wk = led_val;
>>  		asus->kbd_led.name = "asus::kbd_backlight";
>>  		asus->kbd_led.brightness_set = kbd_led_set;
>>  		asus->kbd_led.brightness_get = kbd_led_get;
>> @@ -2160,6 +2162,16 @@ static int asus_hotk_thaw(struct device *device)
>>  	return 0;
>>  }
>>  
>> +static int asus_hotk_resume(struct device *device)
>> +{
>> +	struct asus_wmi *asus = dev_get_drvdata(device);
>> +
>> +	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
> 
> 	if (asus->kbd_led.dev)
> 
> 	should be sufficient, I don't see the dev pointer being stored as an
> 	errno.
> 
> 	Corentin?

led_classdev_register
  led_classdev_next_name
    device_create_with_groups
      device_create_groups_vargs
        retval = -ENODEV;
        retval = -ENOMEM;
        return ERR_PTR(retval);
  if (IS_ERR(led_cdev->dev))

this is how dev pointer is stored as errno.

>> +		queue_work(asus->led_workqueue, &asus->kbd_led_work);
>> +
>> +	return 0;
>> +}
>> +
>>  static int asus_hotk_restore(struct device *device)
>>  {
>>  	struct asus_wmi *asus = dev_get_drvdata(device);
>> @@ -2190,6 +2202,8 @@ static int asus_hotk_restore(struct device *device)
>>  		bl = !asus_wmi_get_devstate_simple(asus, ASUS_WMI_DEVID_UWB);
>>  		rfkill_set_sw_state(asus->uwb.rfkill, bl);
>>  	}
>> +	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
>> +		queue_work(asus->led_workqueue, &asus->kbd_led_work);
> 
> Ditto
> 
>>  
>>  	return 0;
>>  }
>> @@ -2197,6 +2211,7 @@ static int asus_hotk_restore(struct device *device)
>>  static const struct dev_pm_ops asus_pm_ops = {
>>  	.thaw = asus_hotk_thaw,
>>  	.restore = asus_hotk_restore,
>> +	.resume = asus_hotk_resume,
>>  };
>>  
>>  static int asus_wmi_probe(struct platform_device *pdev)
>> -- 
>> 2.5.0
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
> 


-- 
Regards,
Oleksij


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 213 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] asus-wmi: restore kbd led level after resume
  2015-09-19  5:45   ` Oleksij Rempel
@ 2015-09-21 17:12     ` Darren Hart
  2015-09-21 17:28       ` Oleksij Rempel
  0 siblings, 1 reply; 7+ messages in thread
From: Darren Hart @ 2015-09-21 17:12 UTC (permalink / raw)
  To: Oleksij Rempel; +Cc: corentin.chary, acpi4asus-user, platform-driver-x86

On Sat, Sep 19, 2015 at 07:45:31AM +0200, Oleksij Rempel wrote:
> Hi,
> 
> Am 19.09.2015 um 00:31 schrieb Darren Hart:
> > On Mon, Sep 14, 2015 at 11:16:30AM +0200, Oleksij Rempel wrote:
> >> Afters suspend/resume cycle with closed lid the kbd backlight level
> >> is lost. This patch will will restore this value to last known level.
> >>
> >> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
> > 
> > Hi Oleksij,
> > 
> > Please always run scripts/get_maintainer.pl -f path/to/files/changed
> > 
> > And include *all* the maintainers and lists on Cc. This will ensure a faster
> > response.
> > 
> >> ---
> >>  drivers/platform/x86/asus-wmi.c | 19 +++++++++++++++++--
> >>  1 file changed, 17 insertions(+), 2 deletions(-)
> >>
> >> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
> >> index efbc3f0..1f7d80f 100644
> >> --- a/drivers/platform/x86/asus-wmi.c
> >> +++ b/drivers/platform/x86/asus-wmi.c
> >> @@ -582,7 +582,7 @@ static void asus_wmi_led_exit(struct asus_wmi *asus)
> >>  
> >>  static int asus_wmi_led_init(struct asus_wmi *asus)
> >>  {
> >> -	int rv = 0;
> >> +	int rv = 0, led_val;
> >>  
> >>  	asus->led_workqueue = create_singlethread_workqueue("led_workqueue");
> >>  	if (!asus->led_workqueue)
> >> @@ -602,9 +602,11 @@ static int asus_wmi_led_init(struct asus_wmi *asus)
> >>  			goto error;
> >>  	}
> >>  
> >> -	if (kbd_led_read(asus, NULL, NULL) >= 0) {
> >> +	led_val = kbd_led_read(asus, NULL, NULL);
> >> +	if (led_val >= 0) {
> >>  		INIT_WORK(&asus->kbd_led_work, kbd_led_update);
> >>  
> >> +		asus->kbd_led_wk = led_val;
> >>  		asus->kbd_led.name = "asus::kbd_backlight";
> >>  		asus->kbd_led.brightness_set = kbd_led_set;
> >>  		asus->kbd_led.brightness_get = kbd_led_get;
> >> @@ -2160,6 +2162,16 @@ static int asus_hotk_thaw(struct device *device)
> >>  	return 0;
> >>  }
> >>  
> >> +static int asus_hotk_resume(struct device *device)
> >> +{
> >> +	struct asus_wmi *asus = dev_get_drvdata(device);
> >> +
> >> +	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
> > 
> > 	if (asus->kbd_led.dev)
> > 
> > 	should be sufficient, I don't see the dev pointer being stored as an
> > 	errno.
> > 
> > 	Corentin?
> 
> led_classdev_register
>   led_classdev_next_name
>     device_create_with_groups
>       device_create_groups_vargs
>         retval = -ENODEV;
>         retval = -ENOMEM;
>         return ERR_PTR(retval);
>   if (IS_ERR(led_cdev->dev))
> 
> this is how dev pointer is stored as errno.

Ah! Thank you for the correction. Noted.

-- 
Darren Hart
Intel Open Source Technology Center

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] asus-wmi: restore kbd led level after resume
  2015-09-21 17:12     ` Darren Hart
@ 2015-09-21 17:28       ` Oleksij Rempel
  2015-09-25 15:41         ` Darren Hart
  0 siblings, 1 reply; 7+ messages in thread
From: Oleksij Rempel @ 2015-09-21 17:28 UTC (permalink / raw)
  To: Darren Hart; +Cc: corentin.chary, acpi4asus-user, platform-driver-x86

[-- Attachment #1: Type: text/plain, Size: 2742 bytes --]

Am 21.09.2015 um 19:12 schrieb Darren Hart:
> On Sat, Sep 19, 2015 at 07:45:31AM +0200, Oleksij Rempel wrote:
>> Hi,
>>
>> Am 19.09.2015 um 00:31 schrieb Darren Hart:
>>> On Mon, Sep 14, 2015 at 11:16:30AM +0200, Oleksij Rempel wrote:
>>>> Afters suspend/resume cycle with closed lid the kbd backlight level
>>>> is lost. This patch will will restore this value to last known level.
>>>>
>>>> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
>>>
>>> Hi Oleksij,
>>>
>>> Please always run scripts/get_maintainer.pl -f path/to/files/changed
>>>
>>> And include *all* the maintainers and lists on Cc. This will ensure a faster
>>> response.
>>>
>>>> ---
>>>>  drivers/platform/x86/asus-wmi.c | 19 +++++++++++++++++--
>>>>  1 file changed, 17 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
>>>> index efbc3f0..1f7d80f 100644
>>>> --- a/drivers/platform/x86/asus-wmi.c
>>>> +++ b/drivers/platform/x86/asus-wmi.c
>>>> @@ -582,7 +582,7 @@ static void asus_wmi_led_exit(struct asus_wmi *asus)
>>>>  
>>>>  static int asus_wmi_led_init(struct asus_wmi *asus)
>>>>  {
>>>> -	int rv = 0;
>>>> +	int rv = 0, led_val;
>>>>  
>>>>  	asus->led_workqueue = create_singlethread_workqueue("led_workqueue");
>>>>  	if (!asus->led_workqueue)
>>>> @@ -602,9 +602,11 @@ static int asus_wmi_led_init(struct asus_wmi *asus)
>>>>  			goto error;
>>>>  	}
>>>>  
>>>> -	if (kbd_led_read(asus, NULL, NULL) >= 0) {
>>>> +	led_val = kbd_led_read(asus, NULL, NULL);
>>>> +	if (led_val >= 0) {
>>>>  		INIT_WORK(&asus->kbd_led_work, kbd_led_update);
>>>>  
>>>> +		asus->kbd_led_wk = led_val;
>>>>  		asus->kbd_led.name = "asus::kbd_backlight";
>>>>  		asus->kbd_led.brightness_set = kbd_led_set;
>>>>  		asus->kbd_led.brightness_get = kbd_led_get;
>>>> @@ -2160,6 +2162,16 @@ static int asus_hotk_thaw(struct device *device)
>>>>  	return 0;
>>>>  }
>>>>  
>>>> +static int asus_hotk_resume(struct device *device)
>>>> +{
>>>> +	struct asus_wmi *asus = dev_get_drvdata(device);
>>>> +
>>>> +	if (!IS_ERR_OR_NULL(asus->kbd_led.dev))
>>>
>>> 	if (asus->kbd_led.dev)
>>>
>>> 	should be sufficient, I don't see the dev pointer being stored as an
>>> 	errno.
>>>
>>> 	Corentin?
>>
>> led_classdev_register
>>   led_classdev_next_name
>>     device_create_with_groups
>>       device_create_groups_vargs
>>         retval = -ENODEV;
>>         retval = -ENOMEM;
>>         return ERR_PTR(retval);
>>   if (IS_ERR(led_cdev->dev))
>>
>> this is how dev pointer is stored as errno.
> 
> Ah! Thank you for the correction. Noted.
> 

No problem :)
probably it can be optimised in separate patch.

-- 
Regards,
Oleksij


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 213 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] asus-wmi: restore kbd led level after resume
  2015-09-21 17:28       ` Oleksij Rempel
@ 2015-09-25 15:41         ` Darren Hart
  0 siblings, 0 replies; 7+ messages in thread
From: Darren Hart @ 2015-09-25 15:41 UTC (permalink / raw)
  To: Oleksij Rempel; +Cc: corentin.chary, acpi4asus-user, platform-driver-x86

On Mon, Sep 21, 2015 at 07:28:59PM +0200, Oleksij Rempel wrote:
> Am 21.09.2015 um 19:12 schrieb Darren Hart:
> > On Sat, Sep 19, 2015 at 07:45:31AM +0200, Oleksij Rempel wrote:
> >> Hi,
> >>
> >> Am 19.09.2015 um 00:31 schrieb Darren Hart:
> >>> On Mon, Sep 14, 2015 at 11:16:30AM +0200, Oleksij Rempel wrote:
> >>>> Afters suspend/resume cycle with closed lid the kbd backlight level
> >>>> is lost. This patch will will restore this value to last known level.
> >>>>
> >>>> Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>

Queued to testing, will be in -next next week unless Corentin raises an
objection.

-- 
Darren Hart
Intel Open Source Technology Center

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-09-25 15:41 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-09-14  9:16 [PATCH] asus-wmi: restore kbd led level after resume Oleksij Rempel
     [not found] ` <CAHR064h++fTgHzCNK9oxALROoL=DuoksTykaDrfY2+hBgoyfrQ@mail.gmail.com>
2015-09-15 13:58   ` Corentin Chary
2015-09-18 22:31 ` Darren Hart
2015-09-19  5:45   ` Oleksij Rempel
2015-09-21 17:12     ` Darren Hart
2015-09-21 17:28       ` Oleksij Rempel
2015-09-25 15:41         ` Darren Hart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox