1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>usb_fill_int_urb</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="The Linux-USB Host Side API"><link rel="up" href="hostside.html" title="Chapter&#160;4.&#160;Host-Side Data Types and Macros"><link rel="prev" href="API-usb-fill-bulk-urb.html" title="usb_fill_bulk_urb"><link rel="next" href="API-usb-urb-dir-in.html" title="usb_urb_dir_in"></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">usb_fill_int_urb</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-usb-fill-bulk-urb.html">Prev</a>&#160;</td><th width="60%" align="center">Chapter&#160;4.&#160;Host-Side Data Types and Macros</th><td width="20%" align="right">&#160;<a accesskey="n" href="API-usb-urb-dir-in.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-usb-fill-int-urb"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>usb_fill_int_urb &#8212; 
2     macro to help initialize a interrupt urb
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">usb_fill_int_urb </b>(</code></td><td>struct urb * <var class="pdparam">urb</var>, </td></tr><tr><td>&#160;</td><td>struct usb_device * <var class="pdparam">dev</var>, </td></tr><tr><td>&#160;</td><td>unsigned int <var class="pdparam">pipe</var>, </td></tr><tr><td>&#160;</td><td>void * <var class="pdparam">transfer_buffer</var>, </td></tr><tr><td>&#160;</td><td>int <var class="pdparam">buffer_length</var>, </td></tr><tr><td>&#160;</td><td>usb_complete_t <var class="pdparam">complete_fn</var>, </td></tr><tr><td>&#160;</td><td>void * <var class="pdparam">context</var>, </td></tr><tr><td>&#160;</td><td>int <var class="pdparam">interval</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer">&#160;</div></div></div><div class="refsect1"><a name="idp1115893452"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>urb</code></em></span></dt><dd><p>
4     pointer to the urb to initialize.
5    </p></dd><dt><span class="term"><em class="parameter"><code>dev</code></em></span></dt><dd><p>
6     pointer to the struct usb_device for this urb.
7    </p></dd><dt><span class="term"><em class="parameter"><code>pipe</code></em></span></dt><dd><p>
8     the endpoint pipe
9    </p></dd><dt><span class="term"><em class="parameter"><code>transfer_buffer</code></em></span></dt><dd><p>
10     pointer to the transfer buffer
11    </p></dd><dt><span class="term"><em class="parameter"><code>buffer_length</code></em></span></dt><dd><p>
12     length of the transfer buffer
13    </p></dd><dt><span class="term"><em class="parameter"><code>complete_fn</code></em></span></dt><dd><p>
14     pointer to the usb_complete_t function
15    </p></dd><dt><span class="term"><em class="parameter"><code>context</code></em></span></dt><dd><p>
16     what to set the urb context to.
17    </p></dd><dt><span class="term"><em class="parameter"><code>interval</code></em></span></dt><dd><p>
18     what to set the urb interval to, encoded like
19     the endpoint descriptor's bInterval value.
20    </p></dd></dl></div></div><div class="refsect1"><a name="idp1115902116"></a><h2>Description</h2><p>
21   Initializes a interrupt urb with the proper information needed to submit
22   it to a device.
23   </p><p>
24
25   Note that High Speed and SuperSpeed interrupt endpoints use a logarithmic
26   encoding of the endpoint interval, and express polling intervals in
27   microframes (eight per millisecond) rather than in frames (one per
28   millisecond).
29   </p><p>
30
31   Wireless USB also uses the logarithmic encoding, but specifies it in units of
32   128us instead of 125us.  For Wireless USB devices, the interval is passed
33   through to the host controller, rather than being translated into microframe
34   units.
35</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-usb-fill-bulk-urb.html">Prev</a>&#160;</td><td width="20%" align="center"><a accesskey="u" href="hostside.html">Up</a></td><td width="40%" align="right">&#160;<a accesskey="n" href="API-usb-urb-dir-in.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">usb_fill_bulk_urb</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">usb_urb_dir_in</span></td></tr></table></div></body></html>
36