* [PATCH 1/1] leds: blinkm: Remove unused variable
@ 2014-07-01 12:07 Sachin Kamat
2014-07-01 15:54 ` Bryan Wu
0 siblings, 1 reply; 5+ messages in thread
From: Sachin Kamat @ 2014-07-01 12:07 UTC (permalink / raw)
To: linux-leds; +Cc: jansimon.moeller, cooloney, spk.linux
'ret' is not used in the function. Remove it.
Signed-off-by: Sachin Kamat <sachin.kamat@samsung.com>
---
drivers/leds/leds-blinkm.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
index d0452b099aee..f07f920ac0ac 100644
--- a/drivers/leds/leds-blinkm.c
+++ b/drivers/leds/leds-blinkm.c
@@ -441,14 +441,13 @@ static int blinkm_transfer_hw(struct i2c_client *client, int cmd)
static void led_work(struct work_struct *work)
{
- int ret;
struct blinkm_led *led;
struct blinkm_data *data;
struct blinkm_work *blm_work = work_to_blmwork(work);
led = blm_work->blinkm_led;
data = i2c_get_clientdata(led->i2c_client);
- ret = blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
+ blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
atomic_dec(&led->active);
dev_dbg(&led->i2c_client->dev,
"# DONE # next_red = %d, next_green = %d,"
@@ -546,9 +545,8 @@ static void blinkm_led_blue_set(struct led_classdev *led_cdev,
static void blinkm_init_hw(struct i2c_client *client)
{
- int ret;
- ret = blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
- ret = blinkm_transfer_hw(client, BLM_GO_RGB);
+ blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
+ blinkm_transfer_hw(client, BLM_GO_RGB);
}
static int blinkm_test_run(struct i2c_client *client)
--
1.7.9.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] leds: blinkm: Remove unused variable
2014-07-01 12:07 [PATCH 1/1] leds: blinkm: Remove unused variable Sachin Kamat
@ 2014-07-01 15:54 ` Bryan Wu
2014-07-01 21:50 ` Jan-Simon Möller
0 siblings, 1 reply; 5+ messages in thread
From: Bryan Wu @ 2014-07-01 15:54 UTC (permalink / raw)
To: Sachin Kamat, Jan-Simon Möller; +Cc: Linux LED Subsystem, spk.linux
On Tue, Jul 1, 2014 at 5:07 AM, Sachin Kamat <sachin.kamat@samsung.com> wrote:
> 'ret' is not used in the function. Remove it.
>
Removing it is easy but I guess we should check the return error status here.
Jan-Simon, what's your opinion then?
Thanks,
-Bryan
> Signed-off-by: Sachin Kamat <sachin.kamat@samsung.com>
> ---
> drivers/leds/leds-blinkm.c | 8 +++-----
> 1 file changed, 3 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
> index d0452b099aee..f07f920ac0ac 100644
> --- a/drivers/leds/leds-blinkm.c
> +++ b/drivers/leds/leds-blinkm.c
> @@ -441,14 +441,13 @@ static int blinkm_transfer_hw(struct i2c_client *client, int cmd)
>
> static void led_work(struct work_struct *work)
> {
> - int ret;
> struct blinkm_led *led;
> struct blinkm_data *data;
> struct blinkm_work *blm_work = work_to_blmwork(work);
>
> led = blm_work->blinkm_led;
> data = i2c_get_clientdata(led->i2c_client);
> - ret = blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
> + blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
> atomic_dec(&led->active);
> dev_dbg(&led->i2c_client->dev,
> "# DONE # next_red = %d, next_green = %d,"
> @@ -546,9 +545,8 @@ static void blinkm_led_blue_set(struct led_classdev *led_cdev,
>
> static void blinkm_init_hw(struct i2c_client *client)
> {
> - int ret;
> - ret = blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
> - ret = blinkm_transfer_hw(client, BLM_GO_RGB);
> + blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
> + blinkm_transfer_hw(client, BLM_GO_RGB);
> }
>
> static int blinkm_test_run(struct i2c_client *client)
> --
> 1.7.9.5
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] leds: blinkm: Remove unused variable
2014-07-01 15:54 ` Bryan Wu
@ 2014-07-01 21:50 ` Jan-Simon Möller
2014-07-09 12:34 ` Jan-Simon Möller
0 siblings, 1 reply; 5+ messages in thread
From: Jan-Simon Möller @ 2014-07-01 21:50 UTC (permalink / raw)
To: Bryan Wu; +Cc: Sachin Kamat, Linux LED Subsystem, spk.linux
Nighttime here. I'll look tomorrow.
--
Dipl.-Ing.
Jan-Simon Möller
jansimon.moeller@gmx.de
Am Dienstag, 1. Juli 2014, 08:54:27 schrieb Bryan Wu:
> On Tue, Jul 1, 2014 at 5:07 AM, Sachin Kamat <sachin.kamat@samsung.com>
wrote:
> > 'ret' is not used in the function. Remove it.
>
> Removing it is easy but I guess we should check the return error status
> here. Jan-Simon, what's your opinion then?
>
> Thanks,
> -Bryan
>
> > Signed-off-by: Sachin Kamat <sachin.kamat@samsung.com>
> > ---
> >
> > drivers/leds/leds-blinkm.c | 8 +++-----
> > 1 file changed, 3 insertions(+), 5 deletions(-)
> >
> > diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
> > index d0452b099aee..f07f920ac0ac 100644
> > --- a/drivers/leds/leds-blinkm.c
> > +++ b/drivers/leds/leds-blinkm.c
> > @@ -441,14 +441,13 @@ static int blinkm_transfer_hw(struct i2c_client
> > *client, int cmd)>
> > static void led_work(struct work_struct *work)
> > {
> >
> > - int ret;
> >
> > struct blinkm_led *led;
> > struct blinkm_data *data;
> > struct blinkm_work *blm_work = work_to_blmwork(work);
> >
> > led = blm_work->blinkm_led;
> > data = i2c_get_clientdata(led->i2c_client);
> >
> > - ret = blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
> > + blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
> >
> > atomic_dec(&led->active);
> > dev_dbg(&led->i2c_client->dev,
> >
> > "# DONE # next_red = %d, next_green = %d,"
> >
> > @@ -546,9 +545,8 @@ static void blinkm_led_blue_set(struct led_classdev
> > *led_cdev,>
> > static void blinkm_init_hw(struct i2c_client *client)
> > {
> >
> > - int ret;
> > - ret = blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
> > - ret = blinkm_transfer_hw(client, BLM_GO_RGB);
> > + blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
> > + blinkm_transfer_hw(client, BLM_GO_RGB);
> >
> > }
> >
> > static int blinkm_test_run(struct i2c_client *client)
> >
> > --
> > 1.7.9.5
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] leds: blinkm: Remove unused variable
2014-07-01 21:50 ` Jan-Simon Möller
@ 2014-07-09 12:34 ` Jan-Simon Möller
2014-07-15 0:54 ` Bryan Wu
0 siblings, 1 reply; 5+ messages in thread
From: Jan-Simon Möller @ 2014-07-09 12:34 UTC (permalink / raw)
To: Bryan Wu; +Cc: Sachin Kamat, Linux LED Subsystem, spk.linux
[-- Attachment #1: Type: text/plain, Size: 2298 bytes --]
What about this ...
--
Dipl.-Ing.
Jan-Simon Möller
jansimon.moeller@gmx.de
Am Dienstag, 1. Juli 2014, 23:50:29 schrieb Jan-Simon Möller:
> Nighttime here. I'll look tomorrow.
>
> > On Tue, Jul 1, 2014 at 5:07 AM, Sachin Kamat <sachin.kamat@samsung.com>
>
> wrote:
> > > 'ret' is not used in the function. Remove it.
> >
> > Removing it is easy but I guess we should check the return error status
> > here. Jan-Simon, what's your opinion then?
> >
> > Thanks,
> > -Bryan
> >
> > > Signed-off-by: Sachin Kamat <sachin.kamat@samsung.com>
> > > ---
> > >
> > > drivers/leds/leds-blinkm.c | 8 +++-----
> > > 1 file changed, 3 insertions(+), 5 deletions(-)
> > >
> > > diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
> > > index d0452b099aee..f07f920ac0ac 100644
> > > --- a/drivers/leds/leds-blinkm.c
> > > +++ b/drivers/leds/leds-blinkm.c
> > > @@ -441,14 +441,13 @@ static int blinkm_transfer_hw(struct i2c_client
> > > *client, int cmd)>
> > >
> > > static void led_work(struct work_struct *work)
> > > {
> > >
> > > - int ret;
> > >
> > > struct blinkm_led *led;
> > > struct blinkm_data *data;
> > > struct blinkm_work *blm_work = work_to_blmwork(work);
> > >
> > > led = blm_work->blinkm_led;
> > > data = i2c_get_clientdata(led->i2c_client);
> > >
> > > - ret = blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
> > > + blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
> > >
> > > atomic_dec(&led->active);
> > > dev_dbg(&led->i2c_client->dev,
> > >
> > > "# DONE # next_red = %d, next_green = %d,"
> > >
> > > @@ -546,9 +545,8 @@ static void blinkm_led_blue_set(struct led_classdev
> > > *led_cdev,>
> > >
> > > static void blinkm_init_hw(struct i2c_client *client)
> > > {
> > >
> > > - int ret;
> > > - ret = blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
> > > - ret = blinkm_transfer_hw(client, BLM_GO_RGB);
> > > + blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
> > > + blinkm_transfer_hw(client, BLM_GO_RGB);
> > >
> > > }
> > >
> > > static int blinkm_test_run(struct i2c_client *client)
> > >
> > > --
> > > 1.7.9.5
[-- Attachment #2: 0001-Enhance-error-checking-and-remove-sequence-handling.patch --]
[-- Type: text/x-patch, Size: 2167 bytes --]
>From 652251115033be83c3626b260d9f1fdf0e479b73 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jan-Simon=20M=C3=B6ller?= <dl9pf@gmx.de>
Date: Wed, 9 Jul 2014 14:26:53 +0200
Subject: [PATCH] Enhance error-checking and remove sequence handling.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Jan-Simon Möller <dl9pf@gmx.de>
---
drivers/leds/leds-blinkm.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
index d0452b0..9e7b988 100644
--- a/drivers/leds/leds-blinkm.c
+++ b/drivers/leds/leds-blinkm.c
@@ -449,6 +449,8 @@ static void led_work(struct work_struct *work)
led = blm_work->blinkm_led;
data = i2c_get_clientdata(led->i2c_client);
ret = blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
+ if(ret)
+ dev_err(&led->i2c_client->dev, "BlinkM: HW transfer error\n");
atomic_dec(&led->active);
dev_dbg(&led->i2c_client->dev,
"# DONE # next_red = %d, next_green = %d,"
@@ -548,7 +550,11 @@ static void blinkm_init_hw(struct i2c_client *client)
{
int ret;
ret = blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
+ if(ret)
+ dev_err(&client->dev, "BlinkM: HW transfer error\n");
ret = blinkm_transfer_hw(client, BLM_GO_RGB);
+ if(ret)
+ dev_err(&client->dev, "BlinkM: HW transfer error\n");
}
static int blinkm_test_run(struct i2c_client *client)
@@ -747,6 +753,8 @@ static int blinkm_remove(struct i2c_client *client)
/* make sure no workqueue entries are pending */
for (i = 0; i < 3; i++) {
+ //imbalance active counter to prevent further work
+ atomic_inc(&data->blinkm_leds[i].active);
flush_scheduled_work();
led_classdev_unregister(&data->blinkm_leds[i].led_cdev);
}
@@ -780,6 +788,10 @@ static int blinkm_remove(struct i2c_client *client)
dev_err(&client->dev, "Failure in blinkm_remove ignored. Continuing.\n");
sysfs_remove_group(&client->dev.kobj, &blinkm_group);
+
+ // make sure all is done before returning
+ flush_scheduled_work();
+
return 0;
}
--
1.8.4.5
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 1/1] leds: blinkm: Remove unused variable
2014-07-09 12:34 ` Jan-Simon Möller
@ 2014-07-15 0:54 ` Bryan Wu
0 siblings, 0 replies; 5+ messages in thread
From: Bryan Wu @ 2014-07-15 0:54 UTC (permalink / raw)
To: Jan-Simon Möller; +Cc: Sachin Kamat, Linux LED Subsystem, Sachin Kamat
On Wed, Jul 9, 2014 at 5:34 AM, Jan-Simon Möller <dl9pf@gmx.de> wrote:
> What about this ...
>
>
Could you post the patch directly here? and please fix those C++ style comments.
-Bryan
> --
>
> Dipl.-Ing.
> Jan-Simon Möller
>
> jansimon.moeller@gmx.de
> Am Dienstag, 1. Juli 2014, 23:50:29 schrieb Jan-Simon Möller:
>> Nighttime here. I'll look tomorrow.
>>
>> > On Tue, Jul 1, 2014 at 5:07 AM, Sachin Kamat <sachin.kamat@samsung.com>
>>
>> wrote:
>> > > 'ret' is not used in the function. Remove it.
>> >
>> > Removing it is easy but I guess we should check the return error status
>> > here. Jan-Simon, what's your opinion then?
>> >
>> > Thanks,
>> > -Bryan
>> >
>> > > Signed-off-by: Sachin Kamat <sachin.kamat@samsung.com>
>> > > ---
>> > >
>> > > drivers/leds/leds-blinkm.c | 8 +++-----
>> > > 1 file changed, 3 insertions(+), 5 deletions(-)
>> > >
>> > > diff --git a/drivers/leds/leds-blinkm.c b/drivers/leds/leds-blinkm.c
>> > > index d0452b099aee..f07f920ac0ac 100644
>> > > --- a/drivers/leds/leds-blinkm.c
>> > > +++ b/drivers/leds/leds-blinkm.c
>> > > @@ -441,14 +441,13 @@ static int blinkm_transfer_hw(struct i2c_client
>> > > *client, int cmd)>
>> > >
>> > > static void led_work(struct work_struct *work)
>> > > {
>> > >
>> > > - int ret;
>> > >
>> > > struct blinkm_led *led;
>> > > struct blinkm_data *data;
>> > > struct blinkm_work *blm_work = work_to_blmwork(work);
>> > >
>> > > led = blm_work->blinkm_led;
>> > > data = i2c_get_clientdata(led->i2c_client);
>> > >
>> > > - ret = blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
>> > > + blinkm_transfer_hw(led->i2c_client, BLM_GO_RGB);
>> > >
>> > > atomic_dec(&led->active);
>> > > dev_dbg(&led->i2c_client->dev,
>> > >
>> > > "# DONE # next_red = %d, next_green = %d,"
>> > >
>> > > @@ -546,9 +545,8 @@ static void blinkm_led_blue_set(struct led_classdev
>> > > *led_cdev,>
>> > >
>> > > static void blinkm_init_hw(struct i2c_client *client)
>> > > {
>> > >
>> > > - int ret;
>> > > - ret = blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
>> > > - ret = blinkm_transfer_hw(client, BLM_GO_RGB);
>> > > + blinkm_transfer_hw(client, BLM_STOP_SCRIPT);
>> > > + blinkm_transfer_hw(client, BLM_GO_RGB);
>> > >
>> > > }
>> > >
>> > > static int blinkm_test_run(struct i2c_client *client)
>> > >
>> > > --
>> > > 1.7.9.5
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-07-15 0:55 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-07-01 12:07 [PATCH 1/1] leds: blinkm: Remove unused variable Sachin Kamat
2014-07-01 15:54 ` Bryan Wu
2014-07-01 21:50 ` Jan-Simon Möller
2014-07-09 12:34 ` Jan-Simon Möller
2014-07-15 0:54 ` Bryan Wu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox