linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH/RFC v2 0/5] Remove work queues from LED class drivers
@ 2015-06-30 13:55 Jacek Anaszewski
  2015-06-30 16:39 ` Stas Sergeev
  0 siblings, 1 reply; 2+ messages in thread
From: Jacek Anaszewski @ 2015-06-30 13:55 UTC (permalink / raw)
  To: linux-leds
  Cc: linux-kernel, cooloney, rpurdie, stsp, pavel, sakari.ailus,
	andreas.werner, andrew, ospite, anemo, ben, bootc, dmurphy,
	daniel.jeong, daniel, davem, fabio.baltieri, balbi, florian,
	gshark.jeong, g.liakhovetski, ingi2.kim, dl9pf, johan, lenz,
	jogo, q1.kim, kris, kristoffer.ericson, linus.walleij, broonie,
	michael.hennerich, milo.kim, nm127, ncase, neilb, nick.forbes,
	lost.distance, p.meerwald, n0-1, philippe.retornaz, raph,
	rpurdie, rod, dave, giometti, bigeasy, shuahkhan, sguinot,
	Jacek Anaszewski

V2 includes also patches for one LED class driver
and two LED flash class drivers, that show how the
drivers will benefit from the optimization being
introduced in the first patch of this patch set.

I was able to test only the LED Flash class drivers.

Original message from the patch 483a3122 ("leds: Use set_brightness_work for
brightness_set ops that can sleep") that was sent previously as a single one:

Hi All,

Since this patch will affect all the LED subsystem drivers
I'd like it was tested by as many developers as possible
to make sure that I haven't missed something.

For the drivers which can sleep in their brightness_set ops
(e.g. use mutex or gpio "cansleep" API) you only need to
remove the work queues and move the code executed currently
in the work queue task to the brightness_set op, as now
LED core does the job.

For drivers that are capable of setting brightness with use
of MMIO you need to set the LED_BRIGHTNESS_FAST flag, so
that LED core would know that it doesn't have to employ
work queue.

After the patch is positively verified I will create relevant
patches for every LED class driver.

This patch is based on linux-next_20150622.

I am looking forward to your cooperation.

Best Regards,
Jacek Anaszewski

Jacek Anaszewski (5):
  leds: Use set_brightness_work for brightness_set ops that can sleep
  leds: pwm: remove work queue
  led: flash: remove check for brightness_set_sync op
  leds: max77693: remove work queue
  leds: aat1290: remove work queue

 drivers/leds/led-class-flash.c            |    3 --
 drivers/leds/led-class.c                  |   18 ++++++----
 drivers/leds/led-core.c                   |   50 +++++++++++++++-----------
 drivers/leds/leds-aat1290.c               |   50 +++++++-------------------
 drivers/leds/leds-max77693.c              |   55 ++++-------------------------
 drivers/leds/leds-pwm.c                   |   24 +++----------
 drivers/leds/leds.h                       |   41 ++++++++++++---------
 drivers/leds/trigger/ledtrig-backlight.c  |    8 ++---
 drivers/leds/trigger/ledtrig-default-on.c |    2 +-
 drivers/leds/trigger/ledtrig-gpio.c       |    6 ++--
 drivers/leds/trigger/ledtrig-heartbeat.c  |    4 +--
 drivers/leds/trigger/ledtrig-oneshot.c    |    4 +--
 drivers/leds/trigger/ledtrig-transient.c  |    8 ++---
 include/linux/leds.h                      |    9 ++---
 14 files changed, 107 insertions(+), 175 deletions(-)

-- 
1.7.9.5


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

* Re: [PATCH/RFC v2 0/5] Remove work queues from LED class drivers
  2015-06-30 13:55 [PATCH/RFC v2 0/5] Remove work queues from LED class drivers Jacek Anaszewski
@ 2015-06-30 16:39 ` Stas Sergeev
  0 siblings, 0 replies; 2+ messages in thread
From: Stas Sergeev @ 2015-06-30 16:39 UTC (permalink / raw)
  To: Jacek Anaszewski, linux-leds
  Cc: linux-kernel, cooloney, rpurdie, stsp, pavel, sakari.ailus,
	andreas.werner, andrew, ospite, anemo, ben, bootc, dmurphy,
	daniel.jeong, daniel, davem, fabio.baltieri, balbi, florian,
	gshark.jeong, g.liakhovetski, ingi2.kim, dl9pf, johan, lenz,
	jogo, q1.kim, kris, kristoffer.ericson, linus.walleij, broonie,
	michael.hennerich, milo.kim, nm127, ncase, neilb, nick.forbes,
	lost.distance, p.meerwald, n0-1, philippe.retornaz, raph,
	rpurdie, rod, dave, giometti, bigeasy, shuahkhan, sguinot

30.06.2015 16:55, Jacek Anaszewski пишет:
> V2 includes also patches for one LED class driver
> and two LED flash class drivers, that show how the
> drivers will benefit from the optimization being
> introduced in the first patch of this patch set.
> 
> I was able to test only the LED Flash class drivers.
> 
> Original message from the patch 483a3122 ("leds: Use set_brightness_work for
> brightness_set ops that can sleep") that was sent previously as a single one:
> 
> Hi All,
> 
> Since this patch will affect all the LED subsystem drivers
> I'd like it was tested by as many developers as possible
> to make sure that I haven't missed something.
> 
> For the drivers which can sleep in their brightness_set ops
> (e.g. use mutex or gpio "cansleep" API) you only need to
> remove the work queues and move the code executed currently
> in the work queue task to the brightness_set op, as now
> LED core does the job.
> 
> For drivers that are capable of setting brightness with use
> of MMIO you need to set the LED_BRIGHTNESS_FAST flag, so
> that LED core would know that it doesn't have to employ
> work queue.
> 
> After the patch is positively verified I will create relevant
> patches for every LED class driver.
> 
> This patch is based on linux-next_20150622.
> 
> I am looking forward to your cooperation.
FYI I ported my soft-pwm patches to yours and that seems to
work fine. So I am looking forward for this being applied, then
I'll post them again.

Acked-by: Stas Sergeev <stsp@users.sourceforge.net>

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

end of thread, other threads:[~2015-06-30 16:43 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-06-30 13:55 [PATCH/RFC v2 0/5] Remove work queues from LED class drivers Jacek Anaszewski
2015-06-30 16:39 ` Stas Sergeev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).