다음을 통해 공유


ScsiPortFreeDeviceBase 함수(srb.h)

ScsiPortFreeDeviceBase 루틴은 ScsiPortGetDeviceBase를 사용하여 이전에 시스템 주소 공간에 매핑된 다양한 디바이스 I/O 또는 메모리 공간 주소를 해제합니다.

참고 SCSI 포트 드라이버 및 SCSI 미니포트 드라이버 모델은 나중에 변경되거나 사용할 수 없습니다. 대신 Storport 드라이버Storport 미니포트 드라이버 모델을 사용하는 것이 좋습니다.
 

구문

SCSIPORT_API VOID ScsiPortFreeDeviceBase(
  [in] PVOID HwDeviceExtension,
  [in] PVOID MappedAddress
);

매개 변수

[in] HwDeviceExtension

하드웨어 디바이스 확장에 대한 포인터입니다. 포트 드라이버가 미니포트 드라이버를 대신하여 할당하고 초기화하는 HBA별 스토리지 영역입니다. 미니포트 드라이버는 일반적으로 HBA 상태 및 HBA의 매핑된 액세스 범위와 같은 HBA 관련 정보를 이 확장에 저장합니다. 이 영역은 미니포트 드라이버가 ScsiPortInitialize를 호출한 직후 HBA 디바이스 개체의 DeviceExtension-HwDeviceExtension> 멤버의 미니포트 드라이버에서 사용할 수 있습니다. 포트 드라이버는 디바이스를 제거할 때 이 메모리를 해제합니다.

[in] MappedAddress

해제할 범위의 기본 주소에 대한 포인터입니다. 이 주소는 ScsiPortGetDeviceBase에서 반환한 주소와 동일해야 합니다.

반환 값

없음

설명

미니포트 드라이버의 HwScsiFindAdapter 루틴에서 드라이버에 어댑터에 대해 매핑된 특정 기본 주소가 필요하지 않다고 판단하는 경우 이 루틴을 호출하여 매핑을 해제해야 합니다. 예를 들어 미니포트 드라이버가 특정 I/O 버스에 지원되는 HBA가 없다고 판단하는 경우 이 루틴을 호출한 경우 ScsiPortGetDeviceBase 에서 반환된 각 매핑된 주소를 사용하여 ScsiPortFreeDeviceBase를 호출해야 합니다.

ScsiPortFreeDeviceBase 는 미니포트 드라이버의 HwScsiFindAdapter 루틴에서만 호출할 수 있습니다. 다른 미니포트 드라이버 루틴에서 호출하면 호출자에 대한 시스템 오류 또는 잘못된 작업이 발생합니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 srb.h(Miniport.h, Scsi.h 포함)
라이브러리 Scsiport.lib

추가 정보

HwScsiFindAdapter

ScsiPortGetDeviceBase