diff options
author | Valentin Rothberg <Valentin.Rothberg@lip6.fr> | 2015-02-16 17:32:48 +0100 |
---|---|---|
committer | Sebastian Reichel <sre@kernel.org> | 2015-03-07 20:32:22 +0100 |
commit | 02232be7a2bf6e2dd5e4a6c3a81470a09ecc7fdd (patch) | |
tree | ed27aec75fa383838a7451eea1a57fa3e3c7ff7f /drivers/power/twl4030_charger.c | |
parent | 5a5bf49088f4c92f36786a2e4c20e17f715f0827 (diff) |
ab8500_fg.c: only request threaded IRQs when necessary
All 5 IRQ handlers of the driver are requested as threaded interrupt
handlers. However, only 1 handler can block. The remaining 4 handlers
defer the actual handling to a workqueue. Hence, 4 of 5 IRQ handlers
have a considerable overhead, since they are executed in a kernel thread
to schedule another kernel thread (workqueue).
This change splits up the 5 interrupt handlers into top halves (_th) and
bottom halves (_bh) and resolves the aforementioned overhead by only
requesting threaded interrupts (i.e., bottom halves) when necessary.
Signed-off-by: Valentin Rothberg <Valentin.Rothberg@lip6.fr>
Signed-off-by: Sebastian Reichel <sre@kernel.org>
Diffstat (limited to 'drivers/power/twl4030_charger.c')
0 files changed, 0 insertions, 0 deletions