다음을 통해 공유


플러그 앤 플레이 I/O 요청을 사용하여 PCMCIA 특성 메모리에 액세스

이 섹션에서는 PC 카드 또는 Cardbus 카드 드라이버가 플러그 앤 플레이 I/O 요청을 사용하여 특성 메모리에 액세스하는 방법을 설명합니다.

일반적으로 드라이버는 이 메서드를 사용하여 디바이스를 초기화하거나, 디바이스를 구성하거나, 디바이스에서 정보를 가져옵니다. I/O 오버헤드가 허용되고 IRQL < DISPATCH_LEVEL 액세스를 수행할 수 있는 경우 드라이버는 이 메서드를 사용해야 합니다.

드라이버는 IRQL < DISPATCH_LEVEL 실행하는 동안에만 이 메서드를 사용할 수 있습니다.

드라이버는 다음 작업 시퀀스를 수행합니다.

  • 새 IRP_MJ_PNP 요청을 만들고 초기화합니다.

    드라이버는 IRP_MN_READ_CONFIG 또는 IRP_MN_WRITE_CONFIG 부 함수를 지정합니다.

  • 다음 스택 위치를 가져옵니다.

  • 새 스택 위치에 Parameters.ReadWriteConfig 구조체의 다음 멤버를 설정합니다.

    어느 영역
    PCCARD_ATTRIBUTE_MEMORY 값을 지정합니다.

    버퍼
    드라이버가 액세스에 할당하는 페이징 메모리 버퍼에 대한 포인터입니다. 쓰기 작업의 경우 버퍼에는 구성 공간에 쓸 데이터가 포함됩니다. 읽기 작업의 경우 버퍼는 0으로 채워진 버퍼입니다. 요청이 완료되면 이 버퍼는 디바이스에서 읽은 특성 메모리의 복사본을 보유합니다.

    오프셋
    읽기 또는 쓰기 작업이 시작되는 특성 메모리의 기본에서 WORD 오프셋을 지정합니다.

    길이
    드라이버가 요청에 할당하는 버퍼의 크기(바이트)를 지정합니다.

  • 완료 루틴을 설정합니다.

  • 디바이스 스택 아래로 요청을 보냅니다.