1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>struct irb</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Writing s390 channel device drivers"><link rel="up" href="ccw.html#channelIO" title="I/O functions for channel-attached devices"><link rel="prev" href="API-struct-esw-eadm.html" title="struct esw_eadm"><link rel="next" href="API-struct-ciw.html" title="struct ciw"></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">struct irb</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-struct-esw-eadm.html">Prev</a>&#160;</td><th width="60%" align="center">I/O functions for channel-attached devices</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-struct-ciw.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-struct-irb"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>struct irb &#8212; 
2     interruption response block
3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="programlisting">
4struct irb {
5  union scsw scsw;
6  union esw;
7  __u8 ecw[32];
8};  </pre></div><div class="refsect1"><a name="idp1124110996"></a><h2>Members</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term">scsw</span></dt><dd><p>
9   subchannel status word
10      </p></dd><dt><span class="term">esw</span></dt><dd><p>
11   extended status word
12      </p></dd><dt><span class="term">ecw[32]</span></dt><dd><p>
13   extended control word
14      </p></dd></dl></div></div><div class="refsect1"><a name="idp1124113612"></a><h2>Description</h2><p>
15   The irb that is handed to the device driver when an interrupt occurs. For
16   solicited interrupts, the common I/O layer already performs checks whether
17   a field is valid; a field not being valid is always passed as <code class="constant">0</code>.
18   If a unit check occurred, <em class="parameter"><code>ecw</code></em> may contain sense data; this is retrieved
19   by the common I/O layer itself if the device doesn't support concurrent
20   sense (so that the device driver never needs to perform basic sene itself).
21   For unsolicited interrupts, the irb is passed as-is (expect for sense data,
22   if applicable).
23</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-struct-esw-eadm.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="ccw.html#channelIO">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-struct-ciw.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">struct esw_eadm</span>&#160;</td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top">&#160;<span class="phrase">struct ciw</span></td></tr></table></div></body></html>
24