Smooth fan speed changes (#190)
* SMOOTH_FANS, SMOOTH_FANS_UP, SMOOTH_FANS_DOWN build flags to smooth fan speed changes. Defaults 40, set SMOOTH_FANS=0 to disable and keep sharp fan speed changes * fix for ACPI CPU temperature * allow for a floor to be set for fan smoothing and specifically configure oryp6/7 to start smoothing at 25% to mitigate fan buzzing below 25% * update default config values for fans * update all devices to use defaults for heatup, cooldown, update galp5 fan curves * Decrease default cooldown time from 20 to 10 Co-authored-by: Jacob Kauffmann <jacob@system76.com>
This commit is contained in:
@@ -5,7 +5,6 @@
|
||||
|
||||
#if HAVE_DGPU
|
||||
|
||||
#include <board/fan.h>
|
||||
#include <board/gpio.h>
|
||||
#include <board/peci.h>
|
||||
#include <board/power.h>
|
||||
@@ -16,7 +15,7 @@
|
||||
|
||||
// Fan speed is the lowest requested over HEATUP seconds
|
||||
#ifndef BOARD_DGPU_HEATUP
|
||||
#define BOARD_DGPU_HEATUP 10
|
||||
#define BOARD_DGPU_HEATUP 4
|
||||
#endif
|
||||
|
||||
static uint8_t FAN_HEATUP[BOARD_DGPU_HEATUP] = { 0 };
|
||||
@@ -54,7 +53,7 @@ static struct Fan __code FAN = {
|
||||
.heatup_size = ARRAY_SIZE(FAN_HEATUP),
|
||||
.cooldown = FAN_COOLDOWN,
|
||||
.cooldown_size = ARRAY_SIZE(FAN_COOLDOWN),
|
||||
.interpolate = false,
|
||||
.interpolate = SMOOTH_FANS != 0,
|
||||
};
|
||||
|
||||
void dgpu_init(void) {
|
||||
|
Reference in New Issue
Block a user