+++ /dev/null
-/*++\r
-\r
- Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
- \r\r
- SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
- \r\r
-\r
-\r
-\r
-Module Name:\r
-\r
- EnhancedSpeedstep.h\r
-\r
-Abstract:\r
-\r
- Enhanced Speedstep protocol\r
-\r
- The Enhanced Speedstep Protocol support.\r
-\r
-**/\r
-\r
-#ifndef _ENHANCED_SPEEDSTEP_H_\r
-#define _ENHANCED_SPEEDSTEP_H_\r
-\r
-#define ENHANCED_SPEEDSTEP_PROTOCOL_GUID \\r
- { \\r
- 0x91a1ddcf, 0x5374, 0x4939, 0x89, 0x51, 0xd7, 0x29, 0x3f, 0x1a, 0x78, 0x6f \\r
- }\r
-\r
-typedef struct _ENHANCED_SPEEDSTEP_PROTOCOL ENHANCED_SPEEDSTEP_PROTOCOL;\r
-\r
-typedef struct {\r
- UINT8 Version; // EIST State format\r
- UINT8 Size; // Size of element\r
- UINT32 RatioStep; // Step\r
- UINT32 MinRatio; // Calculated min ratio\r
- UINT32 MaxRatio; // Calculated max ratio\r
- UINT32 MinCoreFreq; // Calculated min freq\r
- UINT32 MaxCoreFreq; // Calculated max freq\r
- UINT32 MinPower; // Calculated min power\r
- UINT32 MaxPower; // Calculated max power\r
- UINT32 NumStates; // Number of states\r
-} EIST_INFORMATION;\r
-\r
-typedef struct {\r
- UINT32 CoreFrequency;\r
- UINT32 Power;\r
- UINT32 TransitionLatency;\r
- UINT32 BusMasterLatency;\r
- UINT32 Control;\r
- UINT32 Status;\r
-} EFI_ACPI_CPU_PSS_STATE;\r
-\r
-typedef\r
-EFI_STATUS\r
-(EFIAPI *GET_EIST_TABLE) (\r
- IN ENHANCED_SPEEDSTEP_PROTOCOL *This,\r
- OUT EIST_INFORMATION **EistInformation,\r
- OUT VOID **PssStates\r
- );\r
-\r
-struct _ENHANCED_SPEEDSTEP_PROTOCOL {\r
- UINT32 ProcApicId;\r
- GET_EIST_TABLE GetEistTable;\r
-};\r
-\r
-//\r
-// There will be an instance of this protocol for every processor\r
-// in the system. ProcNumber is used to manage all the different\r
-// processors in the system and passed into the MP protocol\r
-// to run code streams on application processors\r
-//\r
-extern EFI_GUID gEnhancedSpeedstepProtocolGuid;\r
-\r
-#endif\r