VlvPlatformPolicy.h 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. /*++
  2. Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved
  3. SPDX-License-Identifier: BSD-2-Clause-Patent
  4. Module Name:
  5. VlvPlatformPolicy.h
  6. Abstract:
  7. Interface definition details between MCH and platform drivers during DXE phase.
  8. --*/
  9. #ifndef _VLV_PLATFORM_POLICY_H_
  10. #define _VLV_PLATFORM_POLICY_H_
  11. //
  12. // VLV Policy provided by platform for DXE phase {5BAB88BA-E0E2-4674-B6AD-B812F6881CD6}
  13. //
  14. #define DXE_VLV_PLATFORM_POLICY_GUID \
  15. {0x5bab88ba, 0xe0e2, 0x4674, 0xb6, 0xad, 0xb8, 0x12, 0xf6, 0x88, 0x1c, 0xd6}
  16. //
  17. // Extern the GUID for protocol users.
  18. //
  19. extern EFI_GUID gDxeVlvPlatformPolicyGuid;
  20. //
  21. // Protocol revision number
  22. // Any backwards compatible changes to this protocol will result in an update in the revision number
  23. // Major changes will require publication of a new protocol
  24. //
  25. #define DXE_VLV_PLATFORM_POLICY_PROTOCOL_REVISION 0
  26. typedef struct {
  27. UINT8 PFITStatus;
  28. UINT8 IgdTheramlSupport;
  29. UINT8 ALSEnabled;
  30. UINT8 LidStatus;
  31. } IGD_PANEL_FEATURES;
  32. typedef struct {
  33. UINT8 Reserved00;
  34. UINT8 Reserved01;
  35. UINT16 Reserved02;
  36. UINT16 Reserved03;
  37. UINT16 Reserved04;
  38. UINT16 Reserved05;
  39. UINT16 Reserved06;
  40. UINT16 Reserved07;
  41. UINT16 Reserved08;
  42. UINT16 Reserved09;
  43. UINT16 Reserved0A;
  44. UINT16 Reserved0B;
  45. UINT16 Reserved0C;
  46. UINT16 Reserved0D;
  47. UINT8 Reserved0E;
  48. UINT8 Reserved0F;
  49. UINT32 Reserved10;
  50. UINT32 Reserved11;
  51. UINT32 Reserved12;
  52. UINT32 Reserved13;
  53. UINT32 Reserved14;
  54. UINT8 Reserved15;
  55. UINT8 Reserved16;
  56. } DPTF_SETTINGS;
  57. //
  58. // MCH DXE Platform Policiy ==================================================
  59. //
  60. #define NO_AUDIO 0
  61. #define HD_AUDIO 1
  62. #define LPE_AUDIO 2
  63. typedef struct _DXE_VLV_PLATFORM_POLICY_PROTOCOL {
  64. UINT8 Revision;
  65. IGD_PANEL_FEATURES IgdPanelFeatures;
  66. DPTF_SETTINGS Reserved;
  67. UINT8 GraphicReserve00;
  68. UINT8 GraphicsPerfAnalyzers;
  69. UINT8 PwmReserved00;
  70. UINT8 PwmReserved01;
  71. UINT8 PmSupport;
  72. UINT8 GraphicReserve01;
  73. UINT8 GfxPause;
  74. UINT8 GraphicsFreqReq;
  75. UINT8 GraphicReserve03;
  76. UINT8 GraphicReserve02;
  77. UINT8 GraphicReserve04;
  78. UINT8 PavpMode;
  79. UINT8 GraphicReserve05;
  80. UINT8 UlClockGating;
  81. UINT8 IdleReserve;
  82. UINT8 AudioTypeSupport;
  83. UINT8 GraphicReserve06;
  84. } DXE_VLV_PLATFORM_POLICY_PROTOCOL;
  85. #endif