HPC(4)

NAME
hpc - SGI High performance Peripheral Controller

SYNOPSIS
hpc0 at gio0 addr 0x1fb80000
hpc1 at gio0 addr 0x1fb00000
hpc2 at gio0 addr 0x1fb98000
hpc3 at gio0 addr 0x1fb90000

DESCRIPTION
hpc interfaces the peripherals connected to it to the gio(4) bus. hpc is found on the Personal Iris 4D/3x, Indigo, Indy, Challenge S, Challenge M, and Indigo2 machines.

There are three different numerical revisions of the hpc controller. Revisions 1 and 1.5 exist on Personal Iris 4D/3x and Indigo machines, as well as GIO32bis expansion cards such as the E++ SEEQ-based Ethernet adapter. Revision 1.5 supports bi-endian operation. Revision 3 exists on Indy, Challenge S, Indigo2, and Challenge M systems. It is possible to have an on-board HPC3 as well as HPC1.5-based GIO32bis adapters in the Indy and Challenge S systems. Additionally, the Challenge S may have a secondary HPC3 if the IOPLUS (a.k.a. ''mezzanine'') board is installed.

HARDWARE

dsclock
    DS1286-based RTC

dpclock
    DP8573A-based RTC

haltwo
    HAL2 audio controller

sq  Seeq 8003 and 80C03 Ethernet controllers

wdsc
    WD33c93 SCSI controller

zsc Zilog Z8530 UART

SEE ALSO
gio(4), imc(4), pic(4)

HISTORY
The hpc driver first appeared in NetBSD 1.6 with support for Revision 3. Revision 1 and 1.5 support was added in NetBSD 2.0.

BUGS
hpc Revisions 1 and 1.5 support DMA buffer pointers of only 28 bits and may therefore only address 256 megabytes of memory. The R4k Indigo and Indy are the only systems that support sufficient memory to illustrate this drawback. A software workaround is not currently implemented. Revision 3, with 32 bit pointers, does not have this limitation.