/** @file Copyright (c) 2019 Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ // // Define CPU NVS Area operation region. // #ifndef _CPU_NVS_AREA_DEF_H_ #define _CPU_NVS_AREA_DEF_H_ #pragma pack (push,1) typedef struct { UINT8 Revision; ///< Offset 0 CPU GlobalNvs Revision UINT32 PpmFlags; ///< Offset 1 PPM Flags Values UINT8 Reserved0[1]; ///< Offset 5:5 UINT8 AutoCriticalTripPoint; ///< Offset 6 Auto Critical Trip Point UINT8 AutoPassiveTripPoint; ///< Offset 7 Auto Passive Trip Point UINT8 AutoActiveTripPoint; ///< Offset 8 Auto Active Trip Point UINT32 Cpuid; ///< Offset 9 CPUID UINT8 ConfigurablePpc; ///< Offset 13 Boot Mode vlues for _PPC UINT8 CtdpLevelsSupported; ///< Offset 14 ConfigTdp Number Of Levels UINT8 ConfigTdpBootModeIndex; ///< Offset 15 CTDP Boot Mode Index UINT16 CtdpPowerLimit1[3]; ///< Offset 16 CTDP Level 0 Power Limit1 ///< Offset 18 CTDP Level 1 Power Limit1 ///< Offset 20 CTDP Level 2 Power Limit1 UINT16 CtdpPowerLimit2[3]; ///< Offset 22 CTDP Level 0 Power Limit2 ///< Offset 24 CTDP Level 1 Power Limit2 ///< Offset 26 CTDP Level 2 Power Limit2 UINT8 CtdpPowerLimitWindow[3]; ///< Offset 28 CTDP Level 0 Power Limit1 Time Window ///< Offset 29 CTDP Level 1 Power Limit1 Time Window ///< Offset 30 CTDP Level 2 Power Limit1 Time Window UINT8 CtdpCtc[3]; ///< Offset 31 CTDP Level 0 CTC ///< Offset 32 CTDP Level 1 CTC ///< Offset 33 CTDP Level 2 CTC UINT8 CtdpTar[3]; ///< Offset 34 CTDP Level 0 TAR ///< Offset 35 CTDP Level 1 TAR ///< Offset 36 CTDP Level 2 TAR UINT8 CtdpPpc[3]; ///< Offset 37 CTDP Level 0 PPC ///< Offset 38 CTDP Level 1 PPC ///< Offset 39 CTDP Level 2 PPC UINT8 Reserved1[1]; ///< Offset 40:40 UINT8 C6MwaitValue; ///< Offset 41 Mwait Hint value for C6 UINT8 C7MwaitValue; ///< Offset 42 Mwait Hint value for C7/C7s UINT8 CDMwaitValue; ///< Offset 43 Mwait Hint value for C7/C8/C9/C10 UINT8 Reserved2[2]; ///< Offset 44:45 UINT16 C6Latency; ///< Offset 46 Latency Value for C6 UINT16 C7Latency; ///< Offset 48 Latency Value for C7/C7S UINT16 CDLatency; ///< Offset 50 Latency Value for C8/C9/C10 UINT16 CDIOLevel; ///< Offset 52 IO LVL value for C8/C9/C10 UINT16 CDPowerValue; ///< Offset 54 Power value for C8/C9/C10 UINT8 MiscPowerManagementFlags; ///< Offset 56 MiscPowerManagementFlags UINT8 EnableDigitalThermalSensor; ///< Offset 57 Digital Thermal Sensor Enable UINT8 BspDigitalThermalSensorTemperature; ///< Offset 58 Digital Thermal Sensor 1 Readingn for BSP UINT8 ApDigitalThermalSensorTemperature; ///< Offset 59 Digital Thermal Sensor 2 Reading for AP1 UINT8 DigitalThermalSensorSmiFunction; ///< Offset 60 DTS SMI Function Call via DTS IO Trap UINT8 PackageDTSTemperature; ///< Offset 61 Package Temperature UINT8 IsPackageTempMSRAvailable; ///< Offset 62 Package Temperature MSR available UINT8 Ap2DigitalThermalSensorTemperature; ///< Offset 63 Digital Thermal Sensor 3 Reading for AP2 UINT8 Ap3DigitalThermalSensorTemperature; ///< Offset 64 Digital Thermal Sensor 4 Reading for AP3 UINT64 BiosGuardMemAddress; ///< Offset 65 BIOS Guard Memory Address for Tool Interface UINT8 BiosGuardMemSize; ///< Offset 73 BIOS Guard Memory Size for Tool Interface UINT16 BiosGuardIoTrapAddress; ///< Offset 74 BIOS Guard IoTrap Address for Tool Interface UINT16 BiosGuardIoTrapLength; ///< Offset 76 BIOS Guard IoTrap Length for Tool Interface UINT16 DtsIoTrapAddress; ///< Offset 78 DTS IO trap Address UINT8 DtsIoTrapLength; ///< Offset 80 DTS IO trap Length UINT8 DtsAcpiEnable; ///< Offset 81 DTS is in ACPI Mode Enabled UINT8 SgxStatus; ///< Offset 82 SGX Status UINT64 EpcBaseAddress; ///< Offset 83 EPC Base Address UINT64 EpcLength; ///< Offset 91 EPC Length UINT8 HwpVersion; ///< Offset 99 HWP Version UINT8 HwpInterruptStatus; ///< Offset 100 HWP Interrupt Status UINT8 DtsInterruptStatus; ///< Offset 101 DTS Interrupt Status UINT8 HwpSmi; ///< Offset 102 SMI to setup HWP LVT tables UINT8 LowestMaxPerf; ///< Offset 103 Max ratio of the slowest core. UINT8 EnableItbm; ///< Offset 104 Enable/Disable Intel Turbo Boost Max Technology 3.0. UINT8 EnableItbmDriver; ///< Offset 105 Enable/Disable Intel Turbo Boost Max Technology 3.0 Driver. UINT8 ItbmInterruptStatus; ///< Offset 106 Intel Turbo Boost Max Technology 3.0 interrupt status. UINT8 ItbmSmi; ///< Offset 107 SMI to resume periodic SMM for Intel Turbo Boost Max Technology 3.0. UINT8 OcBins; ///< Offset 108 Indicates bins of Oc support. MSR 194h FLEX_RATIO Bits (19:17) UINT8 C3MwaitValue; ///< Offset 109 Mwait Hint value for C3 (CFL only) UINT16 C3Latency; ///< Offset 110 Latency Value for C3 (CFL only) } CPU_NVS_AREA; #pragma pack(pop) #endif