ScsiPortSetBusDataByOffset 함수(srb.h)
ScsiPortSetBusDataByOffset 루틴은 게시된 표준 인터페이스를 사용하여 동적으로 구성 가능한 I/O 버스의 어댑터에 대한 버스 구성 데이터를 설정합니다.
구문
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
);
매개 변수
[in] DeviceExtension
미니포트 드라이버의 디바이스 확장에 대한 포인터입니다.
[in] BusDataType
설정할 버스 데이터의 형식을 지정하는 BUS_DATA_TYPE 형식의 값을 포함합니다. 현재 해당 값은 PCIConfiguration일 수 있습니다. 그러나 향후 추가 유형의 표준화되고 동적으로 구성 가능한 버스가 지원될 예정입니다. 지원되는 버스 유형의 상한은 항상 MaximumBusDataType입니다.
[in] SystemIoBusNumber
HBA가 연결된 I/O 버스의 시스템 할당 번호를 지정합니다. 미니포트 드라이버의 HwScsiFindAdapter 루틴은 입력 PORT_CONFIGURATION_INFORMATION SystemIoBusNumber 멤버에서 이 값을 가져옵니다.
[in] SlotNumber
HBA의 논리적 슬롯 번호를 지정합니다.
PCIConfiguration이 BusDataType으로 지정되면 이 매개 변수를 PCI_SLOT_NUMBER 형식 값으로 지정해야 합니다.
[in] Buffer
BusDataType과 관련된 구성 정보가 있는 호출자가 제공한 스토리지 영역에 대한 포인터입니다.
PCIConfiguration을 지정하면 버퍼에 지정된 SlotNumber에 대한 PCI_COMMON_CONFIG 정보의 일부 또는 전부가 포함됩니다. 지정한 오프셋 및 길이 는 제공되는 정보의 양을 결정합니다.
[in] Offset
호출자가 제공한 구성 값이 시작되는 PCI_COMMON_CONFIG 구조 내에서 바이트 오프셋을 지정합니다. 미니포트 드라이버는 PCI_COMMON_HDR_LENGTH 사용하여 PCI_COMMON_CONFIG 디바이스별 영역의 오프셋을 지정할 수 있습니다.
[in] Length
버퍼의 스토리지 영역에 있는 바이트 수를 지정합니다.
반환 값
ScsiPortSetBusDataByOffset 은 지정된 SlotNumber에 대해 성공적으로 설정된 데이터 바이트 수를 반환합니다. 지정된 BusDataType 이 현재 플랫폼에 유효하지 않거나 제공된 정보가 잘못된 경우 ScsiPortSetBusDataByOffset 은 0을 반환합니다.
설명
PCI 버스에서 HBA의 미니포트 드라이버는 비정상적인 상황이나 특정 드라이버의 HBA의 특성에 따라 이러한 호출이 필요하지 않는 한 ScsiPortSetBusDataByOffset 을 호출하는 경우가 거의 없습니다. 예를 들어 미니포트 드라이버는 ScsiPortSetBusDataByOffset을 호출하여 HBA가 초기화 중에 대상 중단을 알리거나 HBA에 대한 디바이스별 구성 데이터를 설정하는 경우 PCI 상태 레지스터에서 비트를 지울 수 있습니다.
ScsiPortSetBusDataByOffset 은 미니포트 드라이버의 HwScsiFindAdapter 루틴 또는 컨트롤 형식이 ScsiSetRunningConfig인 경우 HwScsiAdapterControl에서만 호출할 수 있습니다.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | srb.h(Miniport.h, Scsi.h 포함) |
라이브러리 | Scsiport.lib |