|
Kernel Functions for Drivers | inb(9F) |
| inb, inw, inl, repinsb, repinsw, repinsd - read from an I/O port |
SYNOPSIS
|
#include <sys/ddi.h>
#include <sys/sunddi.h> unsigned char inb(int port); |
| unsigned short inw(int
port); |
| unsigned long inl(int port); |
|
void repinsb(int port, unsigned char *addr, int
count); |
| void repinsw(int port, unsigned short *addr, int
count); |
| void repinsd(int port, unsigned long *addr, int
count); |
|
Solaris IA DDI specific (Solaris IA DDI).
|
|
-
port
- A valid I/O port address.
-
addr
- The address of a buffer where the values will be stored.
-
count
- The number of values to be read from the I/O port.
|
|
These routines read data of various sizes from the I/O port with the address specified by port.
The inb(), inw(), and inl() functions read 8 bits, 16 bits, and 32 bits of data respectively, returning the resulting values.
The repinsb(), repinsw(), and repinsd() functions read multiple 8-bit, 16-bit, and 32-bit values, respectively. count
specifies the number of values to be read. A pointer to a buffer will receive the input data; the buffer must be long enough to hold count values of the requested size.
|
|
inb(), inw(), and inl() return the value that was read from the I/O port.
|
|
These functions may be called from user or interrupt context.
|
|
See attributes(5) for descriptions of the following
attributes:
ATTRIBUTE TYPE | ATTRIBUTE VALUE |
Architecture | IA |
|
| |