Nico Huber has submitted this change. ( https://review.coreboot.org/c/coreboot/+/81525?usp=email )
Change subject: superio/ite: Add full-speed config option ......................................................................
superio/ite: Add full-speed config option
Add Kconfig option for full-speed setting. Some variants do not support the full-speed at limit configuration (IT8772F). Keep it enabled for all current variants that use the common EC code as it was previously enabled unconditionally - datasheets weren't revisited individually.
Change-Id: Icf24ea1c4f41771a18803957456f0aeba0e51b13 Signed-off-by: Joel Linn jl@conductive.de Reviewed-on: https://review.coreboot.org/c/coreboot/+/81525 Reviewed-by: Paul Menzel paulepanter@mailbox.org Reviewed-by: Nico Huber nico.h@gmx.de Reviewed-by: Matt DeVillier matt.devillier@gmail.com Tested-by: build bot (Jenkins) no-reply@coreboot.org --- M src/superio/ite/common/Kconfig M src/superio/ite/common/env_ctrl.c 2 files changed, 8 insertions(+), 1 deletion(-)
Approvals: Nico Huber: Looks good to me, approved Paul Menzel: Looks good to me, but someone else must approve Matt DeVillier: Looks good to me, approved build bot (Jenkins): Verified
diff --git a/src/superio/ite/common/Kconfig b/src/superio/ite/common/Kconfig index 36c1496..6fde3c8 100644 --- a/src/superio/ite/common/Kconfig +++ b/src/superio/ite/common/Kconfig @@ -48,4 +48,10 @@ Temperature can be read to any TMPIN from an external sensor via SST/PECI (instead of TMPIN3 only).
+config SUPERIO_ITE_ENV_CTRL_NO_FULLSPEED_SETTING + bool + help + Fan controller does not support running at full speed when limit + temperature is reached. + endif diff --git a/src/superio/ite/common/env_ctrl.c b/src/superio/ite/common/env_ctrl.c index d624a92..1124019 100644 --- a/src/superio/ite/common/env_ctrl.c +++ b/src/superio/ite/common/env_ctrl.c @@ -182,7 +182,8 @@ conf->tmp_full ? conf->tmp_full : 127);
delta_temp = ITE_EC_FAN_CTL_DELTA_TEMP_INTRVL(conf->tmp_delta); - delta_temp |= ITE_EC_FAN_CTL_FULL_AT_THRML_LMT(conf->full_lmt); + if (!CONFIG(SUPERIO_ITE_ENV_CTRL_NO_FULLSPEED_SETTING)) + delta_temp |= ITE_EC_FAN_CTL_FULL_AT_THRML_LMT(conf->full_lmt); pnp_write_hwm5_index(base, ITE_EC_FAN_CTL_DELTA_TEMP(fan), delta_temp); }