XTU 3.0 BIOS Interface Specification
XTU 3.0 BIOS Interface Specification
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Intel software products are copyrighted by and shall remain the property of Intel Corporation. Use, duplication or disclosure is subject to restrictions stated in Intel's Software License Agreement provided with the software, or in the case of software delivered to the government, in accordance with the software license agreement as defined in FAR 52.227-7013. Intel and the Intel logo are trademarks of Intel Corporation and its subsidiaries around the world. * Other brands and names may be claimed as the property of others.
Intel Confidential
ii
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Revision History
Revision 0.3 Date 9/1/2010 Reason for Changes Initial Revision of the Intel Extreme Tuning Utility 3.0 BIOS Specification. This revision of the XTU BIOS Specification is not backward compatible with prior revisions of the interface. Added additional SMI functions for Read Defaults, Read XMP Profile 1 & Read XMP Profile 2. Updated the ASL examples to be in line with the updated ASL definitions. Incorporating feedback from BIOS and development stakeholders. Incorporated additional feedback from ACPI expert. Updated some ASL method definitions for ease of BIOS implementation. Updated the formatting of the document for consistency. Added the BIOS Interface Overview. Added support for the Short and Extended Time Window Controls. Addressed multiple typographical errors. Added error codes for CDWR and CDRD methods. Added example code for GACI initialization in C and usage within ASL. Added ControlIds specific for SNB-E. Updated the revision to 0.8 after stakeholder review. No other changes. Added ControlId for Vboot control. Added ControlId for Runtime Turbo Override Enable control. Fixed typos in the GXDV section. Updated unit type and platform specific info within ControlId table in Appendix A. Added details of runtime controls provided within the XTU application. Added definition for the XMP Profile enumeration for use with the SMI Handler. Added details for dynamic control mode support. Added ControlId for Configurable TDP control. Added ControlId for Memory Clock Multiplier control.
0.82 0.83
5/27/2011 7/1/2011
Intel Confidential
iii
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Table of Contents
1 1.1 1.2 1.3 1.4 1.5 1.6 2 INTRODUCTION................................................................................................................................. 1 PURPOSE OF THIS DOCUMENT ........................................................................................................... 1 DOCUMENT SCOPE ............................................................................................................................. 1 ASSUMPTIONS ..................................................................................................................................... 1 SUPPORTED PLATFORMS.................................................................................................................... 1 TERMINOLOGY AND ACRONYMS ....................................................................................................... 1 RELATED DOCUMENTS ....................................................................................................................... 2 BIOS INTERFACE OVERVIEW ....................................................................................................... 3
2.1 KEY CONCEPTS ................................................................................................................................... 3 2.1.1 XTU ACPI DEVICE ........................................................................................................................... 3 2.1.2 XTU SMI HANDLER ......................................................................................................................... 4 2.2 CALL SEQUENCE ................................................................................................................................. 5 3 INTERFACE DEFINITIONS.............................................................................................................. 6
3.1 ACPI DEVICE INTERFACE ................................................................................................................. 6 3.1.1 DEVICE DESCRIPTION ....................................................................................................................... 6 3.1.2 OBJECT OVERVIEW ........................................................................................................................... 6 3.1.3 GENERIC OBJECTS ............................................................................................................................. 7 3.1.3.1 Interface Version (IVER) ............................................................................................................... 7 3.1.4 CONTROL DETAIL OBJECTS .............................................................................................................. 7 3.1.4.1 Get Available Controls (GACI) ..................................................................................................... 7 3.1.4.2 Discrete Supported Values (GDSV) ............................................................................................ 11 3.1.4.3 Get SMI Command Value (GSCV) ............................................................................................. 13 3.1.4.1 Get XMP Display Values (GXDV) ............................................................................................. 13 3.1.5 RUN-TIME CONTROL OBJECTS........................................................................................................ 15 3.1.5.1 Control Device Read (CDRD) ..................................................................................................... 15 3.1.5.2 Control Device Write (CDWR) ................................................................................................... 16 3.1.6 MONITOR-ONLY OBJECTS............................................................................................................... 18 3.1.6.1 Temperature Sensor Data Dump (TSDD) .................................................................................... 18 3.1.6.2 Voltage Sensor Data Dump (VSDD) ........................................................................................... 19 3.1.6.3 Fan Sensor Data Dump (FSDD) .................................................................................................. 20 3.1.6.4 Sensor Data Sampling Period (SDSP) ......................................................................................... 21 3.1.7 EXAMPLE IMPLEMENTATION .......................................................................................................... 22 3.2 WATCHDOG TIMER .......................................................................................................................... 27 3.3 SW SMI REAL-TIME COMMUNICATIONS INTERFACE .................................................................. 28 3.3.1 OVERVIEW....................................................................................................................................... 28 3.3.2 BIOS SETTINGS STRUCTURE........................................................................................................... 28 3.3.3 FUNCTIONS ...................................................................................................................................... 29
Intel Confidential iv Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
3.3.3.1 Read BIOS Settings ..................................................................................................................... 29 3.3.3.2 Write BIOS Settings .................................................................................................................... 29 3.3.4 RETURN VALUES ............................................................................................................................. 29 3.3.4.1 Error Codes .................................................................................................................................. 30 3.3.4.2 Warning Codes............................................................................................................................. 30 APPENDIX A - ENUMERATIONS ........................................................................................................ 31
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
List of Figures
No table of figures entries found.
List of Tables
Table 1: Definition of Acronyms Used..........................................................................................................................2 Table 2: Related Documentation ...................................................................................................................................2 Table 3: ACPI Device Identification .............................................................................................................................6 Table 4: ACPI Device Object Overview .......................................................................................................................7 Table 5: GACI Return Value Definition........................................................................................................................8 Table 6: ControlIdData Structure Definition ............................................................................................................... 10 Table 8: GDSV Argument Definition .......................................................................................................................... 12 Table 9: GACI Return Value Definition...................................................................................................................... 12 Table 10: DiscreteValueData Structure Definition ...................................................................................................... 13 Table 11: GXDV Argument Definition ....................................................................................................................... 13 Table 12: GXDV Return Value Definition .................................................................................................................. 14 Table 13: XmpDisplayValue Structure Definition ...................................................................................................... 15 Table 14: CDRD Argument Definition ....................................................................................................................... 16 Table 15: CDRD Return Value Definition .................................................................................................................. 16 Table 16: Control Ids with Runtime Support Built-In ................................................................................................. 17 Table 17: CDWR Argument Definition....................................................................................................................... 17 Table 18: TSDD Package Parameter Definitions ........................................................................................................ 19 Table 19: VSDD Package Parameter Definitions ........................................................................................................ 20 Table 20: FSDD Package Parameter Definitions......................................................................................................... 21 Table 21: SDSP Result Parameter Definitions ............................................................................................................ 21 Table 22: BIOS Settings Data Structure ...................................................................................................................... 28 Table 23: BIOS Setting Entry ...................................................................................................................................... 28 Table 24: Read BIOS Settings Command, Register Setup .......................................................................................... 29 Table 25: Write BIOS Settings Command, Register Setup ......................................................................................... 29 Table 26: BIOS Settings Command Error Codes ........................................................................................................ 30 Table 27: BIOS Settings Command Warning Codes ................................................................................................... 30 Table 28: Usage Sorted Control ID Enumerations ...................................................................................................... 31 Table 29: Numerically Sorted Control ID Enumerations ............................................................................................ 33 Table 30: Temperature (TSDD) Usage enumeration ................................................................................................... 35 Table 31: Voltage (VSDD) Usage enumeration .......................................................................................................... 36 Table 32: Fan (FSDD) Usage enumeration ................................................................................................................. 36
Intel Confidential
vi
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
1 Introduction
1.1 Purpose of this Document
The purpose of this document is to specify the BIOS interfaces necessary for implementation to support the Extreme Tuning Utility (XTU) application. It includes all the information necessary for someone to implement and use these interfaces. It will stand on its own and not be dependent on other documents to describe how to provide the BIOS interfaces.
1.2
Document Scope
This BIOS Interface Specification provides information regarding the programming model that is used for this module, any dependencies that exist within this module, and complete descriptions of the interfaces that are provided by this module. Let it be clear that the document provides only the interface, not the design or implementation of those interfaces.
1.3
Assumptions
Throughout this document technical terms regarding BYTEs, WORDs, DWORDs, and QWORDs are used. All references should be assumed to be little-endian. Also, BYTEs should be assumed to be 8 bits and WORDSs 16 bits.
1.4
Supported Platforms
The Intel Extreme Tuning Utility supports a specific set of Intel microprocessor based platforms. XTU supports all Sandy Bridge & Ivy Bridge based processors. This includes both Mobile and Desktop processors. It also includes processors with or without integrated graphics.
1.5
ACPI ASL BCLK BIOS CPU
Acronym
Advanced Configuration and Power Interface ACPI Source Language Base Clock (aka Reference Clock) The clock used as a source for many of the clock domains on the CPU and PCH Basic Input/Output System This is the firmware responsible to boot a PC Central Processing Unit The main processor for a platform 1 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Intel Confidential
Acronym
Description
EAX EBX ECX EDX IA IO OS PCH PCMCIA PLL RPM SMI SPD SW TDP VR WDT XMP XTU
Register of the x86 processor Register of the x86 processor Register of the x86 processor Register of the x86 processor Intel Architecture Input/Output Operating System Platform Controller Hub Personal Computer Memory Card International Association aka PC Card Phased Locked Loop Rotations Per Minute System Management Interrupt Serial Presence Detect Non-volatile memory that is used on memory sticks to describe the characteristics of the memory Software Total Design Power The maximum power that a processor is designed to use Voltage Regulator A circuit used to maintain a specific voltage in order to power another circuit Watchdog Timer A timer used to recover from a halted or hung platform state Intel Extreme Memory Profiles Pre-defined Memory Overclocking Profiles defined as part of the SPD Intel Extreme Tuning Utility Overclocking software provided by Intel Table 1: Definition of Acronyms Used
1.6
Related Documents
Document Name Revision Doc Location
Table 2: Related Documentation Intel Confidential 2 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
2.1
Key Concepts
There are two key concepts that should be understood by the BIOS engineer when implementing the XTU BIOS interface. The first of these concepts is the XTU ACPI Device and the purpose of this device. The XTU ACPI Device is generated by ASL that is written by the BIOS developer. The main purpose of this device is to provide a mechanism that can be used for passing platform specific information from the BIOS to the OS. It can optionally provide support for reading from and writing to platform specific hardware in runtime. The second main concept that is important to understand is the mechanism that XTU uses in order to persist data across reboots. In order persist BIOS setup information across reboots XTU passes updated information to the BIOS via an SMI. The associated SMI handler must interpret the data that is passed to the BIOS and store it in flash or another non-volatile medium where it can be integrated into future boots.
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
2.2
Call Sequence
The following flow chart outlines the calls that will be made to BIOS by the XTU software. All calls referenced in this chart are defined in the INTERFACE DEFINITIONS section later in this document.
XTU Software Initializes at OS Load
No
Process the GACI data for the current Control ID Call the GDSV Method for this Control ID and process the data Attempt to read both XMP profiles via GXSV method
No
Read monitoring values via TSDD, VSDD, and FSDD At the sampling period
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
3 Interface Definitions
3.1 ACPI Device Interface
The custom XTU ACPI Device is the foundation of the new XTU BIOS Interface. This ACPI device definition is required in order to allow XTU to communicate to BIOS for the purpose of either persistence of setting values across reboots or control of run-time platform specific devices. The following sections will describe each of the required and optional structures, their purpose, and detailed descriptions. All examples in the following section are referring to ASL code. For details on syntax and ASL conventions please refer to the Advanced Configuration and Power Interface Specification available at http://www.acpi.info.
_HID _CID
This device can be implemented under any scope of the platform ACPI's namespace, however, it is recommended to be implemented within the \_SB scope. Specifying the _CID ensures that the ACPI device does not show up in the Windows Device Manager as an "Unknown Device" with a yellow bang.
IVER GACI
Name Method
This object defines the version number of the interface. This object defines the Control IDs supported by the platform and includes the static information associated with those controls. This object is used to describe a discrete set of display values when the control is unable to be described as a continuous set of values. 6 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
GDSV
Method
Intel Confidential
ACPI Object
Object Name
Type
Description
Get SMI Command Value Get XMP Display Values Control Device Read Control Device Write Temperature Sensor Device Dump Voltage Sensor Device Dump Fan Sensor Device Dump Sensor Data Sampling Period
This object is used to describe the command that must be sent to the software SMI. This object is used to retrieve the Control IDs and display values associated with a requested XMP Profile. This object is used to read the current state of a platform specific runtime control. This object is used to write the current state of a platform specific runtime control. This object is used to get the current state of all temperature sensors on the system. This object is used to get the current state of all voltage sensors on the system. This object is used to get the current state of all fan sensors on the system. This object is used to get the sampling period that should be used for all monitors.
3.1.4.1
Get Available Controls (GACI) The GACI object is a control detail object which is implemented by the BIOS that allows for retrieving the entire list of Control IDs supported by the BIOS (see ENUMERATIONS). Any Control ID that is present in the list is assumed to be a Control ID that is handled by the SW SMI REAL-TIME COMMUNICATIONS
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
INTERFACE read and write routines (section 3.3). The XTU Software will then attempt to use the ACPI RUN-TIME CONTROL OBJECTS (section 3.1.5) in order to read whether each Control ID is supported via these interfaces. The GACI object is responsible to communicate the static information for all Controls which are able to be manipulated on the platform. Syntax for Signature Method(GACI, 0, NotSerialized, 0, PkgObj) Description The purpose of this method is to retrieve basic data about controls that are supported by the BIOS. Arguments No input is required for this method. Result A package object is returned with the following definition: Name (RETV, Package() { // Field Name ErrorCode DataBuffer }) // Field Type // DWORD // ControlIdData[]
The resultant buffer is defined as an array of packed ControlIdData C-structs. struct ControlIdData { DWORD ControlId WORD NumberOfValues BYTE Precision BYTE Flags DWORD DefaultDataValue DWORD MinDataValue DWORD MaxDataValue DWORD MinDisplayValue DWORD MaxDisplayValue } Result Parameter Definitions
Field Name Definition
Defined as: Success == 0 ErrorCode Unexpected Error == 0xFFFFFFFF Any value that is returned which is not equal to 0 is considered a failure. In the failure case, the buffer is defined as indeterminate and the caller should not use that data. DataBuffer The buffer returned as part of the GACI call is an array of ControlIdData C-structs. It is valid to return an empty buffer. This would imply that only monitoring features are supported by the platform. Table 5: GACI Return Value Definition 8 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Intel Confidential
Field Name
Definition
ControlId
This field describes a Control ID that is supported by the BIOS via the SW SMI REAL-TIME COMMUNICATIONS INTERFACE. This field is used for two purposes. First if the control requires a value set of discrete numbers as opposed to a set of continuous numbers then this field should be set to FFFFFFFh. This tells the XTU software to use the method in order to retrieve the value set for this Control ID.
NumberOfValues
If the Control ID can be described by a continuous set of values then this parameter describes the number of supported values that are contained in that data set. This allows the caller to determine the step size for both the Data Values and the Display Values in order to generate a complete data set as well as a complete set of options to display to the end-user. This field is used to allow the BIOS to represent non-whole numbers as fixed-point values. The precision specified will be applied to all Display Values in the data set of the associated Control ID. The precision field will be used for both continuous and discrete value sets. See the following examples: DisplayValue: Precision: XTU UI: DisplayValue: Precision: XTU UI: DisplayValue: Precision: XTU UI: Flag Bit Definitions: Bit[0] 125 2 1.25 40 0 40 400 1 40.0 1 Real Time ACPI Interface Support 0 No Real Time ACPI Interface Support If bit 0 is a 1 then the RUN-TIME CONTROL OBJECTS are implemented for this Control ID. 1 Supports dynamic control mode 0 Does not support dynamic control mode Special rules apply to Dynamic Control Mode Support. Bit[2:7] Reserved Should be 00h
Precision
Flags
Bit[1]
The value of the data associated with the default setting for this Control ID. This data value must be contained within the value set described by the Min/Max Data Values or by the data values. The value of the data associated with the MinDisplayValue. This data 9 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Field Name
Definition
will be sent to both the SW SMI REAL-TIME COMMUNICATIONS INTERFACE and the RUN-TIME CONTROL OBJECTS if they are supported when attempting to apply the minimum display value. This value is not used if the method is implemented for this Control ID. The value of the data associated with the MaxDisplayValue. This data will be sent to both the SW SMI REAL-TIME COMMUNICATIONS INTERFACE and the RUN-TIME CONTROL OBJECTS if they are supported when attempting to apply the maximum display value. This value is not used if the method is implemented for this Control ID. The minimum value that is to be used for display purposes by the XTU user interface. This value is ignored if the method is implemented for this Control ID. NOTE: This value can also be used for the non-standard data type definitions outlined below (see ENUMERATIONS): Enable/Disable Control IDs In this case the MinDisplayValue should be 0. This represents the Disable state. XMP Profiles In this case the MinDisplayValue should be 0. A DisplayValue of 0 represents Default Profile. A DisplayValue of 1 represents the Custom Profile. A DisplayValue of 2 represents Profile 1. A Display Value of 3 represents Profile 2. All other values are unsupported. The maximum value that is to be used for display purposes by the XTU user interface. This value is ignored if the method is implemented for this Control ID. NOTE: This value can also be used for the non-standard data type definitions outlined below (see ENUMERATIONS): Enable/Disable Control IDs In this case the MinDisplayValue should be 0. This represents the Disable state. XMP Profiles In this case the MinDisplayValue should be 0. A DisplayValue of 0 represents Default Profile. A DisplayValue of 1 represents the Custom Profile. A DisplayValue of 2 represents Profile 1. A Display Value of 3 represents Profile 2. All other values are unsupported. Table 6: ControlIdData Structure Definition
MaxDataValue
MinDisplayValue
MaxDisplayValue
Intel Confidential
10
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
02h 18h
CPU Voltage Override System Command Rate Mode Table 7: Controls that Support Dynamic Control Mode
3.1.4.2
Discrete Supported Values (GDSV) The GDSV object is a control detail object which retrieves a specified Control IDs (see ENUMERATIONS) discrete set of BIOS setting values, display values, and an associated precision for the entire list. This mechanism is only necessary if either the display values or the setting values are non-continuous. This method also returns the precision of the display values. Syntax for Signature Method(GDSV, 1, NotSerialized, 0, PkgObj, IntObj) Description The purpose of this method is to retrieve the complete set of discrete values supported for the requested Control ID on this platform. Arguments The single input to the GDSV method is the Control ID to be queried.
Intel Confidential
11
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Parameter Definitions
Field Name Definition
ControlID (Arg0)
This is a value which represents a specified control (see ENUMERATIONS). Table 8: GDSV Argument Definition
Result A package object is returned with the following definition: Name (RETV, Package() { // Field Name ErrorCode DataBuffer }) // Field Type // DWORD // DiscreteValueData[]
The resultant buffer is defined as an array of packed DiscreteValueData C-structs. struct DiscreteValueData { DWORD DataValue DWORD DisplayValue } Result Parameter Definitions
Field Name Definition
Defined as: Success == 0 Only Continuous Values Supported == 1 Unexpected Error == 0xFFFFFFFF ErrorCode Any value that is returned which is not equal to 0 is considered a failure. A value of 1 describes a Control ID whose data is only defined in the GET AVAILABLE CONTROLS (GACI). In any error condition the caller should not use the DataBuffer as its values are indeterminate. The buffer returned as part of the GDSV call is an array of DiscreteValueData C-structs. This array of structures should explicitly define all supported values for the requested Control ID. If both the SW SMI REAL-TIME COMMUNICATIONS INTERFACE and the RUN-TIME CONTROL OBJECTS are supported, then the array of supported values will be shared between them. It is not valid to return an empty buffer. Table 9: GACI Return Value Definition
DataBuffer
Intel Confidential
12
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Field Name
Definition
DataValue
This value will be sent as the input to both the SW SMI REAL-TIME COMMUNICATIONS INTERFACE and the RUN-TIME CONTROL OBJECTS for the associated DisplayValue. The value for the graphical user interface display which will be presented to the end-user. Any precision that is applied to the DisplayValue is described in the GET AVAILABLE CONTROLS (GACI) method with the associated Control ID. Table 10: DiscreteValueData Structure Definition
DisplayValue
3.1.4.3
Get SMI Command Value (GSCV) The GSCV object is a control detail object which evaluates to the SMI command that should be sent to the appropriate SW SMI port for the platform. This is a custom value for each BIOS that designates which value should be placed in the AL register prior to performing the SW SMI described in the SW SMI REALTIME COMMUNICATIONS INTERFACE section of the document. Syntax for Signature Name (GSCV, 0xXX)
3.1.4.1
Get XMP Display Values (GXDV) The GXDV object is a control detail object which retrieves the requested XMP profiles settings and their associated display values. This mechanism is only necessary if the platform supports XMP. It is an optional method for implementation. However it is required to be implemented for XTU to support XMP. Syntax for Signature Method(GXDV, 1, NotSerialized, 0, PkgObj, IntObj) Description The purpose of this function is to query the BIOS about the memory frequency, timings, and voltages associated with a specific XMP profile. All Memory settings that are supported by the platform must be returned as part of the BIOS Settings Data Structure returned from the SMI call. This includes every supported Control ID from the memory section of TABLE 29: NUMERICALLY SORTED CONTROL ID ENUMERATIONS as well as the Memory Voltage and optionally the System Agent Voltage from the voltage section of the enumeration. All of this data must be returned by this method. Arguments The single input to the GXDV method is the XMP Profile to be queried, Profile 1 or Profile 2. Parameter Definitions
Field Name Definition
This is a value which represents either Profile 1 or Profile 2. ProfileNumber (Arg0) 1 Retrieve values for Profile 1 2 Retrieve values for Profile 2 All other inputs Invalid and should return an error. Table 11: GXDV Argument Definition Intel Confidential 13 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Result A package object is returned with the following definition: Name (RETV, Package() { // Field Name ErrorCode DataBuffer }) // Field Type // DWORD // XmpDisplayValue[]
The resultant buffer is defined as an array of packed XmpDisplayValue C-structs. struct XmpDisplayValue { WORD ControlID BYTE Reserved BYTE Precision DWORD DisplayValue } Result Parameter Definitions
Field Name Definition
Defined as: Success == 0 Invalid Input Argument == 1 XMP Not Supported == 2 ErrorCode Unexpected Error == 0xFFFFFFFF Any value that is returned which is not equal to 0 is considered a failure. A value of 1 describes an invalid input. This is generally because a request for Profiles other than 1 & 2. In any error condition the caller should not use the DataBuffer as its values are indeterminate. The buffer returned as part of the GXDV call is an array of XmpDisplayValue C-structs. This array of structures should explicitly define all Control IDs and their associated Display Values that will be altered if the requested XMP Profile is applied to the system. It is not valid to return an empty buffer. Table 12: GXDV Return Value Definition
Field Name Definition
DataBuffer
ControlID Reserved
This field describes a Control ID that is manipulated if the currently queried XMP Profile is selected to be applied to the system. This field must be set to 00h.
Intel Confidential
14
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Field Name
Definition
This field is used to allow the BIOS to represent non-whole numbers as fixed-point values. The precision specified will be applied to the value in the DisplayValue field of this structure. See the following examples: DisplayValue: Precision: XTU UI: Precision DisplayValue: Precision: XTU UI: DisplayValue: Precision: XTU UI: DisplayValue 125 2 1.25 40 0 40 400 1 40.0
The value for the graphical user interface display which will be presented to the end-user. Table 13: XmpDisplayValue Structure Definition
Intel Confidential
15
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Parameter Definitions
Field Name Definition
ControlID (Arg0)
This is a value which represents a specified control (see ENUMERATIONS). Table 14: CDRD Argument Definition
Result A package object is returned with the following definition: Name (RETV, Package() { // Field Name ErrorCode, DataValue }) Result Parameter Definitions
Field Name Definition
Defined as: Success == 0 ErrorCode Unexpected Error == 0xFFFFFFFF Any value that is returned which is not equal to 0 is considered a failure to read the device. In this case, the value of the DataValue field is defined as indeterminate and the caller should not use that data. DataValue The current value of the hardware as reported by the BIOS. The meaning of these values is defined by either the GET AVAILABLE CONTROLS (GACI) or the method. Table 15: CDRD Return Value Definition 3.1.5.2 Control Device Write (CDWR) The CDWR object is a control method which is implemented by the BIOS that allows for writing to an object which is controllable in real-time. This object is only required to be implemented when supporting real-time control for platform specific hardware. Handlers to support Control IDs for Intel silicon based features are not required. The detailed list is in the following table.
Subsystem Control IDs Definition
Processor
Additional Turbo Mode CPU Voltage Short Window Package Total Design Power Limit Extended Window Package Total Design Power Limit Short Window Time (Sandy Bridge-E only) Extended Window Time 16 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Intel Confidential
IA Core Total Design Power Limit Internal Graphics Core Total Design Power Limit Runtime Turbo Override Reference Clock Frequency (Cougar Point Only)
An example can be found in Section 3.1.7. Syntax for Signature Method(CDWR, 2, Serialized, 0, IntObj, {IntObj, IntObj}) Description The purpose of this method is to be able to write the requested value to the hardware via a BIOS implemented custom interface. This method is responsible to write the requested value to hardware and return a success or fail status to the caller. Arguments The CDWR control method has two input arguments. Both arguments are DWORD values. The first argument is the Control ID. The second argument is the value to be written to the hardware. Parameter Definitions
Field Name Definition
This is a value which represents a specified control (see ENUMERATIONS). The value that is being requested to be written to hardware. It will be a value the XTU software has retrieved from either the GET AVAILABLE CONTROLS (GACI) or the methods. Table 17: CDWR Argument Definition
Defined as: Success == 0 ErrorCode Non-real Time Control ID requested = 1 Unexpected Error == 0xFFFFFFFF Any value that is returned which is not equal to 0 is considered a failure to write to the device.
Intel Confidential
17
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
// // // //
NOTE: If no temperature sensors are present on the system, then a null package must be returned for the TSDD object. Result Parameter Definitions
Field Name Definition
Indicates the type of device the temperature value is reported for. The value must be one of the values from TABLE 30: TEMPERATURE (TSDD) USAGE ENUMERATION. The UniqueId value reported by BIOS in the TSDD package must uniquely identify a device within the Performance Tuning & Monitoring 18 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Field Name
Definition
ACPI Device scope (this includes VSDD and FSDD devices as well). The units of the current absolute temperature value returned must be 10ths of a Kelvin. For example, if the temperature is 30 degrees Celsius then the value returned must be (2732 + 300) = 3032. The value of the reserved field is 0000h. Table 18: TSDD Package Parameter Definitions 3.1.6.2 Voltage Sensor Data Dump (VSDD) The VSDD method evaluates to a packaged list of information about available voltage sensors and the current voltage values. This object is required when using any Performance Tuning & Monitoring ACPI Devices. Typical voltage values returned by this object would include CPU core, Uncore, Memory, and/or PCH. Syntax for Signature Method(VSDD, 0, NotSerialized, 0, PkgObject) Description The purpose of this method is to be able to get the current state of all voltages on the platform which have been provided by the platform. Arguments No input parameters. Result Name (VLTV, Package() { //Field Name UsageId1, UniqueId1, CurrentValue1 Reserved1, UsageIdN, UniqueIdN, CurrentValueN, ReservedN })
CurrentValue Reserved
// // // //
NOTE: If no voltages are present on the system, then a null package must be returned for the VSDD object. Result Parameter Definitions
Field Name Definition
Indicates the type of device the voltage value is reported for. UsageId for VSDD package must be one of the values from TABLE 31: VOLTAGE (VSDD) USAGE ENUMERATION. 19 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Field Name
Definition
UniqueId
The UniqueId value reported by BIOS in the VSDD package must uniquely identify a device within the Performance Tuning & Monitoring ACPI Device scope (this includes TSDD and FSDD devices as well). The unit of the current voltage returned must be millivolts (mV). E.g., if the Voltage is 1.1 V, then the value returned must be 1100. The value of the reserved field is 0000h. Table 19: VSDD Package Parameter Definitions
CurrentValue Reserved
3.1.6.3
Fan Sensor Data Dump (FSDD) The FSDD method evaluates to a packaged list of information about available fan sensors and the current fan speed values. This object is required when using any Performance Tuning & Monitoring ACPI Devices. Syntax for Signature Method(FSDD, 0, NotSerialized, 0, PkgObject) Description The purpose of this method is to be able to get the current speed of all fans on the platform which have been provided by the platform. Arguments No input parameters. Result Name (RPMV, Package() { //Field Name UsageId1, UniqueId1, CurrentValue1, Reserved1, UsageIdN, UniqueIdN, CurrentValueN, ReservedN })
// // // //
NOTE: If no fan sensors are present on the system, then a null package must be returned. Result Parameter Definitions
Field Name Definition
UsageId
Indicates the type of device the fan speed value is reported for. UsageId for FSDD package must be one of the values from TABLE 32: FAN (FSDD) USAGE ENUMERATION. 20 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Intel Confidential
Field Name
Definition
UniqueId
The UniqueId value reported by BIOS in the FSDD package must uniquely identify a device tithing the Performance Tuning & Monitoring ACPI Device scope (this includes TSDD and VSDD devices as well). The unit of the current fan speed returned must be rotations per minute (RPM). E.g., if the speed is 2500 RPM, then the value returned must be 2500. The value of the reserved field is 0000h. Table 20: FSDD Package Parameter Definitions
CurrentValue Reserved
3.1.6.4
Sensor Data Sampling Period (SDSP) This optional object evaluates to an integer to specify the sampling period to evaluate TSDD, VSDD and FSDD methods that would guarantee fresh data for temperature, voltage and fan speed values. The unit of sampling is in 10ths of seconds. For example, in a platform that has one temperature sensor, one voltage sensor and one fan speed sensor, if hardware implementation takes 100 ms (0.1 s), 200 ms (0.2 s) and 500 ms (0.5 s) to fetch temperature, voltage and fan speed values, then the SDSP must return 5. When this method is present, the OS/application level software should honor the value returned by this object. The OS/Application level software can evaluate the TSDD, VSDD and FSDD objects at a sampling rate of the period specified by this object or above. Syntax for Signature Method(SDSP, 0, NotSerialized, 0, IntObject) Description The purpose of this method is to get the recommended sampling period for the platform temperatures, voltages, and fans. Arguments No input parameters. Result Name(RETV, SamplingPeriod) Result Parameter Definitions
Field Name Definition
SamplingPeriod
Indicates the minimum sampling period that the application can use and expect to receive updated information from the platform for the TSDD, FSDD, and VSDD methods. Table 21: SDSP Result Parameter Definitions
Intel Confidential
21
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
AllocateMemory(EfiACPIMemoryNVS, sizeof(CONTROLID_BUFF), &CtlBuf); CtlBuf->CtrlID[0].ControlId CtlBuf->CtrlID[0].NumberOfValues CtlBuf->CtrlID[0].Precision CtlBuf->CtrlID[0].Flags CtlBuf->CtrlID[0].DefaultDataValue CtlBuf->CtrlID[0].MinDataValue CtlBuf->CtrlID[0].MaxDataValue CtlBuf->CtrlID[0].MinDisplayValue CtlBuf->CtrlID[0].MaxDisplayValue CtlBuf->CtrlID[1].ControlId CtlBuf->CtrlID[1].NumberOfValues CtlBuf->CtrlID[1].Precision CtlBuf->CtrlID[1].Flags CtlBuf->CtrlID[1].DefaultDataValue Intel Confidential 22 = = = = = = = = = = = = = = 0x00; MaxNonTurboRatio - MaxEffRatio+1; 0x00; 0x00; FlexRatioOverrideDefault; MaxEfficiencyRatio; MaxNonTurboRatio; MaxEfficiencyRatio; MaxNonTurboRatio; BIOS_DEVICE_HOST_CLK_FREQ; BclkMaxValue BclkMinValue + 1; 0x02; 0x00; 10000; Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
CtlBuf->CtrlID[1].MinDataValue CtlBuf->CtrlID[1].MaxDataValue CtlBuf->CtrlID[1].MinDisplayValue CtlBuf->CtrlID[1].MaxDisplayValue CtlBuf->CtrlID[3].ControlId CtlBuf->CtrlID[3].NumberOfValues CtlBuf->CtrlID[3].Precision CtlBuf->CtrlID[3].Flags CtlBuf->CtrlID[3].DefaultDataValue CtlBuf->CtrlID[3].MinDataValue CtlBuf->CtrlID[3].MaxDataValue CtlBuf->CtrlID[3].MinDisplayValue CtlBuf->CtrlID[3].MaxDisplayValue CtlBuf->CtrlID[4].ControlId CtlBuf->CtrlID[4].NumberOfValues CtlBuf->CtrlID[4].Precision CtlBuf->CtrlID[4].Flags CtlBuf->CtrlID[4].DefaultDataValue CtlBuf->CtrlID[4].MinDataValue CtlBuf->CtrlID[4].MaxDataValue CtlBuf->CtrlID[4].MinDisplayValue CtlBuf->CtrlID[4].MaxDisplayValue
= = = = = = = = = = = = = = = = = = = = = =
BclkMinValue; BclkMaxValue; BclkMinValue; BclkMaxValue; BIOS_DEVICE_tCL; tCL_MAX - tCL_MIN +1; 0x00; MIN_SETTING_LOW_PERFORMANCE; tCLDefault; tCL_MIN; tCL_MAX; tCL_MIN; tCL_MAX; BIOS_DEVICE_tRCD; tRCD_MAX - tRCD_MIN + 1; 0x0; MIN_SETTING_LOW_PERFORMANCE; tRCDDefault; tRCD_MIN; tRCD_MAX; tRCD_MIN; tRCD_MAX;
= = = = = = = = =
BIOS_DEVICE_tRP; tRP_MAX - tRP_MIN + 1; 0x00; MIN_SETTING_LOW_PERFORMANCE; tRPDefault; tRP_MIN; tRP_MAX; tRP_MIN; tRP_MAX;
The example below illustrates a sample implementation of the Performance Tuning & Monitoring ACPI device in ASL. // // Define the XTU Device as a dynamically loadable SSDT or within the // DSDT under the \_SB scope // Scope (\_SB) { // First declare external variables for items that need to be Intel Confidential 23 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
// fixed up during POST // The XTUB structure should point at the CtlBuf which was // allocated and populated during POST (see previous C-struct // example). External(XTUB) OperationRegion (XNVS, SystemMemory, XTUB, 0x2000) Field (XNVS, ByteAcc, NoLock, Preserve) { XBUF, 0x16c0 // GACI Size specific to implementation } // Note: When declaring the device, any name unique to the // platform implementation can be used (i.e. PTMD as below) Device(PTMD) { Name(_HID, EISAID("INT3394")) Name(_CID, EISAID("PNP0C02")) Name(IVER, 0x00010000) Name(GSCV, 0x10000) Method(GACI, 0x0, NotSerialized, 0, { Name(RPKG, Package(0x2){}) Store(0x00,Index(RPKG, 0)) Store(XBUF, Index(RPKG, 1)) Return(RPKG) } Method(GDSV, 0x1, Serialized) { // The next line represents checking for specifically // supported ControlIDs. Typically this would be a // Case or If/ElseIf statement if multiple ControlIDs // were supported. The default condition should be // an error code where the assumption is that // Discrete values are not supported (or necessary) // for the requested ControlID. If(LEqual(Arg0, 0x07)) { Return(Package(0x2) { Zero, //Error Code Buffer() { 0x07,Zero,Zero,Zero,//Data Value 1 0x07,Zero,Zero,Zero,//Display Value 1 0x09,Zero,Zero,Zero,//Data Value 2 0x09,Zero,Zero,Zero //Display Value 2 Intel Confidential 24 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011 PkgObj) // Return package // ErrorCode // buffer
0x0e,Zero,Zero,Zero,//Data Value 3 0x0e,Zero,Zero,Zero //Display Value 3 } }) } Return(Package(0x1) { 0x01 //Error code for continuous settings }) } // This method is the Control Device Read // Arguments by number: // 0 - Method Name // 1 - Number of CDRD input parameters // 2 - Mutex Requirements (See the ACPI Spec) // 3 - SyncLevel (See the ACPI Spec) // 4 - Return Type // 5 - List of Input Types (1 Integer) Method(CDRD, 1, Serialized, 0, PkgObj, IntObj) { Return(Package(0x2) { Zero, //Error Code Zero //Current Value }) } // This method is the Control Device Write // Arguments by number: // 0 - Method Name // 1 - Number of CDWR input parameters // 2 - Mutex Requirements (See the ACPI Spec) // 3 - SyncLevel (See the ACPI Spec) // 4 - Return Type // 5 - List of Input Types (2 Integers) Method(CDWR, 0x2, Serialized, 0, IntObj, {IntObj, IntObj}) { Return(Zero) //Error Code } Name(TMPV, Package() { //UsageId //UniqueId 0x01, 0x0002, 0x03 0x0003, 0x06 0x0004, }) Name(VLTV, Package() { Intel Confidential 25 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
//Value 0, 0, 0,
//Reserved 0, 0, 0
//Value 0, 0, 0, 0,
//Reserved 0 0 0 0
Name(RPMV, Package() { //UsageId //UniqueId 0x01, 0x0009, 0x04 0x000A, 0x0C 0x000B, }) Method(TSDD) { Name(TMPC, 0)
//Value 0, 0, 0,
//Reserved 0 0 0
// Implement temperature determination code here // E.g. If embedded controller firmware implements a // command to fetch various temperature values, // implement code to issue the command. Populate the // TMPV package with the right temperature values // Update CurrentValue1 in TMPV package with // the current Temperature Store(TMPC, Index(TMPV, 2)) // Update CurrentValue2 in TMPV package with // the current Temperature Store(TMPC, Index(TMPV, 6)) Return(TMPV) } Method(VSDD) { Name(VLTC, 0)
// Implement voltage determination code here // E.g. If embedded controller firmware implements a // command to fetch various voltage values, implement // code to issue the command. Populate the LVTV // package with the right voltage values // Update CurrentValue1 in VLTV package with // the current Voltage Store(VLTC, Index(VLTV, 2)) // Update CurrentValue2 in VLTV package with Intel Confidential 26 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
// Implement Fan speed RPM determination code here // E.g. If embedded controller firmware implements a // command to fetch various RPM values, implement // code to issue the command. Populate the RPMV // package with the current fan speed // Update CurrentValue1 in RPMV package with // the current Fan Speed Store(RPMC, Index(RPMV, 2)) // Update CurrentValue2 in RPMV package with // the current Fan Speed Store(RPMC, Index(RPMV, 6)) Return(RPMV) } Method(SDSP) { // Fastest sampling period supported // Expressed in tenths of a second Return(10) } } // End of PTMD Device }
3.2
Watchdog Timer
The only watchdog timer (WDT) implementation that is supported by this revision of XTU is the WDT that is integrated into the PCH. In order to support the PCH-based Watchdog Timer which is present on Cougar Pointbased platforms and newer, XTU BIOS support for the timer requires integration of the chipset reference code. This documentation is provided separately from the XTU BIOS Interface Specification and is available from your technical BIOS support contact at Intel. Aside from the integration of the reference code, no XTU-specific BIOS support code is necessary.
Intel Confidential
27
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
3.3
3.3.1 Overview
The main purpose of the SW SMI Real-Time Communications Interface is to read and write BIOS settings. This interface uses values that are obtained via data retrieved from the GET AVAILABLE CONTROLS (GACI) method described earlier in the document. These functions can be accessed in the Operating System via writes of the SW SMI Command Value to the SW SMI Port with the appropriate register settings which are described below.
Signature Length Major Revision Minor Revision BIOS Setting Count BIOS Setting Entry Array
Offset
Name
Length
Value
00h 04h
DWORD DWORD
Varies Varies
Intel Confidential
28
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
3.3.3 Functions
3.3.3.1 Read BIOS Settings This function reads the value for all BIOS settings that are present on the interface and places them into a memory location pointed to by the caller. As stated in the overview, in order to access this function, XTU will write the SW SMI Command Value to the SW SMI Port. Prior to this the registers must be setup as described in the command data section. The BIOS Settings Data Structure on a read must contain a list of all values supported by the platform. Command Data: Note: BIOS must be able to address up to 4GB of physical memory from SMM to support this function. Use the data structure defined in Table 22: BIOS Settings Data Structure.
Register Value Definition
ECX EBX
00h Varies
Read BIOS Settings Command 32-bit Physical Memory Data Location of the location to be used for the returned BIOS Settings Data Structure (See Table 22)
Table 24: Read BIOS Settings Command, Register Setup 3.3.3.2 Write BIOS Settings This function writes all BIOS settings that are present on the interface based on the data contained in a memory location pointed to by the caller. As stated in the overview, in order to access this function, XTU will write the SW SMI Command Value to the SW SMI Port. Prior to the SMI invocation the registers must be setup as described in the command data section. The BIOS Settings Data Structure on a write command will only contain a list of values changed since the previous write. Command Data: Note: BIOS must be able to address up to 4GB of physical memory from SMM to support this function. Use the data structure defined in Table 22: BIOS Settings Data Structure.
Register Value Definition
ECX EBX
01h Varies
Write BIOS Settings Command 32-bit Physical Memory Data Location of the location to be used for the BIOS Settings Data Structure (See Table 22) to be written.
Intel Confidential
29
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
3.3.4.1
Error Codes These codes define the return values that indicate a critical failure occurred during the SMI call. For all critical error conditions the high bit of the DWORD will be set. NOTE: For all Error Codes considered critical errors the high bit of the DWORD returned must be set.
Value 0x00 0x8001 0x8002 0x8003 0x8004 0x8006 0xFFFF Successful Invalid Signature supplied by caller
Definition
Table length is too small, valid header data returned Table length is too small, no header data returned Unknown Command in ECX Invalid SMI revision Internal BIOS error - used for BIOS errors that cannot be generically classified. Use ECX to return a value that will aid in debugging/explaining this return value in more detail. Any data contained in ECX when this code is returned is a BIOS specific value and is not defined by this specification. Table 26: BIOS Settings Command Error Codes
3.3.4.2
Warning Codes These codes define the return values that indicate some issue occurred with the call but the data was able to be returned. Each warning may indicate that a subset of the full data set was returned.
Definition Table length is too large (non-critical error). A complete data set of the supported table will be returned. Internal BIOS warning - used for BIOS warnings that cannot be generically classified. Use ECX to return a value that will aid in debugging/explaining this return value in more detail. Any data contained in ECX when this code is returned is a BIOS specific value and is not defined by this specification. Table 27: BIOS Settings Command Warning Codes
Intel Confidential
30
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Appendix A - Enumerations
The following tables represent all of the Control IDs supported by the XTU application. The first table has the Control IDs organized by subsystem for easy ability to find the appropriate devices. A separate table follows which lists all Control IDs numerically (TABLE 29: NUMERICALLY SORTED CONTROL ID ENUMERATIONS).
Processor
00h 1Ah 1Dh 1Eh 1Fh 20h 2Ah 2Bh 29h 2Eh 2Fh 30h 43h 42h 31h 32h 33h 34h 35h 36h 37h 38h 39h 3Ah 3Bh
Max Non-Turbo Processor Multiplier (also known as Flex Ratio) Turbo Mode Enable 1-Active Core Ratio Limit 2-Active Core Ratio Limit 3-Active Core Ratio Limit 4-Active Core Ratio Limit 5-Active Core Ratio Limit 6-Active Core Ratio Limit Enhanced Intel Speedstep Technology Enable Additional Turbo Mode CPU Voltage Short Window Package Total Design Power Limit Extended Window Package Total Design Power Limit Short Window Time (Sandy Bridge-E only) Extended Window Time Short Window Package Total Design Power Enable Package Total Design Power Lock Enable IA Core Total Design Power Limit IA Core Total Design Power Enable IA Core Total Design Power Lock Enable Internal Graphics Core Total Design Power Limit Internal Graphics Core Total Design Power Enable Internal Graphics Core Total Design Power Lock Enable IA Core Current Maximum Internal Graphics Core Current Maximum Graphics Turbo Ratio Limit 31
Numeric En/Dis Numeric Numeric Numeric Numeric Numeric Numeric En/Dis Numeric Numeric Numeric Numeric Numeric En/Dis En/Dis Numeric En/Dis En/Dis Numeric En/Dis En/Dis Numeric Numeric Numeric
None None None None None None None None None mV Watts Watts Seconds Seconds None None Watts None None Watts None None Amps Amps None
Intel Confidential
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
3Ch 3Fh 41h 46h 47h 48h Clocking 01h 45h Voltage 02h 22h 05h 44h 25h 26h 2Eh 3Ch 3Dh 3Eh 46h Memory 13h 07h 08h 09h 0Ah 0Bh 15h 16h 17h 18h 19h 27h 28h Intel Confidential
Additional Turbo Mode Graphics Core Voltage Runtime Turbo Override Internal PLL Overvoltage Enable Vboot Voltage (Sandy Bridge-E Only) Runtime Turbo Override Enable (Sandy Bridge-E Only) Configurable TDP (Ivy Bridge Only) Reference Clock Frequency Reference Clock Ratio (Sandy Bridge-E Only) CPU Voltage Override Dynamic CPU Voltage Offset Memory Voltage Secondary Memory VR Voltage (Sandy Bridge-E Only) System Agent Voltage PCH Voltage Additional Turbo Mode CPU Voltage Additional Turbo Mode Graphics Core Voltage CPU PLL Voltage CPU IO Voltage Vboot Voltage (Sandy Bridge-E Only) DDR Multiplier CAS Latency (tCL) Row Address to Column Address Delay (tRCD) Row Precharge Time (tRP) Row Active Time (tRAS) Write Recovery Time (tWR) Minimum Refresh Recovery Time (tRFC) Row Active to Row Active delay (tRRD) Internal Write to Read Command Delay (tWTR) System Command Rate Mode Read to Precharge delay (tRTP) Row Cycle Time (tRC) Four Active Window Delay (tFAW) 32
Numeric Numeric En/Dis Numeric En/Dis Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Numeric Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
mV None None Volts None Watts MHz None Volts mV Volts Volts Volts Volts mV mV Volts Volts Volts None Clocks Clocks Clocks Clocks Clocks Clocks Clocks Clocks None Clocks Clocks Clocks
Average Periodic Refresh Interval (tREFI) Minimum CAS Write Latency Time (tCWL) XMP Profile Selection Enumeration Definition: 0 Default SPD Profile 1 Custom Timing Profile 2 XMP Profile 1 3 XMP Profile 2
Numeric Numeric
Clocks Clocks
Enum
Profile
49h
Numeric
None
00h 01h 02h 05h 07h 08h 09h 0Ah 0Bh 0Dh 0Eh 13h 15h 16h 17h 18h 19h 1Ah 1Dh 1Eh 1Fh Intel Confidential
Max Non-Turbo Processor Multiplier (also known as Flex Ratio) Reference Clock Frequency CPU Voltage Override Memory Voltage CAS Latency (tCL) Row Address to Column Address Delay (tRCD) Row Precharge Time (tRP) Row Active Time (tRAS) Write Recovery Time (tWR) PCI Express Frequency PCI Frequency DDR Multiplier Minimum Refresh Recovery Time (tRFC) Row Active to Row Active delay (tRRD) Internal Write to Read Command Delay (tWTR) System Command Rate Mode Read to Precharge delay (tRTP) Turbo Boost Technology Enable 1-Active Core Ratio Limit 2-Active Core Ratio Limit 3-Active Core Ratio Limit 33 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Control IDs
Definition
20h 22h 25h 26h 27h 28h 29h 2Ah 2Bh 2Ch 2Dh 2Eh 2Fh 30h 31h 32h 33h 34h 35h 36h 37h 38h 39h 3Ah 3Bh 3Ch 3Dh 3Eh 3Fh 40h 41h Intel Confidential
4-Active Core Ratio Limit CPU Voltage Offset System Agent Voltage PCH Voltage Row Cycle Time (tRC) Four Active Window Delay (tFAW) Enhanced Intel Speedstep Technology Enable/Disable 5-Active Core Ratio Limit 6-Active Core Ratio Limit Average Periodic Refresh Interval (tREFI) Minimum CAS Write Latency Time (tCWL) Max Turbo Mode CPU Voltage Short Window Package Total Design Power Limit Extended Window Package Total Design Power Limit Short Window Package Total Design Power Enable Package Total Design Power Lock Enable IA Core Total Design Power Limit IA Core Total Design Power Enable IA Core Total Design Power Lock Enable Internal Graphics Core Total Design Power Limit Internal Graphics Core Total Design Power Enable Internal Graphics Core Total Design Power Lock Enable IA Core Current Maximum Internal Graphics Core Current Maximum Graphics Turbo Ratio Limit Graphics Core Voltage CPU PLL Voltage CPU IO Voltage Runtime Turbo Override XMP Profile Selection Internal PLL Overvoltage Enable 34 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Control IDs
Definition
Extended Time Window Short Time Window (Sandy Bridge-E only) Secondary Memory VR Voltage (Sandy Bridge-E only) Reference Clock Ratio (Sandy Bridge-E only) Vboot Voltage (Sandy Bridge-E Only) Runtime Turbo Override Enable (Sandy Bridge-E Only) Configurable TDP (Ivy Bridge Only) Memory Clock Multiplier (Ivy Bridge Only)
00h 01h 02h 05h 06h 07h 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h 14h 15h Intel Confidential
Unknown CPU Core CPU Die Voltage Regulator (VR) DIMM Motherboard Ambient System Ambient CPU Inlet System Inlet System Outlet Power Supply Power Supply Inlet Power Supply Outlet Hard Drive Graphics Processor Unit (GPU) Laptop Skin Optical Disk Drive PCMCIA slot PCH Battery 35 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Dh 0Fh 10h 11h 12h 13h 14h 15h 16h
Unknown +12 Volt -12 Volt +5 Volt +5 Volt Backup -5 Volt 3.3 Volt 2.5 Volt 1.5 Volt CPU Voltage Power Supply Inlet +3.3 Volt Standby CPU System Agent Voltage 1.8 Volt PCH Voltage DDR Voltage Battery CPU IO Voltage CPU PLL Voltage
00h 01h 02h 04h 05h 06h 07h 08h Intel Confidential
Unknown/Other Usage CPU CPU System Voltage Regulator Chassis Chassis Inlet Chassis Outlet Power Supply 36 Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011
Enumeration
Definition
Power Supply Inlet Power Supply Outlet Hard Disk Graphics Auxiliary PCH Battery Unused
Intel Confidential
37
Intel Extreme Tuning Utility BIOS Interface Specification Rev. 0.82 - July 1, 2011