summaryrefslogtreecommitdiffstats
path: root/src/superio/ite/common/env_ctrl_chip.h
diff options
context:
space:
mode:
authorMichael Büchler <michael.buechler@posteo.net>2020-06-01 23:22:10 +0200
committerFelix Held <felix-coreboot@felixheld.de>2020-08-10 12:43:56 +0000
commite693b1d549621acfd20aaad876d4d5888ad5ca99 (patch)
tree82fa5ab5a7d24d6e52821be4f1ef7fdf28d3da7e /src/superio/ite/common/env_ctrl_chip.h
parenta2bb4553a558c4a33046a2e0f9c76b056e1c07fd (diff)
downloadcoreboot-e693b1d549621acfd20aaad876d4d5888ad5ca99.tar.gz
coreboot-e693b1d549621acfd20aaad876d4d5888ad5ca99.tar.bz2
coreboot-e693b1d549621acfd20aaad876d4d5888ad5ca99.zip
superio/ite: configure EC for fans to full at thermal limit
This applies to the automatic fan control mode of the environment controller (EC). Previously the affected bit was always cleared while the default value is 1 according to datasheets. Add a variable that can be set per mainboard in devicetree.cb. In the IT8783E datasheet that bit is marked as reserved. Signed-off-by: Michael Büchler <michael.buechler@posteo.net> Change-Id: Ie74102ac0d54be33558c161c9c84594d121772b1 Reviewed-on: https://review.coreboot.org/c/coreboot/+/44165 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
Diffstat (limited to 'src/superio/ite/common/env_ctrl_chip.h')
-rw-r--r--src/superio/ite/common/env_ctrl_chip.h19
1 files changed, 10 insertions, 9 deletions
diff --git a/src/superio/ite/common/env_ctrl_chip.h b/src/superio/ite/common/env_ctrl_chip.h
index 6a027b90f19f..09577a4d84e9 100644
--- a/src/superio/ite/common/env_ctrl_chip.h
+++ b/src/superio/ite/common/env_ctrl_chip.h
@@ -50,15 +50,16 @@ enum ite_ec_fan_mode {
};
struct ite_ec_fan_smartconfig {
- u8 tmpin; /* select TMPINx (1, 2 or 3) */
- u8 tmp_off; /* turn fan off below (°C) */
- u8 tmp_start; /* turn fan on above (°C) */
- u8 tmp_full; /* 100% duty cycle above (°C) */
- u8 tmp_delta; /* adapt fan speed when temperature
- changed by at least `tmp_delta`°C */
- u8 smoothing; /* enable smoothing */
- u8 pwm_start; /* start at this duty cycle (%) */
- u8 slope; /* increase duty cycle by `slope`%/°C */
+ u8 tmpin; /* select TMPINx (1, 2 or 3) */
+ u8 tmp_off; /* turn fan off below (°C) */
+ u8 tmp_start; /* turn fan on above (°C) */
+ u8 tmp_full; /* 100% duty cycle above (°C) */
+ u8 tmp_delta; /* adapt fan speed when temperature changed by
+ at least `tmp_delta`°C */
+ u8 full_lmt; /* force fan to full PWM at thermal limit */
+ u8 smoothing; /* enable smoothing */
+ u8 pwm_start; /* start at this duty cycle (%) */
+ u8 slope; /* increase duty cycle by `slope`%/°C */
};
struct ite_ec_fan_config {