diff options
Diffstat (limited to 'chip/stm32/usart.c')
-rw-r--r-- | chip/stm32/usart.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/chip/stm32/usart.c b/chip/stm32/usart.c index 29cb0b705f..d97eb45565 100644 --- a/chip/stm32/usart.c +++ b/chip/stm32/usart.c @@ -6,7 +6,6 @@ /* USART driver for Chrome EC */ #include "atomic.h" -#include "clock.h" #include "common.h" #include "gpio.h" #include "registers.h" @@ -117,9 +116,9 @@ void usart_shutdown(struct usart_config const *config) config->hw->ops->disable(config); } -void usart_set_baud_f0_l(struct usart_config const *config) +void usart_set_baud_f0_l(struct usart_config const *config, int frequency_hz) { - int div = DIV_ROUND_NEAREST(clock_get_freq(), config->baud); + int div = DIV_ROUND_NEAREST(frequency_hz, config->baud); intptr_t base = config->hw->base; if (div / 16 > 0) { @@ -139,9 +138,9 @@ void usart_set_baud_f0_l(struct usart_config const *config) } } -void usart_set_baud_f(struct usart_config const *config) +void usart_set_baud_f(struct usart_config const *config, int frequency_hz) { - int div = DIV_ROUND_NEAREST(clock_get_freq(), config->baud); + int div = DIV_ROUND_NEAREST(frequency_hz, config->baud); /* STM32F only supports x16 oversampling */ STM32_USART_BRR(config->hw->base) = div; |