man Pages(9E): DDI and DKI Driver Entry Points
只搜寻这本书
以 PDF 格式下载本书

NAME

tran_sync_pkt - SCSI HBA memory synchronization entry point

SYNOPSIS

#include <sys/scsi/scsi.h>
void prefixtran_sync_pkt(struct scsi_address * ap,struct scsi_pkt * pkt);

INTERFACE LEVEL

Solaris architecture specific (Solaris DDI).

ARGUMENTS

ap
A pointer to a scsi_address(9S) structure.
pkt
A pointer to a scsi_pkt(9S) structure.

DESCRIPTION

The tran_sync_pkt( ) vector in the scsi_hba_tran(9S) structure must be initialized during the HBA driver's attach(9E) to point to an HBA driver entry point to be called when a target driver calls scsi_sync_pkt(9F).
tran_sync_pkt( ) must synchronize a CPU's or device's view of the data associated with the pkt, typically by calling ddi_dma_sync(9F). The operation may also involve HBA hardware-specific details, such as flushing I/O caches, or stalling until hardware buffers have been drained.

SEE ALSO

tran_init_pkt(9E), ddi_dma_sync(9F), scsi_hba_attach(9F), scsi_init_pkt(9F), scsi_sync_pkt(9F), scsi_hba_tran(9S), scsi_pkt(9S)
Writing Device Drivers

NOTES

A target driver may call tran_sync_pkt( ) on packets for which no DMA resources were allocated.