NAME
ik —
Ikonas frame buffer, graphics
device interface
SYNOPSIS
ik0 at uba? csr 0172460 vector ikintr
DESCRIPTION
NOTE: This driver has not been ported from
4.4BSD yet.
The
ik driver provides an interface to an Ikonas frame buffer
graphics device. Each minor device is a different frame buffer interface
board. When the device is opened, its interface registers are mapped, via
virtual memory, into the user processes address space. This allows the user
process very high bandwidth to the frame buffer with no system call overhead.
Bytes written or read from the device are DMA'ed from or to the interface. The
frame buffer XY address, its addressing mode, etc. must be set up by the user
process before calling write or read.
Other communication with the driver is via ioctls. The
IK_GETADDR
ioctl(2) returns the virtual
address where the user process can find the interface registers. The
IK_WAITINT
ioctl(2) suspends the user
process until the ikonas device has interrupted (for whatever reason —
the user process has to set the interrupt enables).
FILES
- /dev/ik
-
DIAGNOSTICS
None.
HISTORY
The
ik driver appeared in
4.2BSD.
BUGS
An invalid access (e.g., longword) to a mapped interface register can cause the
system to crash with a machine check. A user process could possibly cause
infinite interrupts hence bringing things to a crawl.