oprghdlr.h 1.6 KB

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