Driver Entry Points trandmafree(9E)
NAME
trandmafree - SCSI HBA DMA deallocation entry point
SYNOPSIS
#include
void prefixtrandmafree(struct scsiaddress *ap, struct scsipkt *pkt);
INTERFACE LEVEL
Solaris architecture specific (Solaris DI).
ARGUMENTS
ap A pointer to a scsiaddress structure. See
scsiaddress(9S).
pkt A pointer to a scsipkt structure. See
scsipkt(9S).
DESCRIPTION
The trandmafree() vector in the scsihbatran structure
must be initialized during the HBA driver's attach() to
point to an HBA entry point to be called when a target
driver calls scsidmafree(9F). See attach(9E) and
scsihbatran(9S).
trandmafree() must deallocate any DMA resources previously
allocated to this pkt in a call to traninitpkt(9E).
trandmafree() should not free the structure pointed to by
pkt itself. Since trandestroypkt(9E) must also free DMA
resources, it is important that the HBA driver keeps accu-
rate note of whether scsipkt(9S) structures have DMA
resources allocated.
SEE ALSO
attach(9E), trandestroypkt(9E), traninitpkt(9E),
scsidmafree(9F), scsidmaget(9F), scsihbaattach(9F),
scsiinitpkt(9F), scsiaddress(9S), scsihbatran(9S),
scsipkt(9S)
Writing Device Drivers
NOTES
A target driver may call trandmafree() on packets for which
no DMA resources were allocated.
SunOS 5.11 Last change: 30 Aug 1995 1
|