nuttx/arch/arm/include
ImBonkers be30590504 arch/arm/stm32n6: Add STM32N6 chip support.
Introduce minimal chip support for the STMicro STM32N6 family
(Cortex-M55, ARMv8.1-M with TrustZone and FPU), sufficient to bring
up an NSH console over USART1.

Scope (deliberately minimal first drop):

  - Chip selector ARCH_CHIP_STM32N6 wired into arch/arm/Kconfig and
    chip-name mapping ("stm32n6").
  - Sub-Kconfig under arch/arm/src/stm32n6 with the STM32N657X0 chip
    selector and a single user-selectable USART (USART1).
  - Boot path: stm32_start with a naked dispatcher that clears the
    boot-ROM MSPLIM/PSPLIM stack limits before any compiler-emitted
    prologue, then runs vector relocation and SRAM-only heap init.
    The chip runs entirely in the Secure state; SAU is left in its
    reset configuration.
  - PLL1-based clock tree fed from HSI64 targeting 200 MHz CPU, with
    USART1 kernel-clock routed to HSI for a predictable BRR that is
    independent of any later clock change.
  - Low-level USART driver with full serial framework support.
    stm32_serial.c is adapted from arch/arm/src/stm32h5/stm32_serial.c
    (sibling ARMv8-M Mainline port with the same USART IP), stripped
    of DMA-RX, LPUART, the per-USART2..5 plumbing, RS-485 driver-enable,
    TIOCSINVERT/SWAP and HALFDUPLEX paths.
  - SysTick system timer.
  - GPIO, PWR and RCC helpers.

TrustZone, MPU, I/D-cache and Helium (MVE) are left disabled to
minimise bring-up surface; these will be added in follow-up patches
alongside the drivers that need them.

Signed-off-by: ImBonkers <samuelnlinden@pm.me>
2026-05-18 14:50:29 -03:00
..
a1x arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
am335x arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
arm arch/arm: Add support to disable signals actions related data struct 2026-01-18 08:24:13 -03:00
armv6-m arch/arm: Add support to disable signals actions related data struct 2026-01-18 08:24:13 -03:00
armv7-a arch/arm/include/arm*/irq.h: fix FPU context layout guard macro 2026-04-30 21:23:41 +08:00
armv7-m arch/arm: Add support to disable signals actions related data struct 2026-01-18 08:24:13 -03:00
armv7-r arch/arm/include/arm*/irq.h: fix FPU context layout guard macro 2026-04-30 21:23:41 +08:00
armv8-m clock: Correct the usage of atomic64_t atomic functions 2026-02-03 10:18:11 +08:00
armv8-r arch/arm/include/arm*/irq.h: fix FPU context layout guard macro 2026-04-30 21:23:41 +08:00
at32 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
c5471 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
csk6 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
cxd32xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
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 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
eoss3 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
fvp-v8r-aarch32 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
gd32f4 style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
goldfish arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
ht32f491x3 ht32f491x3/esk32: add docs and flash helpers 2026-03-30 09:48:16 +08:00
imx1 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
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: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
kinetis style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
kl arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lc823450 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lpc17xx_40xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lpc31xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lpc43xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lpc54xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lpc214x arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
lpc2378 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +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 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
mps arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
mx8mp style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
nrf52 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
nrf53 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
nrf91 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
nuc1xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
phy62xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
qemu arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
ra4 arch/ra4: Add support for Renesas RA4M1 MCU 2025-02-25 13:14:48 -03:00
rp23xx arch/arm/rp23xx: fix irq priority levels 2025-04-22 20:59:42 -03:00
rp2040 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
s32k1xx arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
s32k3xx style: fix spelling in code comments and strings 2025-05-23 10:48:41 +08:00
sam34 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
sama5 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
samd2l2 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
samd5e5 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
samv7 arch/arm/samv7: enable USART peripherals for SAMx7xJ series 2025-09-18 11:05:56 +02:00
stm32 arch/arm/stm32*: Cleanup stm32 irq reporting 2026-03-26 23:00:56 +08:00
stm32f0l0g0 arch/arm/stm32*: Cleanup stm32 irq reporting 2026-03-26 23:00:56 +08:00
stm32f7 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
stm32h5 arch/arm/stm32*: Cleanup stm32 irq reporting 2026-03-26 23:00:56 +08:00
stm32h7 arch/arm: add STM32H755XI chip 2026-04-17 13:18:02 +02:00
stm32l4 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
stm32l5 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
stm32n6 arch/arm/stm32n6: Add STM32N6 chip support. 2026-05-18 14:50:29 -03:00
stm32u5 arch/arm/stm32*: Cleanup stm32 irq reporting 2026-03-26 23:00:56 +08:00
stm32wb arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
stm32wl5 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
str71x arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
tiva arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
tlsr82 arch/arm: Add support to disable signals actions related data struct 2026-01-18 08:24:13 -03:00
tms570 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
xmc4 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
.gitignore Remove exra whitespace from files (#189) 2020-01-31 09:24:49 -06:00
arch.h armv7a/mmu: update from l1entry replace to TTBR0 update 2025-05-12 15:01:37 +08: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 arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
inttypes.h arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
irq.h arch: rename STACK_ALIGNMENT to STACKFRAME_ALIGN across all architectures 2026-01-22 15:37:24 +08:00
limits.h arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
setjmp.h arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
spinlock.h arm/memory_barrier: fix build warning on GCC14 2025-02-18 09:04:54 -05:00
stdarg.h arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
syscall.h arch/arm: migrate to SPDX identifier 2024-12-06 09:25:23 +08:00
types.h armv7/8m: fix regresion from https://github.com/apache/nuttx/pull/14881 2024-12-09 12:20:13 +08:00