Condividi tramite


Funzione ScsiPortSetBusDataByOffset (srb.h)

La routine ScsiPortSetBusDataByOffset imposta i dati di configurazione del bus per una scheda in un bus di I/O configurabile dinamicamente con un'interfaccia standard pubblicata.

Nota I modelli di driver di porta SCSI e miniport SCSI potrebbero essere modificati o non disponibili in futuro. È invece consigliabile usare il driver Storport e i modelli di driver miniport Storport .
 

Sintassi

SCSIPORT_API ULONG ScsiPortSetBusDataByOffset(
  [in] PVOID DeviceExtension,
  [in] ULONG BusDataType,
  [in] ULONG SystemIoBusNumber,
  [in] ULONG SlotNumber,
  [in] PVOID Buffer,
  [in] ULONG Offset,
  [in] ULONG Length
);

Parametri

[in] DeviceExtension

Puntatore all'estensione del dispositivo del driver miniport.

[in] BusDataType

Contiene un valore di tipo BUS_DATA_TYPE che specifica il tipo di dati del bus da impostare. Attualmente, il valore può essere PCIConfiguration. Tuttavia, in futuro saranno supportati altri tipi di bus standardizzati e configurabili dinamicamente. Il limite superiore sui tipi di bus supportati è sempre MaximumBusDataType.

[in] SystemIoBusNumber

Specifica il numero assegnato dal sistema del bus di I/O in cui è connesso l'HBA. La routine HwScsiFindAdapter del driver miniport ottiene questo valore dall'input PORT_CONFIGURATION_INFORMATION membro SystemIoBusNumber .

[in] SlotNumber

Specifica il numero di slot logico dell'HBA.

Quando PCIConfiguration viene specificato come BusDataType, questo parametro deve essere specificato come valore di tipo PCI_SLOT_NUMBER.

[in] Buffer

Puntatore a un'area di archiviazione fornita dal chiamante con informazioni di configurazione specifiche di BusDataType.

Quando si specifica PCIConfiguration , il buffer contiene alcune o tutte le informazioni PCI_COMMON_CONFIG per slotNumber specificato. L'offset e la lunghezza specificati determinano la quantità di informazioni fornite.

[in] Offset

Specifica l'offset di byte all'interno della struttura PCI_COMMON_CONFIG in corrispondenza del quale iniziano i valori di configurazione forniti dal chiamante. Un driver miniport può usare PCI_COMMON_HDR_LENGTH per specificare l'offset dell'area specifica del dispositivo in PCI_COMMON_CONFIG.

[in] Length

Specifica il numero di byte nell'area di archiviazione in Buffer.

Valore restituito

ScsiPortSetBusDataByOffset restituisce il numero di byte di dati impostati correttamente per l'oggetto SlotNumber specificato. Se l'oggetto BusDataType specificato non è valido per la piattaforma corrente o se le informazioni fornite non sono valide, ScsiPortSetBusDataByOffset restituisce zero.

Commenti

I driver miniport di HBA su un bus PCI chiamano raramente ScsiPortSetBusDataByOffset a meno che circostanze insolite o la natura dell'HBA di un determinato driver richieda una chiamata di questo tipo. Ad esempio, un driver miniport potrebbe chiamare ScsiPortSetBusDataByOffset per cancellare un bit nel registro di stato PCI se l'HBA segnala un'interruzione di destinazione durante l'inizializzazione o per impostare i dati di configurazione specifici del dispositivo per l'HBA.

ScsiPortSetBusDataByOffset può essere chiamato solo dalla routine HwScsiFindAdapter del driver miniport o da HwScsiAdapterControl quando il tipo di controllo è ScsiSetRunningConfig.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione srb.h (include Miniport.h, Scsi.h)
Libreria Scsiport.lib

Vedi anche

HalSetBusDataByOffset

HwScsiFindAdapter

PCI_COMMON_CONFIG

PCI_SLOT_NUMBER

PORT_CONFIGURATION_INFORMATION (SCSI)

ScsiPortGetBusData