Freigeben über


ScsiPortSetBusDataByOffset-Funktion (srb.h)

Die ScsiPortSetBusDataByOffset Routine legt Buskonfigurationsdaten für einen Adapter auf einem dynamisch konfigurierbaren E/A-Bus mit einer veröffentlichten Standardschnittstelle fest.

Hinweis Der SCSI-Porttreiber und die SCSI-Miniporttreibermodelle können in Zukunft geändert oder nicht mehr verfügbar sein. Stattdessen empfehlen wir die Verwendung des Storport-Treibers und Storport Miniport Treibermodelle.
 

Syntax

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
);

Parameter

[in] DeviceExtension

Zeigen Sie auf die Geräteerweiterung des Miniporttreibers.

[in] BusDataType

Enthält einen Wert vom Typ BUS_DATA_TYPE, der den Typ der festzulegenden Busdaten angibt. Derzeit kann der Wert PCIConfigurationwerden. Allerdings werden zukünftig zusätzliche standardisierte, dynamisch konfigurierbare Busse unterstützt. Die obere Grenze der unterstützten Bustypen wird immer MaximumBusDataType.

[in] SystemIoBusNumber

Gibt die vom System zugewiesene Nummer des E/A-Buss an, an dem die HBA angeschlossen ist. Die HwScsiFindAdapter Routine des Miniporttreibers ruft diesen Wert aus dem Eingabeelement PORT_CONFIGURATION_INFORMATION SystemIoBusNumber Member ab.

[in] SlotNumber

Gibt die logische Steckplatznummer der HBA an.

Wenn PCIConfiguration- als BusDataType-angegeben wird, muss dieser Parameter als wert vom Typ PCI_SLOT_NUMBER angegeben werden.

[in] Buffer

Zeiger auf einen vom Anrufer bereitgestellten Speicherbereich mit Konfigurationsinformationen, die für BusDataType-spezifisch sind.

Wenn PCIConfiguration- angegeben wird, enthält der Puffer einige oder alle PCI_COMMON_CONFIG Informationen für die angegebene SlotNumber-. Der angegebene Offset- und Länge bestimmen, wie viele Informationen bereitgestellt werden.

[in] Offset

Gibt den Byteoffset innerhalb der PCI_COMMON_CONFIG Struktur an, bei der die vom Aufrufer bereitgestellten Konfigurationswerte beginnen. Ein Miniporttreiber kann PCI_COMMON_HDR_LENGTH verwenden, um den Offset des gerätespezifischen Bereichs in PCI_COMMON_CONFIG anzugeben.

[in] Length

Gibt die Anzahl der Bytes im Speicherbereich bei Bufferan.

Rückgabewert

ScsiPortSetBusDataByOffset gibt die Anzahl der Bytes zurück, die für die angegebene SlotNumber-erfolgreich festgelegt wurden. Wenn der angegebene BusDataType- für die aktuelle Plattform ungültig ist oder die bereitgestellten Informationen ungültig sind, gibt ScsiPortSetBusDataByOffset Null zurück.

Bemerkungen

Miniporttreiber von HBAs auf einem PCI-Bus rufen selten ScsiPortSetBusDataByOffset auf, es sei denn, ungewöhnliche Umstände oder die Art der HBA eines bestimmten Fahrers erfordert einen solchen Aufruf. Beispielsweise kann ein Miniporttreiber ScsiPortSetBusDataByOffset- aufrufen, um ein Bit im PCI-Statusregister zu löschen, wenn sein HBA einen Zielabbruch während der Initialisierung signalisiert oder gerätespezifische Konfigurationsdaten für die HBA festgelegt.

ScsiPortSetBusDataByOffset- kann nur aus der HwScsiFindAdapter Routine des Miniporttreibers oder von HwScsiAdapterControl aufgerufen werden, wenn der Steuerelementtyp ScsiSetRunningConfigist.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- srb.h (include Miniport.h, Scsi.h)
Library Scsiport.lib

Siehe auch

HalSetBusDataByOffset-

HwScsiFindAdapter-

PCI_COMMON_CONFIG

PCI_SLOT_NUMBER

PORT_CONFIGURATION_INFORMATION (SCSI)-

ScsiPortGetBusData-