Write 8-bit values to a port
#include <hw/inout.h> void * out8s( const void * buff, unsigned len, uintptr_t port );
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The out8s() function writes len 8-bit values from the buffer pointed to by buff to the specified port.
The calling process must use mmap_device_io() to access the device's I/O registers.
On x86 and x86_64 targets, the process must have the PROCMGR_AID_IO ability enabled, and the calling thread must have I/O privileges, or else it will fault with a SIGSEGV; see procmgr_ability(), and the ThreadCtl() _NTO_TCTL_IO command.
A pointer to the end of the written data.
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | Yes |
Signal handler | Yes |
Thread | Yes |