serial: stm32x7: add STM32F4 support

stm32f4 doesn't support FIFO and OVERRUN feature.
The enable bit is not at the same location in CR1
register than for STM32F7 and STM32H7.

Signed-off-by: Patrice Chotard <patrice.chotard@st.com>
master
Patrice Chotard 7 years ago committed by Tom Rini
parent 2a7ecc5360
commit 6c30f15bf1
  1. 4
      drivers/serial/Kconfig
  2. 1
      drivers/serial/serial_stm32x7.c
  3. 7
      drivers/serial/serial_stm32x7.h

@ -531,9 +531,9 @@ config STI_ASC_SERIAL
config STM32X7_SERIAL
bool "STMicroelectronics STM32 SoCs on-chip UART"
depends on DM_SERIAL && (STM32F7 || STM32H7)
depends on DM_SERIAL && (STM32F4 || STM32F7 || STM32H7)
help
If you have a machine based on a STM32 F7 or H7 SoC you can
If you have a machine based on a STM32 F4, F7 or H7 SoC you can
enable its onboard serial ports, say Y to this option.
If unsure, say N.

@ -127,6 +127,7 @@ static int stm32_serial_probe(struct udevice *dev)
#if CONFIG_IS_ENABLED(OF_CONTROL)
static const struct udevice_id stm32_serial_id[] = {
{ .compatible = "st,stm32-uart", .data = (ulong)&stm32f4_info},
{ .compatible = "st,stm32f7-uart", .data = (ulong)&stm32f7_info},
{ .compatible = "st,stm32h7-uart", .data = (ulong)&stm32h7_info},
{}

@ -27,6 +27,13 @@ struct stm32_uart_info {
bool has_fifo;
};
struct stm32_uart_info stm32f4_info = {
.stm32f4 = true,
.uart_enable_bit = 13,
.has_overrun_disable = false,
.has_fifo = false,
};
struct stm32_uart_info stm32f7_info = {
.uart_enable_bit = 0,
.stm32f4 = false,

Loading…
Cancel
Save