43 lines
1.6 KiB
C
43 lines
1.6 KiB
C
|
#include "wdm.h"
|
||
|
|
||
|
#ifdef EXPORT
|
||
|
#undef EXPORT
|
||
|
#endif
|
||
|
#define EXPORT __cdecl
|
||
|
|
||
|
|
||
|
typedef VOID (EXPORT *PACPI_OP_REGION_CALLBACK)();
|
||
|
|
||
|
typedef
|
||
|
NTSTATUS
|
||
|
(EXPORT *PACPI_OP_REGION_HANDLER) (ULONG AccessType,
|
||
|
PVOID OperationRegionObject,
|
||
|
ULONG Address,
|
||
|
ULONG Size,
|
||
|
PULONG Data,
|
||
|
ULONG_PTR Context,
|
||
|
PACPI_OP_REGION_CALLBACK CompletionHandler,
|
||
|
PVOID CompletionContext);
|
||
|
|
||
|
NTSTATUS
|
||
|
RegisterOpRegionHandler (IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN ULONG AccessType,
|
||
|
IN ULONG RegionSpace,
|
||
|
IN PACPI_OP_REGION_HANDLER Handler,
|
||
|
IN PVOID Context, IN ULONG Flags,
|
||
|
IN OUT PVOID *OperationRegionObject);
|
||
|
|
||
|
NTSTATUS
|
||
|
DeRegisterOpRegionHandler (IN PDEVICE_OBJECT DeviceObject,
|
||
|
IN PVOID OperationRegionObject);
|
||
|
|
||
|
#define ACPI_OPREGION_ACCESS_AS_RAW 0x1
|
||
|
#define ACPI_OPREGION_ACCESS_AS_COOKED 0x2
|
||
|
#define ACPI_OPREGION_REGION_SPACE_MEMORY 0x0
|
||
|
#define ACPI_OPREGION_REGION_SPACE_IO 0x1
|
||
|
#define ACPI_OPREGION_REGION_SPACE_PCI_CONFIG 0x2
|
||
|
#define ACPI_OPREGION_REGION_SPACE_EC 0x3
|
||
|
#define ACPI_OPREGION_REGION_SPACE_SMB 0x4
|
||
|
#define ACPI_OPREGION_READ 0x0
|
||
|
#define ACPI_OPREGION_WRITE 0x1
|
||
|
#define ACPI_OPREGION_ACCESS_AT_HIGH_LEVEL 0x1
|