diff options
author | Keith Packard <keithp@keithp.com> | 2019-07-16 11:04:16 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2019-07-16 11:04:16 -0700 |
commit | bdcb3653bd9fb97f98773ac3bc1f87a6f52b1121 (patch) | |
tree | d771bb7178c3add69468ee191ddffdf3b4cf30c7 | |
parent | 009d56b4f03c1ba3c9a36bdb54c772ad21844057 (diff) |
altos/stmf0: Add 'ao_serial_shutdown'
This powers down the UART logic on request.
Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r-- | src/kernel/ao_serial.h | 3 | ||||
-rw-r--r-- | src/stmf0/ao_serial_stm.c | 11 |
2 files changed, 14 insertions, 0 deletions
diff --git a/src/kernel/ao_serial.h b/src/kernel/ao_serial.h index 440b562b..3500a093 100644 --- a/src/kernel/ao_serial.h +++ b/src/kernel/ao_serial.h @@ -118,6 +118,9 @@ ao_serial3_set_speed(uint8_t speed); #endif void +ao_serial_shutdown(void); + +void ao_serial_init(void); #endif /* _AO_SERIAL_H_ */ diff --git a/src/stmf0/ao_serial_stm.c b/src/stmf0/ao_serial_stm.c index 5097041a..ef35394a 100644 --- a/src/stmf0/ao_serial_stm.c +++ b/src/stmf0/ao_serial_stm.c @@ -376,6 +376,17 @@ ao_serial_set_sw_rts_cts(struct ao_stm_usart *usart, #endif void +ao_serial_shutdown(void) +{ +#if HAS_SERIAL_1 + stm_rcc.apb2enr &= ~(1 << STM_RCC_APB2ENR_USART1EN); +#endif +#if HAS_SERIAL_2 + stm_rcc.apb1enr &= ~(1 << STM_RCC_APB1ENR_USART2EN); +#endif +} + +void ao_serial_init(void) { #if HAS_SERIAL_1 |