![]()  | 
![]()  | 
![]()  | 
![]()  | 
Write a 16-bit value to a port
#include <hw/inout.h>
void out16( uintptr_t port, 
            uint16_t val );
#define outbe16( port,
                 val ) ...
#define outle16( port,
                 val ) ...
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The out16() function writes the native-endian 16-bit value, specified by val, to the specified port.
The outbe16() and outle16() macros write the native-endian 16-bit value, specified by val, to the specified port in big-endian or little-endian format, respectively.
| Safety: | |
|---|---|
| Cancellation point | No | 
| Interrupt handler | Yes | 
| Signal handler | Yes | 
| Thread | Yes | 
The calling thread must have I/O privileges; see ThreadCtl()'s _NTO_TCTL_IO command for details.
The calling process must also use mmap_device_io() to access the device's I/O registers.
outbe16() and outle16() are implemented as macros.
in8(), in8s(), in16(), in16s(), in32(), in32s(), mmap_device_io(), out8(), out8s(), out16s(), out32(), out32s()
![]()  | 
![]()  | 
![]()  | 
![]()  |