Commit d671a605 authored by Andreas Fenkart's avatar Andreas Fenkart Committed by Thomas Gleixner

genirq: Add kerneldoc for irq_disable.

Document the lazy disable functionality. comment based on changelog of
d209a699Signed-off-by: default avatarAndreas Fenkart <andreas.fenkart@streamunlimited.com>
Cc: balbi@ti.com
Link: http://lkml.kernel.org/r/1368181290-1583-1-git-send-email-andreas.fenkart@streamunlimited.comSigned-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
parent e8bd834f
...@@ -213,6 +213,19 @@ void irq_enable(struct irq_desc *desc) ...@@ -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);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment