inb(9F)
NAME
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);
AVAILABILITY
x86
INTERFACE LEVEL
Solaris x86 DDI specific (Solaris x86 DDI).
ARGUMENTS
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.
DESCRIPTION
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 a pointer to a buffer will receive the input data; the buffer must be long enough to hold count values of the requested size.
RETURN VALUES
inb(), inw(), and inl() return the value that was read from the I/O port.
CONTEXT
These functions may be called from user or interrupt context.
SEE ALSO
eisa(4), isa(4), mca(4), outb(9F)
Writing Device Drivers
SunOS 5.5.1 — Last change: 15 Feb 1994