Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

111 lines
2.5 KiB

  1. /*++
  2. Copyright (c) 1997 Microsoft Corporation
  3. Module Name:
  4. pmdata.c
  5. Abstract:
  6. Declares various data which is initialize data, or pagable data.
  7. Author:
  8. Environment:
  9. Kernel mode only.
  10. Revision History:
  11. --*/
  12. #include "halp.h"
  13. #include "acpitabl.h"
  14. #include "xxacpi.h"
  15. FADT HalpFixedAcpiDescTable;
  16. ULONG HalpThrottleScale;
  17. ULONG HalpAcpiFlags = HAL_ACPI_PCI_RESOURCES;
  18. #ifdef ALLOC_DATA_PRAGMA
  19. #pragma data_seg("PAGE")
  20. #endif
  21. //
  22. // This array represents the ISA PIC vectors.
  23. // They start out identity-mapped.
  24. //
  25. ULONG HalpPicVectorRedirect[PIC_VECTORS] =
  26. {
  27. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
  28. 10, 11, 12, 13, 14, 15
  29. };
  30. ULONG HalpPicVectorFlags[PIC_VECTORS] = {0};
  31. //
  32. // HalpCPEIntIn[] represents the Platform Interrupt Source's
  33. // connection to SAPIC input pin. They start out "identity-mapped".
  34. //
  35. ULONG HalpCPEIntIn[HALP_CPE_MAX_INTERRUPT_SOURCES] =
  36. {
  37. 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
  38. 10, 11, 12, 13, 14, 15
  39. };
  40. //
  41. // HalpCMCDestination[] represents the target CPU number of CMC interrupt source.
  42. // They start out with all pointing to processor 0.
  43. //
  44. USHORT HalpCPEDestination[HALP_CPE_MAX_INTERRUPT_SOURCES] =
  45. {
  46. 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
  47. 0, 0, 0, 0, 0, 0
  48. };
  49. //
  50. // HalpCPEVectorFlags[] represents the flags for CPE interrupt source.
  51. //
  52. ULONG HalpCPEVectorFlags[HALP_CPE_MAX_INTERRUPT_SOURCES] = {0};
  53. //
  54. // HalpCPEIoSapicVector[] represents the interrupt vector of CPE interrupt source.
  55. // They start out with all vectors at CPEI_VECTOR.
  56. //
  57. UCHAR HalpCPEIoSapicVector[HALP_CPE_MAX_INTERRUPT_SOURCES] = {CPEI_VECTOR};
  58. //
  59. // HalpMaxCPEImplemented indicates as how many INITIN pins are
  60. // connected to different sources of platform CMC Error. The default value is 0.
  61. // Since this will be used to index the arrays, a value of 0 means one source of CPE is
  62. // implemented in this platform.
  63. ULONG HalpMaxCPEImplemented = 0;
  64. #ifdef ALLOC_DATA_PRAGMA
  65. #pragma data_seg("PAGELKSX")
  66. #endif
  67. SLEEP_STATE_CONTEXT HalpSleepContext = {0};
  68. PVOID HalpWakeVector = NULL;
  69. PVOID HalpVirtAddrForFlush = NULL;
  70. PVOID HalpPteForFlush = NULL;
  71. UCHAR HalpRtcRegA;
  72. UCHAR HalpRtcRegB;
  73. #ifdef ALLOC_DATA_PRAGMA
  74. #pragma data_seg("INIT")
  75. #endif
  76. UCHAR rgzNoApicTable[] = "HAL: No ACPI SAPIC Table Found\n";
  77. UCHAR HalpSzHackPci[] = "VALID_PCI_RESOURCE";
  78. UCHAR HalpSzHackPrt[] = "HACK_PRT_SUPPORT";