1*a1e26a70SApple OSS Distributions<h2>device_read_async</h2> 2*a1e26a70SApple OSS Distributions<hr> 3*a1e26a70SApple OSS Distributions<p> 4*a1e26a70SApple OSS Distributions<strong>System Trap</strong> - Read a sequence of bytes from a device object. 5*a1e26a70SApple OSS Distributions<h3>SYNOPSIS</h3> 6*a1e26a70SApple OSS Distributions<pre> 7*a1e26a70SApple OSS Distributions<strong>kern_return_t device_read_async</strong> 8*a1e26a70SApple OSS Distributions <strong>(mach_port_t</strong> <var>device</var>, 9*a1e26a70SApple OSS Distributions <strong>mach_port_t</strong> <var>queue</var>, 10*a1e26a70SApple OSS Distributions <strong>mach_port_t</strong> <var>request_id</var>, 11*a1e26a70SApple OSS Distributions <strong>dev_mode_t</strong> <var>mode</var>, 12*a1e26a70SApple OSS Distributions <strong>recnum_t</strong> <var>recnum</var>, 13*a1e26a70SApple OSS Distributions <strong>io_buf_len_t</strong> <var>bytes_wanted</var><strong>);</strong> 14*a1e26a70SApple OSS Distributions</pre> 15*a1e26a70SApple OSS Distributions<h3>PARAMETERS</h3> 16*a1e26a70SApple OSS Distributions<dl> 17*a1e26a70SApple OSS Distributions<p> 18*a1e26a70SApple OSS Distributions<dt> <var>device</var> 19*a1e26a70SApple OSS Distributions<dd> 20*a1e26a70SApple OSS Distributions[in device send right] A device port to the device to be read. 21*a1e26a70SApple OSS Distributions<p> 22*a1e26a70SApple OSS Distributions<dt> <var>queue</var> 23*a1e26a70SApple OSS Distributions<dd> 24*a1e26a70SApple OSS Distributions[in io_done queue send right] The port returned from 25*a1e26a70SApple OSS Distributionsio_done_queue_create. 26*a1e26a70SApple OSS Distributions<p> 27*a1e26a70SApple OSS Distributions<dt> <var>request_id</var> 28*a1e26a70SApple OSS Distributions<dd> 29*a1e26a70SApple OSS Distributions[in send right] An unique request identifier that will be passed back as 30*a1e26a70SApple OSS Distributionspart of the io_done_result structure. 31*a1e26a70SApple OSS Distributions<p> 32*a1e26a70SApple OSS Distributions<dt> <var>mode</var> 33*a1e26a70SApple OSS Distributions<dd> 34*a1e26a70SApple OSS Distributions[in scalar] I/O mode value. Meaningful options are: 35*a1e26a70SApple OSS Distributions<p> 36*a1e26a70SApple OSS Distributions <dl> 37*a1e26a70SApple OSS Distributions<dt> <strong>D_NOWAIT</strong> 38*a1e26a70SApple OSS Distributions<dd> 39*a1e26a70SApple OSS DistributionsDo not wait if data is unavailable. 40*a1e26a70SApple OSS Distributions </dl> 41*a1e26a70SApple OSS Distributions<p> 42*a1e26a70SApple OSS Distributions<dt> <var>recnum</var> 43*a1e26a70SApple OSS Distributions<dd> 44*a1e26a70SApple OSS Distributions[in scalar] Record number to be read. 45*a1e26a70SApple OSS Distributions<p> 46*a1e26a70SApple OSS Distributions<dt> <var>bytes_wanted</var> 47*a1e26a70SApple OSS Distributions<dd> 48*a1e26a70SApple OSS Distributions[in scalar] Size of data transfer. 49*a1e26a70SApple OSS Distributions</dl> 50*a1e26a70SApple OSS Distributions<h3>DESCRIPTION</h3> 51*a1e26a70SApple OSS Distributions<p> 52*a1e26a70SApple OSS DistributionsThe <strong>device_read_async</strong> interface enqueues a read operation for a 53*a1e26a70SApple OSS Distributionssequence of bytes from a device object. The meaning of recnum as well 54*a1e26a70SApple OSS Distributionsas the specific operation performed is device dependent. 55*a1e26a70SApple OSS Distributions<h3>RETURN VALUES</h3> 56*a1e26a70SApple OSS Distributions<dl> 57*a1e26a70SApple OSS Distributions<strong>device_read_async</strong> returns only invalid parameter errors. 58*a1e26a70SApple OSS Distributions<dd> 59*a1e26a70SApple OSS Distributions</dl> 60*a1e26a70SApple OSS Distributions<h3>RELATED INFORMATION</h3> 61*a1e26a70SApple OSS Distributions<p> 62*a1e26a70SApple OSS DistributionsFunctions: 63*a1e26a70SApple OSS Distributions<a href="device_read_async_inband.html"><strong>device_read_async_inband</strong></a>, 64*a1e26a70SApple OSS Distributions<a href="DR_overwrite_async.html"><strong>device_read_overwrite_async</strong></a>, 65*a1e26a70SApple OSS Distributions<a href="device_write_async.html"><strong>device_write_async</strong></a>, 66*a1e26a70SApple OSS Distributions<a href="device_write_async_inband.html"><strong>device_write_async_inband</strong></a>, 67*a1e26a70SApple OSS Distributions<a href="io_done_queue_create.html"><strong>io_done_queue_create</strong></a>. 68