1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>irq_disable</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux generic IRQ handling"><link rel="up" href="intfunctions.html" title="Chapter 10. Internal Functions Provided"><link rel="prev" href="API-irq-set-msi-desc.html" title="irq_set_msi_desc"><link rel="next" href="API-handle-edge-eoi-irq.html" title="handle_edge_eoi_irq"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">irq_disable</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-irq-set-msi-desc.html">Prev</a> </td><th width="60%" align="center">Chapter 10. Internal Functions Provided</th><td width="20%" align="right"> <a accesskey="n" href="API-handle-edge-eoi-irq.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-irq-disable"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>irq_disable — 2 Mark interrupt disabled 3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">void <b class="fsfunc">irq_disable </b>(</code></td><td>struct irq_desc * <var class="pdparam">desc</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idp1103342948"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>desc</code></em></span></dt><dd><p> 4 irq descriptor which should be disabled 5 </p></dd></dl></div></div><div class="refsect1"><a name="idp1103344532"></a><h2>Description</h2><p> 6 If the chip does not implement the irq_disable callback, we 7 use a lazy disable approach. That means we mark the interrupt 8 disabled, but leave the hardware unmasked. That's an 9 optimization because we avoid the hardware access for the 10 common case where no interrupt happens after we marked it 11 disabled. If an interrupt happens, then the interrupt flow 12 handler masks the line at the hardware level and marks it 13 pending. 14</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-irq-set-msi-desc.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="intfunctions.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API-handle-edge-eoi-irq.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">irq_set_msi_desc</span> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">handle_edge_eoi_irq</span></td></tr></table></div></body></html> 15