diff mbox series

Fixes: ae834a549ec1 ("platform/x86: asus-wmi: add support variant of TUF RGB")

Message ID 20240713074005.66254-1-luke@ljones.dev (mailing list archive)
State Changes Requested, archived
Headers show
Series Fixes: ae834a549ec1 ("platform/x86: asus-wmi: add support variant of TUF RGB") | expand

Commit Message

Luke Jones July 13, 2024, 7:40 a.m. UTC
In kbd_rgb_mode_store the dev_get_drvdata() call was assuming the device
data was asus_wmi when it was actually led_classdev.

This patch corrects this by making the correct chain of calls to get the
asus_wmi driver data.

Tested-by: Denis Benato <benato.denis96@gmail.com>
Signed-off-by: Luke D. Jones <luke@ljones.dev>
---
 drivers/platform/x86/asus-wmi.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

Comments

Ilpo Järvinen July 15, 2024, 9:27 a.m. UTC | #1
On Sat, 13 Jul 2024, Luke D. Jones wrote:

> In kbd_rgb_mode_store the dev_get_drvdata() call was assuming the device
> data was asus_wmi when it was actually led_classdev.
> 
> This patch corrects this by making the correct chain of calls to get the
> asus_wmi driver data.
> 
> Tested-by: Denis Benato <benato.denis96@gmail.com>
> Signed-off-by: Luke D. Jones <luke@ljones.dev>

Your tags seem messed up, Fixes is in Subject in place of shortlog that is 
completely missing.

Could you please correct these issues and resubmit, thank you.
Luke Jones July 16, 2024, 1 a.m. UTC | #2
On Mon, 15 Jul 2024, at 9:27 PM, Ilpo Järvinen wrote:
> On Sat, 13 Jul 2024, Luke D. Jones wrote:
> 
> > In kbd_rgb_mode_store the dev_get_drvdata() call was assuming the device
> > data was asus_wmi when it was actually led_classdev.
> > 
> > This patch corrects this by making the correct chain of calls to get the
> > asus_wmi driver data.
> > 
> > Tested-by: Denis Benato <benato.denis96@gmail.com>
> > Signed-off-by: Luke D. Jones <luke@ljones.dev>
> 
> Your tags seem messed up, Fixes is in Subject in place of shortlog that is 
> completely missing.
> 
> Could you please correct these issues and resubmit, thank you.

Looks like I misunderstood something somewhere. Will resubmit.

> 
> -- 
> i.
> 
> > ---
> >  drivers/platform/x86/asus-wmi.c | 6 +++++-
> >  1 file changed, 5 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
> > index 799d928c7d3d..2935af013535 100644
> > --- a/drivers/platform/x86/asus-wmi.c
> > +++ b/drivers/platform/x86/asus-wmi.c
> > @@ -879,10 +879,14 @@ static ssize_t kbd_rgb_mode_store(struct device *dev,
> >  struct device_attribute *attr,
> >  const char *buf, size_t count)
> >  {
> > - struct asus_wmi *asus = dev_get_drvdata(dev);
> >  u32 cmd, mode, r, g, b, speed;
> > + struct led_classdev *led;
> > + struct asus_wmi *asus;
> >  int err;
> >  
> > + led = dev_get_drvdata(dev);
> > + asus = container_of(led, struct asus_wmi, kbd_led);
> > +
> >  if (sscanf(buf, "%d %d %d %d %d %d", &cmd, &mode, &r, &g, &b, &speed) != 6)
> >  return -EINVAL;
> >  
> > 
>
diff mbox series

Patch

diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c
index 799d928c7d3d..2935af013535 100644
--- a/drivers/platform/x86/asus-wmi.c
+++ b/drivers/platform/x86/asus-wmi.c
@@ -879,10 +879,14 @@  static ssize_t kbd_rgb_mode_store(struct device *dev,
 				 struct device_attribute *attr,
 				 const char *buf, size_t count)
 {
-	struct asus_wmi *asus = dev_get_drvdata(dev);
 	u32 cmd, mode, r, g, b, speed;
+	struct led_classdev *led;
+	struct asus_wmi *asus;
 	int err;
 
+	led = dev_get_drvdata(dev);
+	asus = container_of(led, struct asus_wmi, kbd_led);
+
 	if (sscanf(buf, "%d %d %d %d %d %d", &cmd, &mode, &r, &g, &b, &speed) != 6)
 		return -EINVAL;