master
1#include "wdm.h"
2
3#ifdef EXPORT
4#undef EXPORT
5#endif
6#define EXPORT __cdecl
7
8
9typedef VOID (EXPORT *PACPI_OP_REGION_CALLBACK)();
10
11typedef
12NTSTATUS
13(EXPORT *PACPI_OP_REGION_HANDLER) (ULONG AccessType,
14 PVOID OperationRegionObject,
15 ULONG Address,
16 ULONG Size,
17 PULONG Data,
18 ULONG_PTR Context,
19 PACPI_OP_REGION_CALLBACK CompletionHandler,
20 PVOID CompletionContext);
21
22NTSTATUS
23RegisterOpRegionHandler (IN PDEVICE_OBJECT DeviceObject,
24 IN ULONG AccessType,
25 IN ULONG RegionSpace,
26 IN PACPI_OP_REGION_HANDLER Handler,
27 IN PVOID Context, IN ULONG Flags,
28 IN OUT PVOID *OperationRegionObject);
29
30NTSTATUS
31DeRegisterOpRegionHandler (IN PDEVICE_OBJECT DeviceObject,
32 IN PVOID OperationRegionObject);
33
34#define ACPI_OPREGION_ACCESS_AS_RAW 0x1
35#define ACPI_OPREGION_ACCESS_AS_COOKED 0x2
36#define ACPI_OPREGION_REGION_SPACE_MEMORY 0x0
37#define ACPI_OPREGION_REGION_SPACE_IO 0x1
38#define ACPI_OPREGION_REGION_SPACE_PCI_CONFIG 0x2
39#define ACPI_OPREGION_REGION_SPACE_EC 0x3
40#define ACPI_OPREGION_REGION_SPACE_SMB 0x4
41#define ACPI_OPREGION_READ 0x0
42#define ACPI_OPREGION_WRITE 0x1
43#define ACPI_OPREGION_ACCESS_AT_HIGH_LEVEL 0x1
44