From: florian.vaussard@epfl.ch (Florian Vaussard)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 0/3] leds-pwm: Defer PWM calls if PWM can sleep
Date: Mon, 28 Jan 2013 15:00:56 +0100 [thread overview]
Message-ID: <1359381659-24454-1-git-send-email-florian.vaussard@epfl.ch> (raw)
Hello,
When using the leds-pwm module with external PWM chips connected through
I2C, the kernel will panic when settings a trigger. In this case, PWM
calls can sleep, and should be deferred.
Patch 1 and 2 add the necessary API to the PWM subsystem, and update
matching drivers. Patch 3 updates leds-pwm to use a worker if the PWM
chip can sleep, or performs direct calls otherwise.
This patchset is based on the for-next branch of the led subsystem [1],
as patch 3 depends on the recent work of Peter for DT bindings in leds-pwm.
The pwm patches should probably follow the same path.
Tested on Overo (OMAP3 + TWL4030) with device tree.
Best regards,
Florian
[1] git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds.git
Changes from v2:
* pwm_cansleep -> pwm_can_sleep
* use bool for can_sleep member
* minor fixes
Changes from v1:
* pwm_can_sleep -> pwm_cansleep
* avoid duplicated code between the worker and the direct call
* cache the value of pwm_cansleep inside leds-pwm to avoid API calls
Florian Vaussard (3):
pwm: Add pwm_can_sleep() as exported API to users
pwm: Add can_sleep property to drivers
leds: leds-pwm: Defer led_pwm_set() if PWM can sleep
drivers/leds/leds-pwm.c | 50 +++++++++++++++++++++++++++++++++++++-------
drivers/pwm/core.c | 12 ++++++++++
drivers/pwm/pwm-twl-led.c | 1 +
drivers/pwm/pwm-twl.c | 1 +
include/linux/pwm.h | 10 +++++++++
5 files changed, 66 insertions(+), 8 deletions(-)
--
1.7.5.4
next reply other threads:[~2013-01-28 14:00 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-01-28 14:00 Florian Vaussard [this message]
2013-01-28 14:00 ` [PATCH v3 1/3] pwm: Add pwm_can_sleep() as exported API to users Florian Vaussard
2013-01-29 8:20 ` Peter Ujfalusi
2013-01-30 8:14 ` Thierry Reding
2013-01-28 14:00 ` [PATCH v3 2/3] pwm: Add can_sleep property to drivers Florian Vaussard
2013-01-30 8:15 ` Thierry Reding
2013-01-28 14:00 ` [PATCH v3 3/3] leds: leds-pwm: Defer led_pwm_set() if PWM can sleep Florian Vaussard
2013-01-29 8:20 ` Peter Ujfalusi
2013-01-30 8:17 ` Thierry Reding
2013-02-04 8:53 ` Florian Vaussard
2013-02-27 16:08 ` Florian Vaussard
2013-03-04 10:44 ` Florian Vaussard
2013-03-04 10:58 ` Thierry Reding
2013-03-05 15:39 ` Florian Vaussard
2013-03-12 10:06 ` Florian Vaussard
2013-03-15 17:08 ` Bryan Wu
2013-03-15 18:59 ` Thierry Reding
2013-03-15 20:09 ` Florian Vaussard
2013-03-15 21:02 ` Bryan Wu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1359381659-24454-1-git-send-email-florian.vaussard@epfl.ch \
--to=florian.vaussard@epfl.ch \
--cc=linux-arm-kernel@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).