soc/amd/picasso: Add THERMCTL_LIMIT DPTC parameter support
Add THERMCTL_LIMIT (die temperature limit) DPTC parameter for clamshell/tablet mode. BUG=b:157943445 BRANCH=zork TEST=build Change-Id: Id193a74210c92d1e45ed4824ee9c0fc9ceaa5e3a Signed-off-by: Kevin Chiu <kevin.chiu@quantatw.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/45519 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Furquan Shaikh <furquan@google.com>
This commit is contained in:
parent
e0d749c23b
commit
cdd9f5cb72
|
@ -111,6 +111,7 @@ struct soc_amd_picasso_config {
|
|||
|
||||
/* Lower die temperature limit */
|
||||
uint32_t thermctl_limit;
|
||||
uint32_t thermctl_limit_tablet_mode;
|
||||
|
||||
/* FP5 Processor Voltage Supply PSI Currents. 0 indicates use SOC default */
|
||||
uint32_t psi0_current_limit;
|
||||
|
|
|
@ -17,10 +17,11 @@
|
|||
|
||||
enum {
|
||||
ALIB_DPTCI_FUNCTION_ID = 0xc,
|
||||
THERMAL_CONTROL_LIMIT_ID = 0x3,
|
||||
SUSTAINED_POWER_LIMIT_PARAM_ID = 0x5,
|
||||
FAST_PPT_LIMIT_PARAM_ID = 0x6,
|
||||
SLOW_PPT_LIMIT_PARAM_ID = 0x7,
|
||||
DPTC_TOTAL_UPDATE_PARAMS = 3,
|
||||
DPTC_TOTAL_UPDATE_PARAMS = 4,
|
||||
};
|
||||
|
||||
struct dptc_param {
|
||||
|
@ -33,10 +34,14 @@ struct dptc_input {
|
|||
struct dptc_param params[DPTC_TOTAL_UPDATE_PARAMS];
|
||||
} __packed;
|
||||
|
||||
#define DPTC_INPUTS(_sustained, _fast, _slow) \
|
||||
#define DPTC_INPUTS(_thermctllmit, _sustained, _fast, _slow) \
|
||||
{ \
|
||||
.size = sizeof(struct dptc_input), \
|
||||
.params = { \
|
||||
{ \
|
||||
.id = THERMAL_CONTROL_LIMIT_ID, \
|
||||
.value = _thermctllmit, \
|
||||
}, \
|
||||
{ \
|
||||
.id = SUSTAINED_POWER_LIMIT_PARAM_ID, \
|
||||
.value = _sustained, \
|
||||
|
@ -195,10 +200,12 @@ static void acipgen_dptci(void)
|
|||
if (!config->dptc_enable)
|
||||
return;
|
||||
|
||||
struct dptc_input default_input = DPTC_INPUTS(config->sustained_power_limit,
|
||||
struct dptc_input default_input = DPTC_INPUTS(config->thermctl_limit,
|
||||
config->sustained_power_limit,
|
||||
config->fast_ppt_limit,
|
||||
config->slow_ppt_limit);
|
||||
struct dptc_input tablet_mode_input = DPTC_INPUTS(
|
||||
config->thermctl_limit_tablet_mode,
|
||||
config->sustained_power_limit_tablet_mode,
|
||||
config->fast_ppt_limit_tablet_mode,
|
||||
config->slow_ppt_limit_tablet_mode);
|
||||
|
|
Loading…
Reference in New Issue