Specifications
Operating System Routines
IOC$LOADTCMAP_DMA, IOC$LOADTCMAP_DMAN
Description
A driver fork process calls IOC$LOADTCMAP_DMA or IOC$LOADTCMAP_
DMAN to load a previously allocated set of DMA map registers with page-
frame numbers (PFNs). This enables a device to perform DMA transfers to
or from the buffer indicated by the contents of UCB$L_SVAPTE, UCB$W_
BCNT, and UCB$W_BOFF (or the contents of R3, R4, and R5 when using
IOC$LOADTCMAP_DMAN).
IOC$LOADTCMAP_DMA or IOC$LOADTCMAP_DMAN checks whether
sufficient map registers were allocated. If there are insufficient map registers,
the routine issues a UBMAPEXCED bugcheck. Otherwise, the routine loads the
appropriate PFN into each map register.
IOC$LOADTCMAP_DMA and IOC$LOADTCMAP_DMAN load and set the
mapping register valid bit for the number of mapping registers needed for the
length of the DMA request. Both routines clear the last map register. This last
invalid register prevents a transfer overrun.
3–100