ScsiPortGetBusData 함수(srb.h)
ScsiPortGetBusData 루틴은 미니포트 드라이버의 HwScsiFindAdapter 루틴이 특정 I/O 버스에서 특정 어댑터를 지원하는지 여부를 확인하고 HBA를 구성하는 데 사용할 수 있는 버스 유형별 구성 정보를 반환합니다.
통사론
SCSIPORT_API ULONG ScsiPortGetBusData(
[in] PVOID DeviceExtension,
[in] ULONG BusDataType,
[in] ULONG SystemIoBusNumber,
[in] ULONG SlotNumber,
[in] PVOID Buffer,
[in] ULONG Length
);
매개 변수
[in] DeviceExtension
미니포트 드라이버의 HBA별 스토리지 영역에 대한 포인터입니다.
[in] BusDataType
반환할 버스별 구성 데이터의 형식을 지정하는 BUS_DATA_TYPE 형식의 값을 포함합니다. 현재 이 값은 Cmos, EisaConfiguration, Pos또는 PCIConfiguration 중 하나일 수 있습니다. 그러나 향후 추가 유형의 버스 구성이 지원될 예정입니다. 지원되는 형식의 상한은 항상 MaximumBusDataType .
[in] SystemIoBusNumber
시스템이 할당한 I/O 버스 수를 지정합니다. 미니포트 드라이버의 HwScsiFindAdapter 루틴은 입력 PORT_CONFIGURATION_INFORMATION SystemIoBusNumber 멤버에서 이 값을 가져옵니다.
[in] SlotNumber
디바이스의 논리적 슬롯 번호 또는 위치를 지정합니다.
PCIConfigurationBusDataType지정한 경우 이 매개 변수를 PCI_SLOT_NUMBER 형식 값으로 지정해야 합니다.
[in] Buffer
구성 데이터가 반환되는 버퍼 또는 영역에 대한 포인터이거나 지정된 Length 0이면 운영 체제별 포트 드라이버가 할당하는 버퍼에 대한 포인터를 반환하는 위치를 가리킵니다.
[in] Length
Buffer반환할 최대 바이트 수를 지정하거나, 호출자가 데이터를 포함할 버퍼를 할당하기 위해 운영 체제별 포트 드라이버가 필요한 경우 0을 지정합니다.
반환 값
ScsiPortGetBusData 버퍼에 저장된 구성 정보의 바이트 수를 반환합니다. 입력 BusDataType이 PCIConfiguration인 경우 ScsiPortGetBusData는 다음 값 중 하나를 반환하여 오류를 나타낼 수 있습니다.
반환 코드 | 묘사 |
---|---|
|
PCI 버스가 없습니다. |
|
PCI 버스가 있지만 지정된 PCI SlotNumber디바이스가 없습니다. Buffer PCI_COMMON_CONFIG VendorId 멤버의 PCI_INVALID_VENDOR_ID 값을 포함합니다. |
발언
ScsiPortGetBusData 컨트롤 형식이 ScsiSetRunningConfig 경우 미니포트 드라이버의 HwScsiFindAdapter 루틴 또는 HwScsiAdapterControl 호출할 수 있습니다. 다른 미니포트 드라이버 루틴에서 호출하면 호출자에 대한 시스템 오류 또는 잘못된 작업이 발생합니다.
ScsiPortGetBusData 반환된 구성 데이터는 미니포트 드라이버가 ScsiPortGetBusData를 다시 호출할 때까지만 유효. 호출자의 HwScsiFindAdapter 루틴이 컨트롤을 반환하는 즉시 반환된 구성 데이터가 유효하지 않습니다.
요구 사항
요구 | 값 |
---|---|
대상 플랫폼 | 바탕 화면 |
헤더 | srb.h(Miniport.h, Scsi.h 포함) |
라이브러리 | Scsiport.lib |