Funzione SCSIPortIoMapTransfer (srb.h)
La routine SCSIPortIoMapTransfer configura il controller DMA di sistema per un driver miniport per trasferire i dati tramite un HBA subordinato.
Sintassi
SCSIPORT_API VOID ScsiPortIoMapTransfer(
[in] PVOID HwDeviceExtension,
[in] PSCSI_REQUEST_BLOCK Srb,
[in] PVOID LogicalAddress,
[in] ULONG Length
);
Parametri
[in] HwDeviceExtension
Puntatore all'estensione del dispositivo hardware. Si tratta di un'area di archiviazione per HBA che il driver di porta alloca e inizializza per conto del driver miniport. I driver miniport in genere archiviano informazioni specifiche di HBA in questa estensione, ad esempio lo stato dell'HBA e gli intervalli di accesso mappati di HBA. Questa area è disponibile per il driver miniport nel membro DeviceExtension-HwDeviceExtension> dell'oggetto dispositivo HBA immediatamente dopo che il driver miniport chiama SCSIPortInitialize. Il driver di porta libera questa memoria quando rimuove il dispositivo.
[in] Srb
Puntatore al blocco di richiesta SCSI per il trasferimento DMA.
[in] LogicalAddress
Specifica l'indirizzo iniziale per l'operazione di trasferimento. Questo valore può essere l'indirizzo di base di un buffer in cui o da cui trasferire i dati. Questo valore può essere un offset all'interno di tale buffer.
[in] Length
Specifica il numero di byte da trasferire.
Valore restituito
nessuno
Osservazioni
Solo i driver miniport di HBA che usano un controller DMA di sistema (subordinato DMA) chiamano SCSIPortIoMapTransfer. Questa routine deve essere chiamata prima di configurare tale driver miniport per trasferire i dati. L'intervallo specificato da LogicalAddress e Length deve essere all'interno del buffer descritto da SRB specificato.
Dopo che il driver di porta specifico del sistema operativo programmi il controller DMA del sistema, chiama la routine HwSCSIDmaStarted del driver miniport. HwSCSIDmaStarted deve programmare l'HBA per avviare il trasferimento dei dati. Si noti che un'HBA può interrompere tra la chiamata del driver miniport a SCSIPortIoMapTransfer e la chiamata del driver della porta specifica del sistema operativo alla routine HwSCSIDmaStarted del driver miniport.
Requisiti
Requisito | Valore |
---|---|
Piattaforma di destinazione | Desktop |
Intestazione | srb.h (include Miniport.h, SCSI.h) |
Libreria | Scsiport.lib |