305 lines
8.0 KiB
C
305 lines
8.0 KiB
C
/** @file
|
|
Overclocking tolopolgy for specific generation. header file
|
|
|
|
@copyright
|
|
INTEL CONFIDENTIAL
|
|
Copyright 2020 - 2021 Intel Corporation.
|
|
|
|
The source code contained or described herein and all documents related to the
|
|
source code ("Material") are owned by Intel Corporation or its suppliers or
|
|
licensors. Title to the Material remains with Intel Corporation or its suppliers
|
|
and licensors. The Material may contain trade secrets and proprietary and
|
|
confidential information of Intel Corporation and its suppliers and licensors,
|
|
and is protected by worldwide copyright and trade secret laws and treaty
|
|
provisions. No part of the Material may be used, copied, reproduced, modified,
|
|
published, uploaded, posted, transmitted, distributed, or disclosed in any way
|
|
without Intel's prior express written permission.
|
|
|
|
No license under any patent, copyright, trade secret or other intellectual
|
|
property right is granted to or conferred upon you by disclosure or delivery
|
|
of the Materials, either expressly, by implication, inducement, estoppel or
|
|
otherwise. Any license under such intellectual property rights must be
|
|
express and approved by Intel in writing.
|
|
|
|
Unless otherwise agreed by Intel in writing, you may not remove or alter
|
|
this notice or any other notice embedded in Materials by Intel or
|
|
Intel's suppliers or licensors in any way.
|
|
|
|
This file contains an 'Intel Peripheral Driver' and is uniquely identified as
|
|
"Intel Reference Module" and is licensed for Intel CPUs and chipsets under
|
|
the terms of your license agreement with Intel or your vendor. This file may
|
|
be modified by the user, subject to additional terms of the license agreement.
|
|
|
|
@par Specification Reference:
|
|
**/
|
|
#ifndef _BASE_OC_FRU_LIB_H_
|
|
#define _BASE_OC_FRU_LIB_H_
|
|
|
|
/**
|
|
This function return whether AVX2 and AVX512 voltage Guard Band supported.
|
|
|
|
@retval TRUE - AVX voltage Guard Band supported.
|
|
@retval FALSE - AVX voltage Guard Band unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsAvxVoltageGuardBandSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether Per Core HyperThread Disable supported.
|
|
|
|
@retval TRUE - Per Core HyperThread Disable supported.
|
|
@retval FALSE - Per Core HyperThread Disable unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsPerCoreHtDisableSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether L2Atom VF overrides supported.
|
|
|
|
@retval TRUE - L2Atom VF overrides supported.
|
|
@retval FALSE - L2Atom VF overrides unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsAtomL2OcSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return PerCore HT Disable Command.
|
|
|
|
@param[out] ReadCommand PerCore HT Disable Read Command
|
|
@param[out] WriteCommand PerCore HT Disable Write Command
|
|
**/
|
|
VOID
|
|
OcGetPerCoreHtDisableCmd (
|
|
OUT PCODE_MAILBOX_INTERFACE *ReadCommand,
|
|
OUT PCODE_MAILBOX_INTERFACE *WriteCommand
|
|
);
|
|
|
|
/**
|
|
This function return TjMax Offset Command.
|
|
|
|
@param[out] ReadCommand TjMax Offset Read Command
|
|
@param[out] WriteCommand TjMax Offset Write Command
|
|
**/
|
|
VOID
|
|
OcGetTjMaxOffsetCmd (
|
|
OUT PCODE_MAILBOX_INTERFACE *ReadCommand,
|
|
OUT PCODE_MAILBOX_INTERFACE *WriteCommand
|
|
);
|
|
|
|
/**
|
|
This function return Realtime Memory Timing Enable/Disable Command
|
|
|
|
@param[out] ReadCommand Realtime Memory Timing Read Command
|
|
@param[out] WriteCommand Realtime Memory Timing Write Command
|
|
**/
|
|
VOID
|
|
OcGetRealtimeMemoryTimingCmd (
|
|
OUT PCODE_MAILBOX_INTERFACE *ReadCommand,
|
|
OUT PCODE_MAILBOX_INTERFACE *WriteCommand
|
|
);
|
|
|
|
/**
|
|
This function return whether CPU BCLK OC Freq. supported.
|
|
|
|
@retval TRUE - CPU BCLK OC Freq. supported
|
|
@retval FALSE - CPU BCLK OC Freq. unsupported
|
|
**/
|
|
BOOLEAN
|
|
IsCpuBclkOcFreqSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether SOC BCLK OC Freq. supported.
|
|
|
|
@retval TRUE - SOC BCLK OC Freq. supported
|
|
@retval FALSE - SOC BCLK OC Freq. unsupported
|
|
**/
|
|
BOOLEAN
|
|
IsSocBclkOcFreqSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return CPU BCLK Freq. mailbox command.
|
|
|
|
@param[out] ReadCommand CPU BCLK Freq. Read Command
|
|
@param[out] WriteCommand CPU BCLK Freq. Write Command
|
|
**/
|
|
VOID
|
|
OcGetCpuBclkFreqCmd (
|
|
OUT OC_MAILBOX_INTERFACE *ReadCommand,
|
|
OUT OC_MAILBOX_INTERFACE *WriteCommand
|
|
);
|
|
|
|
/**
|
|
This function return whether Core Ratio Extension mode is supported.
|
|
|
|
@retval TRUE - Core Ratio Extension mode supported.
|
|
@retval FALSE - Core Ratio Extension mode unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsCoreRatioExtModeSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether PVD Ratio Threshold Override is supported.
|
|
|
|
@retval TRUE - PVD Ratio Threshold Override supported.
|
|
@retval FALSE - PVD Ratio Threshold Override unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsPvdRatioThresholdSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether PVD Mode selection is supported.
|
|
|
|
@retval TRUE - PVD Ratio Mode supported.
|
|
@retval FALSE - PVD Ratio Mode unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsPvdModeSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether FLL Overclock mode is supported.
|
|
|
|
@retval TRUE - FLL Overclock supported.
|
|
@retval FALSE - FLL Overclock unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsFllOverclockSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether CEP (Current Excursion Protection) configuration supported or not.
|
|
|
|
@retval TRUE - CEP (Current Excursion Protection) configuration supported.
|
|
@retval FALSE - CEP (Current Excursion Protection) configuration unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsOcCepConfigSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return CEP (Current Excursion Protection) configuration data
|
|
to control it's enable or disable.
|
|
|
|
@param[in] IaCepDisable Disable IA CEP.
|
|
@param[in] GtCepDisable Disable GT CEP.
|
|
@param[in] SaCepDisable Disable SA CEP.
|
|
@param[out] ConfigData CEP Config data.
|
|
**/
|
|
VOID
|
|
OcGetCepConfigData (
|
|
IN BOOLEAN IaCepDisable,
|
|
IN BOOLEAN GtCepDisable,
|
|
IN BOOLEAN SaCepDisable,
|
|
OUT UINT32 *ConfigData
|
|
);
|
|
|
|
/**
|
|
This function return whether SIRP (SoC Iccmax Reactive Protector) configuration supported or not.
|
|
|
|
@retval TRUE - SIRP (SoC Iccmax Reactive Protector) configuration supported.
|
|
@retval FALSE - SIRP (SoC Iccmax Reactive Protector) configuration unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsOcSirpConfigSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return SIRP (SoC Iccmax Reactive Protector) configuration data
|
|
to control it's enable or disable.
|
|
|
|
@param[in] IaSirpDisable Disable IA SIRP.
|
|
@param[out] ConfigData SIRP Config data.
|
|
**/
|
|
VOID
|
|
OcGetSirpConfigData (
|
|
IN BOOLEAN IaSirpDisable,
|
|
OUT UINT32 *ConfigData
|
|
);
|
|
|
|
/**
|
|
This function return whether ITD (Inverse Temperature Dependency) Throttle configuration supported or not.
|
|
|
|
@retval TRUE - ITD (Inverse Temperature Dependency) Throttle configuration supported.
|
|
@retval FALSE - ITD (Inverse Temperature Dependency) Throttle configuration unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsOcItdThrottleConfigSupport (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return ITD (Inverse Temperature Dependency) Throttle configuration data
|
|
to control it's enable or disable.
|
|
|
|
@param[in] ItdThrottleDisable Disable ITD Throttle.
|
|
@param[out] ConfigData ITD Throttle Config data.
|
|
**/
|
|
VOID
|
|
OcGetItdThrottleConfigData (
|
|
IN BOOLEAN ItdThrottleDisable,
|
|
OUT UINT32 *ConfigData
|
|
);
|
|
|
|
/**
|
|
This function return whether Sa Pll Frequency Override is supported.
|
|
|
|
@retval TRUE - Sa Pll Frequency Override supported.
|
|
@retval FALSE - Sa Pll Frequency Override unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsSaPllFreqOverrideSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether TSC HW Fixup disable is supported.
|
|
|
|
@retval TRUE - TSC HW Fixup disable supported.
|
|
@retval FALSE - TSC HW Fixup disable unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsCoreHwFixupDisableSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether ICCMAX override supported.
|
|
|
|
@retval TRUE - ICCMAX override supported.
|
|
@retval FALSE - ICCMAX override unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsIccMaxOcOverrideSupported (
|
|
VOID
|
|
);
|
|
|
|
/**
|
|
This function return whether OCMB TVB Config Command for Temperature Thresholds and Down bins is supported.
|
|
|
|
@retval TRUE - TVB Config Temperature and Down bins is supported.
|
|
@retval FALSE - TVB Config Temperature and Down bins is unsupported.
|
|
**/
|
|
BOOLEAN
|
|
IsTvbDownBinsTempThresholdSupported (
|
|
VOID
|
|
);
|
|
#endif // _BASE_OC_FRU_LIB_H_
|