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.
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 |