SpbDeviceInitialize 함수(spbcx.h)
SpbDeviceInitialize 메서드는 이 드라이버가 연결된 디바이스 개체를 만든 후 SPB 컨트롤러 드라이버의 초기화를 완료합니다.
구문
NTSTATUS SpbDeviceInitialize(
[in] WDFDEVICE FxDevice,
[in] PSPB_CONTROLLER_CONFIG Config
);
매개 변수
[in] FxDevice
SPB 컨트롤러를 나타내는 디바이스 개체에 대한 WDFDEVICE 핸들입니다.
[in] Config
SPB 컨트롤러 드라이버에 대한 디바이스 구성 정보를 포함하는 SPB_CONTROLLER_CONFIG 구조체에 대한 포인터입니다. 이 구조체는 SPB_CONTROLLER_CONFIG_INIT 함수에 의해 초기화되어야 합니다.
반환 값
SpbDeviceInitialize 는 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 적절한 NTSTATUS 오류 코드를 반환합니다.
설명
SPB 컨트롤러 드라이버는 이 메서드를 호출하여 SPB 프레임워크 확장(SpbCx)에 이벤트 콜백 함수를 등록하고 컨트롤러의 I/O 큐에 사용할 전송 모드를 지정합니다. SpbDeviceInitialize 는 I/O 큐를 포함하여 컨트롤러의 모든 내부 데이터 구조를 만듭니다.
SPB 컨트롤러 드라이버는 디바이스 개체를 커밋 하기 전에 이 메서드를 호출해야 합니다. 즉, EvtDriverDeviceAdd 콜백에서 반환하거나 PDO를 컨트롤러의 자식 목록에 추가하기 전에 호출해야 합니다. 자식 목록은 버스에 연결된 디바이스를 나타냅니다. 자세한 내용은 버스에서 디바이스 열거를 참조하세요.
SpbDeviceInitialize가 반환되면 컨트롤러는 I/O 요청을 처리할 준비가 되었지만 SPB 컨트롤러 드라이버는 필요에 따라 디바이스 개체를 커밋하기 전에 컨트롤러 설정을 계속 구성할 수 있습니다.
구성이 가리키는 구조체가 올바르게 채워지지 않으면 드라이버 검증 도구에서 오류가 발생합니다. Config 매개 변수의 요구 사항에 대한 자세한 내용은 SPB_CONTROLLER_CONFIG.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 사용하여 사용할 수 있습니다. |
대상 플랫폼 | 유니버설 |
헤더 | spbcx.h |
라이브러리 | Spbcxstubs.lib |
IRQL | PASSIVE_LEVEL |