3 Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>
5 This program and the accompanying materials are licensed and made available under
6 the terms and conditions of the BSD License that accompanies this distribution.
7 The full text of the license may be found at
8 http://opensource.org/licenses/bsd-license.php.
10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
22 Enhanced Speedstep protocol
24 The Enhanced Speedstep Protocol support.
28 #ifndef _ENHANCED_SPEEDSTEP_H_
29 #define _ENHANCED_SPEEDSTEP_H_
31 #define ENHANCED_SPEEDSTEP_PROTOCOL_GUID \
33 0x91a1ddcf, 0x5374, 0x4939, 0x89, 0x51, 0xd7, 0x29, 0x3f, 0x1a, 0x78, 0x6f \
36 typedef struct _ENHANCED_SPEEDSTEP_PROTOCOL ENHANCED_SPEEDSTEP_PROTOCOL
;
39 UINT8 Version
; // EIST State format
40 UINT8 Size
; // Size of element
41 UINT32 RatioStep
; // Step
42 UINT32 MinRatio
; // Calculated min ratio
43 UINT32 MaxRatio
; // Calculated max ratio
44 UINT32 MinCoreFreq
; // Calculated min freq
45 UINT32 MaxCoreFreq
; // Calculated max freq
46 UINT32 MinPower
; // Calculated min power
47 UINT32 MaxPower
; // Calculated max power
48 UINT32 NumStates
; // Number of states
54 UINT32 TransitionLatency
;
55 UINT32 BusMasterLatency
;
58 } EFI_ACPI_CPU_PSS_STATE
;
62 (EFIAPI
*GET_EIST_TABLE
) (
63 IN ENHANCED_SPEEDSTEP_PROTOCOL
*This
,
64 OUT EIST_INFORMATION
**EistInformation
,
68 struct _ENHANCED_SPEEDSTEP_PROTOCOL
{
70 GET_EIST_TABLE GetEistTable
;
74 // There will be an instance of this protocol for every processor
75 // in the system. ProcNumber is used to manage all the different
76 // processors in the system and passed into the MP protocol
77 // to run code streams on application processors
79 extern EFI_GUID gEnhancedSpeedstepProtocolGuid
;