1 #include "wdm.h" 2 3 #ifdef EXPORT 4 #undef EXPORT 5 #endif 6 #define EXPORT __cdecl 7 8 9 typedef VOID (EXPORT *PACPI_OP_REGION_CALLBACK)(); 10 11 typedef 12 NTSTATUS 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 22 NTSTATUS 23 RegisterOpRegionHandler (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 30 NTSTATUS 31 DeRegisterOpRegionHandler (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