walnux/arch/arm/include
Kyle Wilson ac15155fc9 Enable LPUART functionality for the STM32G4 series.
1. Kconfig - Removed USART1 config option from STM32_STM32G47XX. Not necessary to adding LPUART functionality. 2. stm32_lowput.c - Added extra check from STM32G4 board because that is the only with LPUART functionality. 2. stm32_serial.c - Removed unneeded function (stm32_serial_get_lpuart). Fixed up_putc return bug. Added configuration for DMAMAP_LPUART RX and TX for STM32G4XXX only. The G4 is the only in this family with LPUART and uses a DMAMUX unlike the others.

1. Removed 1WIRE LPUART refereences in Kconfig and stm32_uart.h. There is no support for LPUART currently in stm32_1wire.c. 2. Removed references to LPUART under DMA_V2 ifdefs. STM32G4 uses DMA_V1, and I saw that none of the chips DMA_V2 (F20, F4) have LPUARTs. AFAIK the only chip in the stm32 folder that has LPUART peripherals is the STM32G4.

Removed unnecessary brackets and empty lines

Added lpuartnsh (LPUART NuttShell) config to the nucleo-g474re board configurations. nsh uses USART3 by default. lpuartnsh uses nsh as a template, changes the serial console to LPUART1, and adds the DMA configs to enable DMA for the LPUART.

Added support for using the lpuart prescaler register. Without prescaling the apbclock, 9600 baud is not supported on the G474RE. By utilizing the prescaler, when necessary, we can support nearly any baud rate (300 baud to 30M Mbaud). lowputc defaults to a prescaler of 16 for the lpuart so standard baud rates (9600 to 115200) are supported early in the boot process. Later in stm32_serial.c the ideal prescaler and BRR values are determined.

Added ifdef statements for LPUART code sections not compatible with other chips.

Changed LPUART BRR calcuation to use 64-bit integers.

Feedback from nuttx pull request. Added brackets around single line if/else statements. Reordered lpuartnsh defconfig file.

Fix lpuart brr calculation after attempting to break the calculation into 2 lines.

Removed TAB
2024-10-07 04:14:59 +08:00
..
a1x
am335x
arm arch: move up_interrupt_context to arch specific irq.h 2024-09-19 08:30:09 +08:00
armv6-m arm: optimize up_interrupt_context used in armv[6/7/8]-m 2024-09-19 08:30:09 +08:00
armv7-a arm/cortex-a,r: replace cp15 instruct to macros to align operation 2024-09-20 09:29:57 +08:00
armv7-m arm: optimize up_interrupt_context used in armv[6/7/8]-m 2024-09-19 08:30:09 +08:00
armv7-r arm/cortex-a,r: replace cp15 instruct to macros to align operation 2024-09-20 09:29:57 +08:00
armv8-m arm: optimize up_interrupt_context used in armv[6/7/8]-m 2024-09-19 08:30:09 +08:00
armv8-r arm/cortex-a,r: replace cp15 instruct to macros to align operation 2024-09-20 09:29:57 +08:00
at32 Fix nuttx coding style 2023-12-13 17:29:08 +01:00
c5471
csk6 arm: Add support for CSK6011A SOC and CSK6011A-NANO board 2024-09-05 09:34:33 -03:00
cxd32xx arch: cxd32xx: Add cxd32xx SoC support 2024-06-04 22:21:56 +08:00
cxd56xx boards: cxd56xx: Fix an issue not to enter cold sleep 2024-10-03 14:24:55 +08:00
dm320
efm32
eoss3 Update kconfig2html.c 2023-12-14 20:02:52 -08:00
fvp-v8r-aarch32 Remove @ and % tag from all comments 2023-12-11 17:00:10 -03:00
gd32f4 add gd32f470i board support 2023-10-21 11:45:03 -03:00
goldfish arch/arm: GoldFish Platform support 2023-09-10 23:10:06 +08:00
imx1
imx6
imxrt Update kconfig2html.c 2023-12-14 20:02:52 -08:00
kinetis Update kconfig2html.c 2023-12-14 20:02:52 -08:00
kl
lc823450
lpc17xx_40xx
lpc31xx
lpc43xx
lpc54xx
lpc214x
lpc2378
max326xx
moxart
mps mps: update the mps3-an547 mps2-an500 defconfig 2024-09-30 20:06:52 +08:00
mx8mp Handle GPIO IRQs 2023-09-06 12:30:35 +08:00
nrf52
nrf53 arch/nrf53: UART0-3, SPI0-3 and TWI0-3 instances share the same interrupt vectors 2023-05-19 21:36:49 -07:00
nrf91 arch/arm: initial support for NRF91 2023-07-02 10:10:35 -03:00
nuc1xx
phy62xx
qemu arch/arm: add qemu support for ARM32 2023-08-15 23:56:41 +08:00
rp2040 Add watchdog driver support to RP2040 2022-09-08 21:41:13 +08:00
s32k1xx
s32k3xx Add initial support for NXP S32K3 MCU family 2022-07-25 23:47:05 +08:00
sam34
sama5 sama5: add support for QSPI 2023-11-08 21:58:02 +01:00
samd2l2
samd5e5
samv7 Update kconfig2html.c 2023-12-14 20:02:52 -08:00
stm32 Enable LPUART functionality for the STM32G4 series. 2024-10-07 04:14:59 +08:00
stm32f0l0g0 stm32f0l0g0: Add GPIOE to STM32G0x 2023-05-10 18:01:07 +08:00
stm32f7
stm32h7 add stm32h755II chip 2024-05-17 10:16:39 -03:00
stm32l4
stm32l5
stm32u5 Initial support for NUCLEO-U5A5ZJ-Q board 2023-07-23 18:42:05 -07:00
stm32wb New stm32wb chip family 2022-07-01 12:13:58 +08:00
stm32wl5 stm32wl5: add new chip family 2022-06-07 22:28:32 +08:00
str71x
tiva
tlsr82 arch: inline up_switch_context,in arm arm64 2024-09-28 19:08:15 +08:00
tms570
xmc4
.gitignore
arch.h shm:fix build error 2024-09-17 20:09:39 +08:00
elf.h elf: Move 32/64bit generic mapping from risc-v/arch_elf.c to elfxx.h 2023-07-10 13:09:47 -03:00
inttypes.h arch/arm: Document the clever trick of PRI?32 macros 2022-11-01 23:11:16 +01:00
irq.h arch: inline up_switch_context,in arm arm64 2024-09-28 19:08:15 +08:00
limits.h arch: Define WCHAR_[MIN|MAX] in arch/include/limits.h 2022-06-03 22:25:49 +03:00
setjmp.h arch/arm: Support setjmp/longjmp for all socs 2022-03-09 17:13:21 +02:00
spinlock.h nuttx: fix multiple 'FAR', 'CODE' and style issues 2024-08-25 19:22:15 +08:00
stdarg.h arch/strarg: provide the stdarg implementation for greenhills compiler 2024-08-19 10:37:54 +08:00
syscall.h syscall: Use a more compatible writing style 2024-09-28 19:08:15 +08:00
types.h types.h: fix windows build error 2024-08-14 22:36:57 +08:00