summaryrefslogtreecommitdiff
path: root/chip/stm32/usart.c
diff options
context:
space:
mode:
Diffstat (limited to 'chip/stm32/usart.c')
-rw-r--r--chip/stm32/usart.c9
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;