/** @file Internal header file for PCH DMI library for SIP15 Copyright (c) 2019 Intel Corporation. All rights reserved.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #ifndef __PCH_DMI_15_H__ #define __PCH_DMI_15_H__ #include #include /** This function checks if DMI SIP15 Secured Register Lock (SRL) is set @retval SRL state **/ BOOLEAN IsPchDmi15Locked ( VOID ); /** Set DMI thermal throttling to recommended configuration. It's intended only for P-DMI SIP15. **/ VOID PchDmi15SetRecommendedThermalThrottling ( VOID ); /** Set DMI thermal throttling to custom configuration. This function will configure Thermal Sensor 0/1/2/3 TargetWidth and set DMI Thermal Sensor Autonomous Width Enable. It's intended only for P-DMI SIP15. @param[in] DmiThermalThrottling DMI Thermal Throttling structure. **/ VOID PchDmi15SetCustomThermalThrottling ( IN DMI_THERMAL_THROTTLING DmiThermalThrottling ); /** Enable PCIe Relaxed Order for DMI SIP15 **/ VOID PchDmi15EnablePcieRelaxedOrder ( VOID ); /** This function will switch SAI value to be driven to IOSF Primary Fabric for cycles with Core BDF from HOSTIA_BOOT_SAI to HOSTIA_POSTBOOT_SAI. To be used when PCH is paired with CFL CPU. **/ VOID PchDmi15EnablePostBootSai ( VOID ); /** This function will do necessary configuration after platform should have switched to POSTBOOT_SAI. It needs to be called even if POSTBOOT_SAI was not set. **/ VOID PchDmi15ConfigAfterPostBootSai ( VOID ); /** Secure Register Lock data @param[out] SrlRegOffset Register offset holding Secure Register Lock setting @param[out] SrlRegMask Mask for Secure Register Lock setting **/ VOID PchDmi15SrlRegData ( OUT UINT16 *SrlRegOffset, OUT UINT32 *SrlRegMask ); /** Get PCH DMI SIP15 Virtual Channel Control and Status registers @param[in] Vc The virtual channel number for programing @param[out] DmiVcCtlAddress DMI Virtual Channel Control register address @param[out] DmiVcStsAddress DMI Virtual Channel Status register address **/ VOID PchDmi15VcRegs ( IN PCH_DMI_VC_TYPE Vc, OUT UINT16 *DmiVcCtlAddress, OUT UINT16 *DmiVcStsAddress ); /** The function sets the Target Link Speed to GEN 3 in P-DMI SIP15. @param[in] TargetLinkSpeed Target Link Speed 2: GEN2 3: GEN3 **/ VOID PchDmi15SetTargetLinkSpeed ( IN UINT8 TargetLinkSpeed ); #endif