nuttx/arch/arm/include
raiden00pl f093edb26c arch/arm/stm32h5: Use common Cortex-M33 USART support
Select STM32_HAVE_IP_USART_M33_V3 and drop the family serial, USART
header, and low-level console sources. Provide the USART clock and RCC
gate definitions for all thirteen ports in stm32_rcc_m33.h and the RX
DMA request numbers in the family DMA signal map. Include the family
DMA header from stm32.h so the common driver reaches the DMA API.

Extend the common Cortex-M33 v3 USART support with the STM32H5
features: USART6, UART7-9, USART10-11, and UART12 ports, the LPUART
prescaler for low baud rates, RX DMA through the family-provided
request number, wakeup-from-stop CR3 definitions, and per-port
descriptors gated by the family peripheral options.

Enable the USART FIFO for every Cortex-M33 family. The low-level
console uses the per-port kernel clock and RCC gate, which corrects
the UART9 and UART12 enable register. The RX DMA callback delivers
data only while reception is enabled.

The non-BSD break ioctl now uses the send-break request register
instead of a CR1 bit this USART IP does not have. Correct the UART12
gates and the RXDMA and console undef lists in the USART driver
header. Raise STM32_NUSART to six on the H56x and H57x parts so UART12
fits the device table, add the missing UART9 buffers, write LPUART CR1
only on the USART path, and build device names with snprintf so minors
above nine are valid.

Keep the termios flow control fields writable so TCSETS compiles with
input flow control, let up_putc emit a bare newline since syslog adds
the carriage return, and make the unconfigure-on-close options
available to every Cortex-M33 family.

Signed-off-by: raiden00pl <raiden00@railab.me>
Assisted-by: Claude Code
2026-10-08 15:53:21 -03:00
..
a1x
am67 arch/arm/am67: Add I2C0/WKUP_I2C0 master driver. 2026-09-17 13:49:35 +08:00
am335x
arm !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
armv6-m !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
armv7-a arch/arm: Build fork() children from the caller's syscall frame on armv7-a. 2026-08-10 08:57:30 -03:00
armv7-m !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
armv7-r !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
armv8-m !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
armv8-r !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
at32
c5471
csk6
cxd32xx
cxd56xx !boards: Remove NSH_ARCHINIT and board_app_initialize 2026-05-02 18:36:46 +08:00
dm320 style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
efm32
eoss3
fvp-v8r-aarch32
gd32f4 style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
goldfish
ht32f491x3 ht32f491x3/esk32: add docs and flash helpers 2026-03-30 09:48:16 +08:00
imx1
imx6 arm/imx6: Fix IMX_IRQ definitions 2026-04-10 10:28:39 +08:00
imx9 imx9: imx95 fix uSDHC IRQ naming to match NuttX USDHC convention 2026-03-24 15:39:07 +08:00
imxrt arch/arm/imxrt: ROM api support 2026-10-07 08:20:12 -03:00
kinetis style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
kl
lc823450
lpc17xx_40xx
lpc31xx
lpc43xx
lpc54xx
lpc214x arch/lpc214x: Fix LPC214x to work again 2026-07-01 03:00:43 +08:00
lpc2378 arch/arm: Fix LPC2378 to work again 2026-06-30 03:28:12 +08:00
max326xx arch/arm/max326xx: add max32690 global control bit definitions 2025-02-11 12:27:10 -03:00
mcx-nxxx arch/mcx-nxxx: Add support for NXP MCX-N236 CPU 2025-02-22 16:12:06 -03:00
moxart
mps
mx8mp style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
n32h7 arch/arm/n32h7: Add N32H762IIL7 BSP 2026-09-17 09:39:41 -03:00
nrf52
nrf53
nrf54l arm/nrf54l: add initial nrf54l support 2026-09-24 11:10:46 +08:00
nrf91
nuc1xx
phy62xx !arch/stm32f0l0g0: move stm32c0 and finalize the directory split 2026-06-24 14:54:44 -03:00
qemu
ra4 arch/ra4: Add support for Renesas RA4M1 MCU 2025-02-25 13:14:48 -03:00
ra8m1 arch/arm/ra8m1: Add GPT timer support 2026-10-01 23:12:10 +08:00
rp23xx arch/arm/rp23xx: fix irq priority levels 2025-04-22 20:59:42 -03:00
rp2040
rtl8720f arch/arm: add Realtek RTL8721Dx and RTL8720F (Ameba WHC) support 2026-07-01 09:18:06 -03:00
rtl8721dx arch/arm: add Realtek RTL8721Dx and RTL8720F (Ameba WHC) support 2026-07-01 09:18:06 -03:00
rtl8721f arch/arm/rtl8721f: bring up minimal NSH (P1) 2026-07-30 17:04:14 +08:00
rtl8730e arch/arm/rtl8730e: add UART character driver support 2026-09-24 21:24:35 +08:00
s32k1xx
s32k3xx style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
sam34
sama5
samd2l2
samd5e5
samv7 arch/arm/samv7: enable USART peripherals for SAMx7xJ series 2025-09-18 11:05:56 +02:00
stm32c0 !arch/stm32f0l0g0: move stm32c0 and finalize the directory split 2026-06-24 14:54:44 -03:00
stm32c5 arch/arm/stm32c5: Add STM32C562 architecture support 2026-08-27 01:07:10 +08:00
stm32f0 !arch/stm32f0l0g0: move stm32f0 to its own directory 2026-06-24 14:54:44 -03:00
stm32f1 !arch/stm32: move stm32f1 to its own directory 2026-06-24 14:54:44 -03:00
stm32f2 !arch/stm32: move stm32f2 to its own directory 2026-06-24 14:54:44 -03:00
stm32f3 !arch/stm32: move stm32f3 to its own directory 2026-06-24 14:54:44 -03:00
stm32f4 arch/arm/stm32f4: add STM32F412CG chip selection 2026-09-01 17:40:30 +08:00
stm32f7 arch/arm/stm32f7: use common Kconfig symbols 2026-08-18 09:34:58 +08:00
stm32g0 arm/stm32g0: Add USB device controller support 2026-08-22 11:09:08 +08:00
stm32g4 !arch/stm32: move stm32g4 to its own directory 2026-06-24 14:54:44 -03:00
stm32h5 arch/arm/stm32h5: Use common Cortex-M33 USART support 2026-10-08 15:53:21 -03:00
stm32h7 arm/stm32h7: add STM32H735 support 2026-10-07 04:06:37 +02:00
stm32l0 !arch/stm32f0l0g0: move stm32l0 to its own directory 2026-06-24 14:54:44 -03:00
stm32l1 !arch/stm32: move stm32l1 and finalize the directory split 2026-06-24 14:54:44 -03:00
stm32l4 !arch/stm32l4: use common STM32 Kconfig symbols 2026-06-14 11:35:31 -03:00
stm32l5 arch/arm/stm32l5: Use common Cortex-M33 core support 2026-09-22 09:21:35 -03:00
stm32n6 !arch/stm32n6: unify non-standard hardware definition prefixes 2026-06-11 22:51:35 -03:00
stm32u0 arch/arm: add stm32u0 support 2026-08-18 15:00:15 +02:00
stm32u3 arch/arm/stm32u3: Add STM32U3C5 architecture support 2026-08-23 11:03:03 +08:00
stm32u5 arch/arm/stm32: Generalize Cortex-M33 heap support 2026-08-27 01:07:10 +08:00
stm32wb !arch/stm32wb: use common STM32 Kconfig symbols 2026-06-14 11:35:31 -03:00
stm32wl5 !arch/stm32wl5: use common STM32 Kconfig symbols 2026-06-14 11:35:31 -03:00
str71x
tiva
tlsr82 !arch/arm: Use r9 as the PIC base register. 2026-08-06 01:38:23 +08:00
tms570
xmc4
.gitignore
arch.h binfmt, arch/arm: Add the CONFIG_FDPIC option and the ABI header. 2026-09-08 16:31:16 -03:00
barriers.h arch/arm:use UP_DSB, UP_DMB, UP_ISB as barrier standard API 2025-01-20 20:13:07 +08:00
elf.h libs/libc/elf: Load the libraries a module names in DT_NEEDED. 2026-10-06 17:48:49 -03:00
inttypes.h
irq.h arch: rename STACK_ALIGNMENT to STACKFRAME_ALIGN across all architectures 2026-01-22 15:37:24 +08:00
limits.h
setjmp.h
stdarg.h
syscall.h
types.h