calendar.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. /*++
  2. Copyright (c) 2013 Minoca Corp. All Rights Reserved
  3. Module Name:
  4. calendar.h
  5. Abstract:
  6. This header contains definitions for hardware calendar timer support.
  7. Author:
  8. Evan Green 20-Sep-2013
  9. --*/
  10. //
  11. // ------------------------------------------------------------------- Includes
  12. //
  13. //
  14. // ---------------------------------------------------------------- Definitions
  15. //
  16. //
  17. // Define calendar timer flags.
  18. //
  19. //
  20. // This flag is set if the timer has been initialized.
  21. //
  22. #define CALENDAR_TIMER_FLAG_INITIALIZED 0x00000001
  23. //
  24. // This flag is set if the initialization failed.
  25. //
  26. #define CALENDAR_TIMER_FLAG_FAILED 0x00000002
  27. //
  28. // ------------------------------------------------------ Data Type Definitions
  29. //
  30. //
  31. // -------------------------------------------------------------------- Globals
  32. //
  33. //
  34. // Store the list of registered calendar timers.
  35. //
  36. extern LIST_ENTRY HlCalendarTimers;
  37. //
  38. // -------------------------------------------------------- Function Prototypes
  39. //
  40. KSTATUS
  41. HlpCalendarTimerRegisterHardware (
  42. PCALENDAR_TIMER_DESCRIPTION TimerDescription
  43. );
  44. /*++
  45. Routine Description:
  46. This routine is called to register a new calendar timer with the system.
  47. Arguments:
  48. TimerDescription - Supplies a pointer to a structure describing the new
  49. calendar timer.
  50. Return Value:
  51. Status code.
  52. --*/
  53. KSTATUS
  54. HlpArchInitializeCalendarTimers (
  55. VOID
  56. );
  57. /*++
  58. Routine Description:
  59. This routine performs architecture-specific initialization for the
  60. calendar timer subsystem.
  61. Arguments:
  62. None.
  63. Return Value:
  64. Status code.
  65. --*/