mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-15 23:25:07 +00:00
genirq: Add kerneldoc for irq_disable.
Document the lazy disable functionality. comment based on changelog of
d209a699a0
Signed-off-by: Andreas Fenkart <andreas.fenkart@streamunlimited.com>
Cc: balbi@ti.com
Link: http://lkml.kernel.org/r/1368181290-1583-1-git-send-email-andreas.fenkart@streamunlimited.com
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
e8bd834f73
commit
d671a60558
1 changed files with 13 additions and 0 deletions
|
@ -213,6 +213,19 @@ void irq_enable(struct irq_desc *desc)
|
||||||
irq_state_clr_masked(desc);
|
irq_state_clr_masked(desc);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* irq_disable - Mark interupt disabled
|
||||||
|
* @desc: irq descriptor which should be disabled
|
||||||
|
*
|
||||||
|
* If the chip does not implement the irq_disable callback, we
|
||||||
|
* use a lazy disable approach. That means we mark the interrupt
|
||||||
|
* disabled, but leave the hardware unmasked. That's an
|
||||||
|
* optimization because we avoid the hardware access for the
|
||||||
|
* common case where no interrupt happens after we marked it
|
||||||
|
* disabled. If an interrupt happens, then the interrupt flow
|
||||||
|
* handler masks the line at the hardware level and marks it
|
||||||
|
* pending.
|
||||||
|
*/
|
||||||
void irq_disable(struct irq_desc *desc)
|
void irq_disable(struct irq_desc *desc)
|
||||||
{
|
{
|
||||||
irq_state_set_disabled(desc);
|
irq_state_set_disabled(desc);
|
||||||
|
|
Loading…
Reference in a new issue