ACPI_OP_REGION_HANDLER 콜백 함수(oprghdlr.h)
ACPI_OP_REGION_HANDLER 형식의 루틴은 ACPI 디바이스 함수 드라이버가 디바이스의 작업 영역에 대한 ACPI 드라이버 의 액세스를 제공하기 위해 제공됩니다.
구문
ACPI_OP_REGION_HANDLER AcpiOpRegionHandler;
NTSTATUS AcpiOpRegionHandler(
ULONG AccessType,
PVOID OperationRegionObject,
ULONG Address,
ULONG Size,
PULONG Data,
ULONG_PTR Context,
PACPI_OP_REGION_CALLBACK CompletionHandler,
PVOID CompletionContext
)
{...}
매개 변수
AccessType
다음 액세스 유형 중 하나를 지정합니다.
액세스 유형 | 설명 |
---|---|
ACPI_OPREGION_WRITE | 작업 영역 메모리 버퍼에 씁니다. |
ACPI_OPREGION_READ | 작업 영역 메모리 버퍼에서 읽습니다. |
OperationRegionObject
작업 영역 처리기에 대해 RegisterOpRegionHandler 에서 반환하는 작업 영역 개체를 지정합니다.
Address
작업 영역 메모리 버퍼에서 바이트 오프셋을 지정합니다. 액세스 형식에 따라 데이터가 이 메모리 위치로 전송됩니다.
Size
액세스할 바이트 수를 지정합니다.
Data
액세스와 연결된 ACPI 드라이버에서 제공하는 데이터 버퍼에 대한 포인터입니다. 읽기 액세스의 경우 바이트는 작업 영역 메모리 버퍼에서 데이터 버퍼로 전송됩니다. 쓰기 액세스의 경우 바이트는 데이터 버퍼에서 작업 영역 메모리 버퍼로 전송됩니다.
Context
함수 드라이버가 작업 영역 처리기를 등록할 때 지정한 것과 동일한 작업 영역 컨텍스트에 대한 포인터입니다.
CompletionHandler
내부용으로 예약된 속성입니다.
CompletionContext
내부용으로 예약된 속성입니다.
반환 값
다음 상태 값 중 하나를 반환합니다.
반환 코드 | 설명 |
---|---|
STATUS_SUCCESS | 액세스에 성공했습니다. |
STATUS_INVALID_DEVICE_REQUEST | 액세스 유형이 잘못되었습니다. |
STATUS_Xxx | 내부 오류가 발생했습니다. |
설명
ACPI 드라이버는 작업 영역 처리기를 호출할 때 액세스가 ACPI 디바이스의 ACPI BIOS에 정의된 작업 영역 내에 있는지 확인하는 주소 및 크기에 대한 값을 지정합니다. ACPI 디바이스 함수 드라이버는 할당하는 작업 영역 메모리 버퍼가 적어도 ACPI 디바이스에 대해 정의된 작업 영역만큼 큰지(바이트)여야 합니다.
작업 지역 처리기에 대한 자세한 내용은 작업 지역 지원을 참조하세요.
ACPI_OP_REGION_HANDLER 형식의 루틴은 호출자의 IRQL에서 실행됩니다.
작업 지역의 제약 조건에 대한 자세한 내용은 ACPI(고급 구성 및 전원 인터페이스) 사양을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | 데스크톱 |
머리글 | oprghdlr.h(Oprghdlr.h 포함) |