diff options
-rw-r--r-- | board/agah/board.h | 3 | ||||
-rw-r--r-- | board/agah/fans.c | 58 | ||||
-rw-r--r-- | board/agah/gpio.inc | 2 | ||||
-rw-r--r-- | board/agah/pwm.c | 9 |
4 files changed, 36 insertions, 36 deletions
diff --git a/board/agah/board.h b/board/agah/board.h index c82f2d3b16..2a81230e5f 100644 --- a/board/agah/board.h +++ b/board/agah/board.h @@ -178,17 +178,20 @@ enum pwm_channel { PWM_CH_LED1, /* PWM2 (orange charger) */ PWM_CH_KBLIGHT, /* PWM3 */ PWM_CH_FAN, /* PWM5 */ + PWM_CH_FAN2, /* PWM4 */ PWM_CH_LED4, /* PWM7 */ PWM_CH_COUNT }; enum fan_channel { FAN_CH_0 = 0, + FAN_CH_1, FAN_CH_COUNT }; enum mft_channel { MFT_CH_0 = 0, + MFT_CH_1, MFT_CH_COUNT }; diff --git a/board/agah/fans.c b/board/agah/fans.c index ca816af8ab..df6102b460 100644 --- a/board/agah/fans.c +++ b/board/agah/fans.c @@ -20,6 +20,11 @@ const struct mft_t mft_channels[] = { .clk_src = TCKC_LFCLK, .pwm_id = PWM_CH_FAN, }, + [MFT_CH_1] = { + .module = NPCX_MFT_MODULE_2, + .clk_src = TCKC_LFCLK, + .pwm_id = PWM_CH_FAN2, + }, }; BUILD_ASSERT(ARRAY_SIZE(mft_channels) == MFT_CH_COUNT); @@ -30,10 +35,23 @@ static const struct fan_conf fan_conf_0 = { .enable_gpio = GPIO_EN_PP5000_FAN, }; +static const struct fan_conf fan_conf_1 = { + .flags = FAN_USE_RPM_MODE, + .ch = MFT_CH_1, /* Use MFT id to control fan */ + .pgood_gpio = -1, + .enable_gpio = GPIO_EN_PP5000_FAN, +}; + static const struct fan_rpm fan_rpm_0 = { - .rpm_min = 2200, - .rpm_start = 2200, - .rpm_max = 4200, + .rpm_min = 2500, + .rpm_start = 2500, + .rpm_max = 4300, +}; + +static const struct fan_rpm fan_rpm_1 = { + .rpm_min = 2500, + .rpm_start = 2500, + .rpm_max = 4300, }; const struct fan_t fans[FAN_CH_COUNT] = { @@ -41,34 +59,8 @@ const struct fan_t fans[FAN_CH_COUNT] = { .conf = &fan_conf_0, .rpm = &fan_rpm_0, }, + [FAN_CH_1] = { + .conf = &fan_conf_1, + .rpm = &fan_rpm_1, + }, }; - -#ifndef CONFIG_FANS - -static void fan_slow(void) -{ - const int duty_pct = 33; - - ccprints("%s: speed %d%%", __func__, duty_pct); - - pwm_enable(PWM_CH_FAN, 1); - pwm_set_duty(PWM_CH_FAN, duty_pct); -} - -static void fan_max(void) -{ - const int duty_pct = 100; - - ccprints("%s: speed %d%%", __func__, duty_pct); - - pwm_enable(PWM_CH_FAN, 1); - pwm_set_duty(PWM_CH_FAN, duty_pct); -} - -DECLARE_HOOK(HOOK_INIT, fan_slow, HOOK_PRIO_DEFAULT); -DECLARE_HOOK(HOOK_CHIPSET_SUSPEND, fan_slow, HOOK_PRIO_DEFAULT); -DECLARE_HOOK(HOOK_CHIPSET_SHUTDOWN, fan_slow, HOOK_PRIO_DEFAULT); -DECLARE_HOOK(HOOK_CHIPSET_RESET, fan_max, HOOK_PRIO_FIRST); -DECLARE_HOOK(HOOK_CHIPSET_RESUME, fan_max, HOOK_PRIO_DEFAULT); - -#endif /* CONFIG_FANS */ diff --git a/board/agah/gpio.inc b/board/agah/gpio.inc index 1121121e95..aea77665d6 100644 --- a/board/agah/gpio.inc +++ b/board/agah/gpio.inc @@ -92,9 +92,9 @@ ALTERNATE(PIN_MASK(F, 0x0c), 0, MODULE_I2C, 0) /* GPIOF3/I2C4_SCL1 /* PWM alternate functions */ ALTERNATE(PIN_MASK(4, 0x01), 0, MODULE_PWM, 0) /* GPIO40/TA1 */ +ALTERNATE(PIN_MASK(7, 0x08), 0, MODULE_PWM, 0) /* GPIO73/TA2 */ ALTERNATE(PIN_MASK(6, 0x01), 0, MODULE_PWM, 0) /* GPIO60/PWM7 */ ALTERNATE(PIN_MASK(8, 0x01), 0, MODULE_PWM, 0) /* GPIO80/PWM3 */ -ALTERNATE(PIN_MASK(A, 0x80), 0, MODULE_PWM, 0) /* GPIOA7/TB1 */ ALTERNATE(PIN_MASK(B, 0xC0), 0, MODULE_PWM, 0) /* GPIOB7/PWM5, GPIOB6/PWM4 */ ALTERNATE(PIN_MASK(C, 0x1c), 0, MODULE_PWM, 0) /* GPIOC4/PWM2, GPIOC3/PWM0, GPIOC2/PWM1/I2C6_SCL0 */ diff --git a/board/agah/pwm.c b/board/agah/pwm.c index 2203f14c8d..29fdfdabd7 100644 --- a/board/agah/pwm.c +++ b/board/agah/pwm.c @@ -39,8 +39,13 @@ const struct pwm_t pwm_channels[] = { }, [PWM_CH_FAN] = { .channel = 5, - .flags = PWM_CONFIG_OPEN_DRAIN | PWM_CONFIG_DSLEEP, - .freq = 1000 + .flags = PWM_CONFIG_OPEN_DRAIN, + .freq = 25000 + }, + [PWM_CH_FAN2] = { + .channel = 4, + .flags = PWM_CONFIG_OPEN_DRAIN, + .freq = 25000 }, [PWM_CH_LED4] = { .channel = 7, |