coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
|
Go to the source code of this file.
Data Structures | |
struct | soc_power_limits_config |
Macros | |
#define | MCH_PKG_POWER_LIMIT_LO 0x59a0 |
#define | MCH_PKG_POWER_LIMIT_HI 0x59a4 |
#define | MCH_DDR_POWER_LIMIT_LO 0x58e0 |
#define | MCH_DDR_POWER_LIMIT_HI 0x58e4 |
#define | MSR_VR_CURRENT_CONFIG 0x601 |
#define | MSR_PL3_CONTROL 0x615 |
#define | MSR_PLATFORM_POWER_LIMIT 0x65c |
#define | MOBILE_SKU_PL1_TIME_SEC 28 |
#define | MILLIWATTS_TO_WATTS 1000 |
Functions | |
void | set_power_limits (u8 power_limit_1_time, struct soc_power_limits_config *config) |
u8 | get_cpu_tdp (void) |
#define MCH_DDR_POWER_LIMIT_HI 0x58e4 |
Definition at line 9 of file power_limit.h.
#define MCH_DDR_POWER_LIMIT_LO 0x58e0 |
Definition at line 8 of file power_limit.h.
#define MCH_PKG_POWER_LIMIT_HI 0x59a4 |
Definition at line 7 of file power_limit.h.
#define MCH_PKG_POWER_LIMIT_LO 0x59a0 |
Definition at line 6 of file power_limit.h.
#define MILLIWATTS_TO_WATTS 1000 |
Definition at line 18 of file power_limit.h.
#define MOBILE_SKU_PL1_TIME_SEC 28 |
Definition at line 16 of file power_limit.h.
#define MSR_PL3_CONTROL 0x615 |
Definition at line 12 of file power_limit.h.
#define MSR_PLATFORM_POWER_LIMIT 0x65c |
Definition at line 13 of file power_limit.h.
#define MSR_VR_CURRENT_CONFIG 0x601 |
Definition at line 11 of file power_limit.h.
Definition at line 199 of file power_limit.c.
References cpu_tdp, msr_struct::lo, MSR_PKG_POWER_SKU, MSR_PKG_POWER_SKU_UNIT, and rdmsr().
Referenced by fill_vr_domain_config(), get_sku_index(), get_vccin_aux_imon_iccmax(), soc_systemagent_init(), and variant_update_power_limits().
void set_power_limits | ( | u8 | power_limit_1_time, |
struct soc_power_limits_config * | config | ||
) |
Definition at line 72 of file power_limit.c.
References ARRAY_SIZE, BIOS_INFO, cpu_config_tdp_levels(), cpu_get_tdp_nominal_ratio(), msr_struct::hi, msr_struct::lo, MCH_DDR_POWER_LIMIT_HI, MCH_DDR_POWER_LIMIT_LO, MCH_PKG_POWER_LIMIT_HI, MCH_PKG_POWER_LIMIT_LO, MCHBAR32, MSR_DDR_RAPL_LIMIT, MSR_PKG_POWER_LIMIT, MSR_PKG_POWER_SKU, MSR_PKG_POWER_SKU_UNIT, MSR_PL3_CONTROL, MSR_PLATFORM_INFO, MSR_PLATFORM_POWER_LIMIT, MSR_TURBO_ACTIVATION_RATIO, MSR_VR_CURRENT_CONFIG, PKG_POWER_LIMIT_CLAMP, PKG_POWER_LIMIT_DUTYCYCLE_MASK, PKG_POWER_LIMIT_DUTYCYCLE_SHIFT, PKG_POWER_LIMIT_EN, PKG_POWER_LIMIT_MASK, PKG_POWER_LIMIT_TIME_MASK, PKG_POWER_LIMIT_TIME_SHIFT, PLATFORM_INFO_SET_TDP, power_limit_time_msr_to_sec, power_limit_time_sec_to_msr, printk, rdmsr(), soc_power_limits_config::tdp_pl1_override, soc_power_limits_config::tdp_pl2_override, soc_power_limits_config::tdp_pl4, soc_power_limits_config::tdp_psyspl2, soc_power_limits_config::tdp_psyspl3, soc_power_limits_config::tdp_psyspl3_dutycycle, soc_power_limits_config::tdp_psyspl3_time, and wrmsr().