]> git.saurik.com Git - apple/xnu.git/blob - osfmk/man/i386_io_port_add.html
xnu-2422.1.72.tar.gz
[apple/xnu.git] / osfmk / man / i386_io_port_add.html
1 <h2>i386_io_port_add</h2>
2 <hr>
3 <p>
4 <strong>Function</strong> - Permit target thread to invoke operations on the specified device.
5 <h3>SYNOPSIS</h3>
6 <pre>
7 <strong>kern_return_t i386_io_port_add</strong>
8 <strong>(thread_act_t</strong> <var>target_act</var>,
9 <strong>device_t</strong> <var>device</var><strong>);</strong>
10 </pre>
11 <h3>PARAMETERS</h3>
12 <dl>
13 <p>
14 <dt> <var>target_act</var>
15 <dd>
16 [in thread send right]
17 Thread whose permission bitmap is to be set.
18 <p>
19 <dt> <var>device</var>
20 <dd>
21 [in device send right]
22 The device to which I/O instructions are to be
23 permitted.
24 </dl>
25 <h3>DESCRIPTION</h3>
26 <p>
27 The <strong>i386_io_port_add</strong> function adds a device to the
28 I/O permission bitmap for a
29 thread, thereby permitting the thread to execute I/O instructions against the
30 device.
31 <h3>NOTES</h3>
32 <p>
33 Normally, the thread must have called <strong>i386_io_port_add</strong>
34 for all devices to which it will execute I/O instructions. However, possessing
35 send rights to the <var>iopl</var> device port will cause the
36 <var>iopl</var> device to be automatically added to the
37 thread's I/O map upon first attempted access. This is a backward
38 compatibility feature for the DOS emulator.
39 <h3>RETURN VALUES</h3>
40 <p>
41 Only generic errors apply.
42 <h3>RELATED INFORMATION</h3>
43 <p>
44 Functions:
45 <a href="i386_io_port_list.html"><strong>i386_io_port_list<strong></a>,
46 <a href="i386_io_port_remove.html"><strong>i386_io_port_remove<strong></a>.