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