up | Inhaltsverzeichniss | Kommentar

Manual page for FPA(4S)

fpa - Sun-3/Sun-3x floating-point accelerator

CONFIG -- SUN-3/SUN-3X SYSTEMS

device fpa0 at virtual ? csr 0xe0000000

SYNOPSIS

#include <sundev/fpareg.h>
open("/dev/fpa", flags);

DESCRIPTION

FPA and FPA+ are compatible floating point accelerators available on certain Sun-3 and Sun-3x systems. They provide hardware contexts for simultaneous use by up to 32 processes. The same fpa device driver manages either FPA or FPA+ hardware.

Processes access the device using open.2v and close.2v system calls, and the FPA is automatically mapped into the process' address space by SunOS. This is normally provided transparently at compile time by a compiler option, such as the -ffpa option to cc.1v

The valid ioctl.2 system calls are used only by diagnostics and by system administration programs, such as fpa_download.8

IOCTLS

FPA_ACCESS_OFF
Clear FPA_ACCESS_BIT in FPA state register to disable access to constants RAM using FPA load pointer.
FPA_ACCESS_ON
Set FPA_ACCESS_BIT in FPA state register to enable access to constants RAM using FPA load pointer.
FPA_FAIL
Disable the FPA.
FPA_GET_DATAREGS
Return the contents of 8 FPA registers.
FPA_INIT_DONE
Called when downloading is complete. Allows multiple users to access the FPA.
FPA_LOAD_OFF
Set FPA_LOAD_BIT in FPA state register to disable access to microstore or map RAM via FPA load pointer.
FPA_LOAD_ON
Set FPA_LOAD_BIT in FPA state register to enable access to microstore or map RAM using FPA load pointer.

The following two ioctl() requests are for diagnostic use only. fpa must be compiled with FPA_DIAGNOSTICS_ONLY defined to enable these two calls.

FPA_WRITE_STATE
Overwrite the FPA state register.
FPA_WRITE_HCP
Write to the hard clear pipe register.

ERRORS

The following error messages are returned by open system calls only.

EBUSY
All 32 FPA contexts are being used.
EEXIST
The current process has already opened /dev/fpa.
EIO
Downloading has not completed, so only 1 root process can have the FPA open at a time.
ENETDOWN
FPA is disabled.
ENOENT
68881 chip does not exist.
ENXIO
FPA board does not exist.

The following error messages are returned by ioctl system calls only.

EINVAL
Invalid ioctl. This may occur if diagnostic only ioctls, FPA_WRITE_STATE or FPA_WRITE_HCP, are used with a driver which didn't compile in those calls.
EPERM
All ioctl calls except for FPA_GET_DATAREGS require root execution level.
EPIPE
The FPA pipe is not clear.

FILES

/dev/fpa
device file for both FPA and FPA+.

SEE ALSO

cc.1v close.2v ioctl.2 open.2v fpa_download.8 fparel.8 fpaversion.8

DIAGNOSTICS

If hardware problems are detected then all processes with /dev/fpa open are killed, and future opens of /dev/fpa are disabled.


index | Inhaltsverzeichniss | Kommentar

Created by unroff & hp-tools. © by Hans-Peter Bischof. All Rights Reserved (1997).

Last modified 21/April/97