NAME
gio
- SGI's Graphics I/O (GIO) bus (an early PCI-like bus)
SYNOPSIS
gio0 at imc0
gio0 at pic0
DESCRIPTION
The
gio
bus is a bus for connecting high-speed peripherals to the main memory and
CPU.
The devices themselves are typically (but not necessarily) connected to the
hpc(4)
peripheral controller, and memory and CPU are accessed through the
imc(4)
(Indy Memory Controller) or
pic(4)
(Processor Interface Controller).
The
gio
bus is found on the Personal Iris 4D/3x, Indigo, Indy, Challenge S,
Challenge M, and Indigo2 machines and exists in three incarnations:
GIO32, GIO32-bis, and GIO64.
SEE ALSO
giopci(4),
grtwo(4),
hpc(4),
imc(4),
light(4),
newport(4),
pic(4)
HISTORY
The
gio
driver first appeared in
NetBSD1.5.
CAVEATS
Challenge S systems may use only one
gio
DMA-capable expansion card, despite having two slots.
Cards based on the
hpc(4)
controller, such as the GIO32 scsi and E++ Ethernet adapters, must be
placed in slot 1 (closest to the side of the case).
All other cards must be placed in slot 0 (adjacent to the memory banks).
Indigo2 and Challenge M systems contain either three or four GIO64 connectors,
depending on the model.
However, in both cases only two electrically
distinct slots are present.
Therefore, distinct expansion cards may not
share physical connectors associated with the same slot.
Refer to the PCB
stencils to determine the association between physical connectors and slots.
BUGS
Systems employing the
imc(4)
may experience spurious SysAD bus parity errors when using expansion cards,
which do not drive all data lines during a CPU PIO read.
The only workaround is to disable SysAD parity checking when using such
cards.