]> git.proxmox.com Git - mirror_edk2.git/blob - Vlv2DeviceRefCodePkg/ValleyView2Soc/NorthCluster/Include/Protocol/VlvPlatformPolicy.h
Vlv2TbltDevicePkg/Vlv2DeviceRefCodePkg:
[mirror_edk2.git] / Vlv2DeviceRefCodePkg / ValleyView2Soc / NorthCluster / Include / Protocol / VlvPlatformPolicy.h
1
2 /*++
3
4 Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved
5
6 This program and the accompanying materials are licensed and made available under
7 the terms and conditions of the BSD License that accompanies this distribution.
8 The full text of the license may be found at
9 http://opensource.org/licenses/bsd-license.php.
10
11 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13
14
15 Module Name:
16
17 VlvPlatformPolicy.h
18
19 Abstract:
20
21 Interface definition details between MCH and platform drivers during DXE phase.
22
23 --*/
24
25 #ifndef _VLV_PLATFORM_POLICY_H_
26 #define _VLV_PLATFORM_POLICY_H_
27
28 //
29 // VLV Policy provided by platform for DXE phase {5BAB88BA-E0E2-4674-B6AD-B812F6881CD6}
30 //
31 #define DXE_VLV_PLATFORM_POLICY_GUID \
32 {0x5bab88ba, 0xe0e2, 0x4674, 0xb6, 0xad, 0xb8, 0x12, 0xf6, 0x88, 0x1c, 0xd6}
33
34 //
35 // Extern the GUID for protocol users.
36 //
37 extern EFI_GUID gDxeVlvPlatformPolicyGuid;
38
39 //
40 // Protocol revision number
41 // Any backwards compatible changes to this protocol will result in an update in the revision number
42 // Major changes will require publication of a new protocol
43 //
44 #define DXE_VLV_PLATFORM_POLICY_PROTOCOL_REVISION 0
45
46
47 typedef struct {
48 UINT8 PFITStatus;
49 UINT8 IgdTheramlSupport;
50 UINT8 ALSEnabled;
51 UINT8 LidStatus;
52 } IGD_PANEL_FEATURES;
53
54 typedef struct {
55 UINT8 Reserved00;
56 UINT8 Reserved01;
57 UINT16 Reserved02;
58 UINT16 Reserved03;
59 UINT16 Reserved04;
60 UINT16 Reserved05;
61 UINT16 Reserved06;
62 UINT16 Reserved07;
63 UINT16 Reserved08;
64 UINT16 Reserved09;
65 UINT16 Reserved0A;
66 UINT16 Reserved0B;
67 UINT16 Reserved0C;
68 UINT16 Reserved0D;
69 UINT8 Reserved0E;
70 UINT8 Reserved0F;
71 UINT32 Reserved10;
72 UINT32 Reserved11;
73 UINT32 Reserved12;
74 UINT32 Reserved13;
75 UINT32 Reserved14;
76 UINT8 Reserved15;
77 UINT8 Reserved16;
78 } DPTF_SETTINGS;
79
80 //
81 // MCH DXE Platform Policiy ==================================================
82 //
83
84 #define NO_AUDIO 0
85 #define HD_AUDIO 1
86 #define LPE_AUDIO 2
87
88 typedef struct _DXE_VLV_PLATFORM_POLICY_PROTOCOL {
89 UINT8 Revision;
90 IGD_PANEL_FEATURES IgdPanelFeatures;
91 DPTF_SETTINGS Reserved;
92 UINT8 GraphicReserve00;
93 UINT8 GraphicsPerfAnalyzers;
94 UINT8 PwmReserved00;
95 UINT8 PwmReserved01;
96 UINT8 PmSupport;
97 UINT8 GraphicReserve01;
98 UINT8 GfxPause;
99 UINT8 GraphicsFreqReq;
100 UINT8 GraphicReserve03;
101 UINT8 GraphicReserve02;
102 UINT8 GraphicReserve04;
103 UINT8 PavpMode;
104 UINT8 GraphicReserve05;
105 UINT8 UlClockGating;
106 UINT8 IdleReserve;
107 UINT8 AudioTypeSupport;
108 UINT8 GraphicReserve06;
109 } DXE_VLV_PLATFORM_POLICY_PROTOCOL;
110
111 #endif