Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ io_dma_ctl(3I) — HP-UX 7.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

IO_DMA_CTL(3I)  —  Series 300 Only

NAME

io_dma_ctl − control DMA allocation for an interface

SYNOPSIS

#include <sys/dil.h>
io_dma_ctl (eid, mode)
int eid, mode;

DESCRIPTION

Io_dma_ctl enables you to control system DMA allocation for a specific interface.  Eid is the entity identifier for an open HP-IB/GPIO device file returned by a previous call to open(2), dup(2), creat(2), or fcntl(2) with an FDUPD command option. 

The mode parameter describes what type of DMA allocation the system should use for the interface associated with EID.  Mode is  determined by selecting one of flags from the following list in <sys/dil.h>:

Only one of the following flags must be specified:

DMA_ACTIVE
Inform the DMA subsystem that this interface intends to use DMA and requires higher priority than slow devices.  This is the level of DMA allocation used by CS80, Amigo and SCSI devices.

DMA_UNACTIVE
Remove the effect of a previous DMA_ACTIVE.

DMA_RESERVE
Guarantee that a DMA channel will remain unlocked for future requests for DMA by all devices on this interface.

DMA_UNRESERVE
Remove the effect of a previous DMA_RESERVE.

DMA_LOCK
Lock a DMA channel for exclusive use by all devices on this interface.

DMA_UNLOCK
Unlock a DMA channel locked by this interface.

RETURN VALUES

Io_dma_ctl  returns 0 (zero) if  successful,  or −1 if an error was encountered. 

ERRORS

io_dma_ctl fails under the following circumstances, and sets errno (see errno(2)) to the value in square brackets:

­[EBADF] eid does not refer to an open file. 

­[ENOTTY] eid does not refer to an DIL bus device file. 

­[EIO] a timeout occurred. 

­[EINTR] the request was interrupted by a signal. 

­[EINVAL] the interface was unable to reserve or lock a DMA channel. 

WARNING

There are only two DMA channels available on the Series 300.  Use of DMA_LOCK could starve your system disks of DMA resources, resulting in lower system performance. 

AUTHOR

Io_dma_ctl was developed by the Hewlett-Packard Company. 

Hewlett-Packard Company  —  HP-UX Release 7.0: Sept 1989

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026