]> git.saurik.com Git - apple/xnu.git/blob - osfmk/man/i386_io_port_add.html
xnu-344.tar.gz
[apple/xnu.git] / osfmk / man / i386_io_port_add.html
1 <h2>i386_io_port_add</h2> <hr> <p> <strong>Function</strong> - Permit target thread to invoke operations on the specified device. <h3>SYNOPSIS</h3> <pre> <strong>kern_return_t i386_io_port_add</strong> <strong>(thread_act_t</strong> <var>target_act</var>, <strong>device_t</strong> <var>device</var><strong>);</strong> </pre> <h3>PARAMETERS</h3> <dl> <p> <dt> <var>target_act</var> <dd> [in thread send right] Thread whose permission bitmap is to be set. <p> <dt> <var>device</var> <dd> [in device send right] The device to which I/O instructions are to be permitted. </dl> <h3>DESCRIPTION</h3> <p> The <strong>i386_io_port_add</strong> function adds a device to the I/O permission bitmap for a thread, thereby permitting the thread to execute I/O instructions against the device. <h3>NOTES</h3> <p> Normally, the thread must have called <strong>i386_io_port_add</strong> for all devices to which it will execute I/O instructions. However, possessing send rights to the <var>iopl</var> device port will cause the <var>iopl</var> device to be automatically added to the thread's I/O map upon first attempted access. This is a backward compatibility feature for the DOS emulator. <h3>RETURN VALUES</h3> <p> Only generic errors apply. <h3>RELATED INFORMATION</h3> <p> Functions: <a href="i386_io_port_list.html"><strong>i386_io_port_list<strong></a>, <a href="i386_io_port_remove.html"><strong>i386_io_port_remove<strong></a>.