Work In Progress

NuttX X.Y has not been released yet. These Release Notes are a work-in-progress in preparation for the next release of NuttX.  There is a board tracking the PRs that need to be looked at to add to this doc for the OS TODO ADD LINK and for the Apps TODO ADD LINK

What's New In This Release

Major Changes to Core OS

New Features

Bug Fixes

Major Changes to the Build System

New Features

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#




Architectural Support

New Architecture Support

 * [#6179](https://github.com/apache/incubator-nuttx/pull/#6179) tlsr82: first commit of telink tlsr82xx chip port

 * [#6687](https://github.com/apache/incubator-nuttx/pull/#6687) Add support for NXP S32K3XX MCU family and boards

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

Bug Fixes

 * [#6188](https://github.com/apache/incubator-nuttx/pull/#6188) arch: Move -fstack-protector-all and -finstrument-functions from Make.defs to Toolchain.defs

 * [#6200](https://github.com/apache/incubator-nuttx/pull/#6200) arch: Add gcov related config for arm/risc-v/xtensa

 * [#6063](https://github.com/apache/incubator-nuttx/pull/#6063) arch/stack_color: correct the stack top of running task

 * [#6056](https://github.com/apache/incubator-nuttx/pull/#6056) arch/stack_color: correct the end address of stack color

 * [#5966](https://github.com/apache/incubator-nuttx/pull/#5966) arch:tcbinfo: update tcbinfo as xcpcontext update

 * [#5865](https://github.com/apache/incubator-nuttx/pull/#5865) arch: Add -fsanitize=kernel-address to ARCHCPUFLAGS if CONFIG_MM_KASAN=y

* [#5864](https://github.com/apache/incubator-nuttx/pull/#5864) arch/Toolchain.defs: add wildcard for EXTRA_LIBS

 * [#5920](https://github.com/apache/incubator-nuttx/pull/#5920) ARCH_ADDRENV: Add guard against mis-configuration 

 * [#6105](https://github.com/apache/incubator-nuttx/pull/#6105) arch/clang: add support for Clang LTO

 * [#6089](https://github.com/apache/incubator-nuttx/pull/#6089) arch: Move group_addrenv to common place

 * [#6183](https://github.com/apache/incubator-nuttx/pull/#6183) arch: Remvoe the error message when toolchain can't find

 * [#6080](https://github.com/apache/incubator-nuttx/pull/#6080) arch/ostest: remove CONFIG_TESTING_OSTEST_FPUSIZE & board level implement

 * [#6086](https://github.com/apache/incubator-nuttx/pull/#6086) Remove FAR from the arch and board files of ceva/mips/misoc/or1k/sim/sparc/x86_64/xtensa

 * [#6778](https://github.com/apache/incubator-nuttx/pull/#6778) arch: common: Fix up_check_tcbstack() for CONFIG_ARCH_ADDRENV=y

 * [#6665](https://github.com/apache/incubator-nuttx/pull/#6665) arch/stack: get correct stack remain and limit dump size when sp is not within stack

 * [#6717](https://github.com/apache/incubator-nuttx/pull/#6717) arch: Call board_reset before up_irq_save and spin_trylock

 * [#6252](https://github.com/apache/incubator-nuttx/pull/#6252) arch/addrenv: Change text write enable/disable to generic mprot

 * [#6254](https://github.com/apache/incubator-nuttx/pull/#6254) arch: Remove board/libboard$(LIBEXT) from the rerequest of export_startup

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#



 * [#6062](https://github.com/apache/incubator-nuttx/pull/#6062) SAM3X HSMCI DMA Fixes

 * [#6059](https://github.com/apache/incubator-nuttx/pull/#6059) arch/risc-v/riscv_misaligned: Correct sw source register

 * [#6065](https://github.com/apache/incubator-nuttx/pull/#6065) RISC-V: Support for mtimer in S-mode

 * [#6054](https://github.com/apache/incubator-nuttx/pull/#6054) riscv/riscv_schedulesigaction.c: Remove the duplicate state saving

 * [#6051](https://github.com/apache/incubator-nuttx/pull/#6051) arch/risc-v: Add missing DMB to mtimer / setmtimecmp

 * [#6050](https://github.com/apache/incubator-nuttx/pull/#6050) RISC-V: Move mhartid to own assembly macro+function

 * [#6039](https://github.com/apache/incubator-nuttx/pull/#6039) arch/riscv: Move toolchain config to arch/risc-v/Kconfig like xtensa

 * [#6034](https://github.com/apache/incubator-nuttx/pull/#6034) arch/risc-v: Apply common mtime driver to mtime based chps

 * [#6022](https://github.com/apache/incubator-nuttx/pull/#6022) arch/risc-v: Apply misaligned access handler for k210/bl602

 * [#6006](https://github.com/apache/incubator-nuttx/pull/#6006) riscv/ESP32C3: Use the common exception handler

 * [#6020](https://github.com/apache/incubator-nuttx/pull/#6020) arch/riscv: Add mtimer driver

 * [#6008](https://github.com/apache/incubator-nuttx/pull/#6008) arch/risc-v: Attach exception handler in common place

 * [#5998](https://github.com/apache/incubator-nuttx/pull/#5998) arch/riscv: Minor style change and text correction

 * [#6003](https://github.com/apache/incubator-nuttx/pull/#6003) esp32c3: Simplify irq dispatch logic

 * [#5989](https://github.com/apache/incubator-nuttx/pull/#5989) arch/risc-v: Replace riscv_fault with riscv_exception

 * [#5970](https://github.com/apache/incubator-nuttx/pull/#5970) b-u585i-iot02a:nsh: Drop TrustedFirmware-M dependency

 * [#5974](https://github.com/apache/incubator-nuttx/pull/#5974) arch/risc-v: use STACK_FRAME_SIZE for in S-mode syscall asm

 * [#5980](https://github.com/apache/incubator-nuttx/pull/#5980) RISC-V: Fix file name of riscv_dispatch_syscall

 * [#5985](https://github.com/apache/incubator-nuttx/pull/#5985)  RISC-V: Combine 3 variables that depend on CPU amount into one

 * [#5981](https://github.com/apache/incubator-nuttx/pull/#5981) RISC-V: Fix usage of static_assert in riscv_percpu.c

 * [#5983](https://github.com/apache/incubator-nuttx/pull/#5983) arch/risc-v: Remove the unnecessary inclusion of board header files

 * [#5754](https://github.com/apache/incubator-nuttx/pull/#5754) arch/risc-v: Correct stack coloration in riscv_cpu_boot

 * [#5758](https://github.com/apache/incubator-nuttx/pull/#5758) RISC-V: Prepare CONFIG_BUILD_KERNEL part 1

 * [#5760](https://github.com/apache/incubator-nuttx/pull/#5760) ESP32-S3: Fix UART IRQ setup hardcoded to CPU 0 

 * [#5766](https://github.com/apache/incubator-nuttx/pull/#5766) arch/risc-v: Rework riscv_get_newintctx

 * [#5773](https://github.com/apache/incubator-nuttx/pull/#5773) risc-v/esp32c3: Remove deprecated option for disabling atomics support

 * [#5775](https://github.com/apache/incubator-nuttx/pull/#5775) arch/risc-v: Merge riscv_getnewintctx into common

 * [#5781](https://github.com/apache/incubator-nuttx/pull/#5781) phy62xx_exception: using armv6-m exception_common code

 * [#5782](https://github.com/apache/incubator-nuttx/pull/#5782) RISC-V: Implement option to run NuttX in supervisor mode (S-mode)

 * [#5809](https://github.com/apache/incubator-nuttx/pull/#5809) fixed mpu9250 not work on i2c bus issue.

 * [#5765 ](https://github.com/apache/incubator-nuttx/pull/#5765) esp32 efuse build fix

 * [#5772](https://github.com/apache/incubator-nuttx/pull/#5772) arch/Kconfig: Don't depend on Xtensa for the SUPPRESS_CLOCK_CONFIG option

 * [#5825](https://github.com/apache/incubator-nuttx/pull/#5825) ESP32-S3: Enable GPIO read/write operations and interrupts support

 * [#5827](https://github.com/apache/incubator-nuttx/pull/#5827) Add SPIRAM to ESP32-S2

 * [#5829](https://github.com/apache/incubator-nuttx/pull/#5829) RISC-V: Add/fix implementation for arch_elf.c

 * [#5830](https://github.com/apache/incubator-nuttx/pull/#5830) risc-v/qemu-rv: Restore FPU context after context switch

 * [#5831](https://github.com/apache/incubator-nuttx/pull/#5831) RISC-V: Add kernel stack

 * [#5833](https://github.com/apache/incubator-nuttx/pull/#5833) ESP32-S2: Remove unused and unsupported configs from Kconfig

 * [#5834](https://github.com/apache/incubator-nuttx/pull/#5834) ESP32-S2: Initialize instruction cache on startup

 * [#5878](https://github.com/apache/incubator-nuttx/pull/#5878) arch/risc-v: Use riscv_fpuconfig to enable FPU

 * [#5898](https://github.com/apache/incubator-nuttx/pull/#5898) riscv/bl602: Implement SPI Cmd/Data

 * [#5957](https://github.com/apache/incubator-nuttx/pull/#5957) risc-v/esp32c3: Fix regression on IRQ handling for ECALL instruction

 * [#5905](https://github.com/apache/incubator-nuttx/pull/#5905) arch/risc-v: Store/Restore FPU register in exception_common

 * [#5795](https://github.com/apache/incubator-nuttx/pull/#5795) ESP32-S3: Clean up and improve GPIO driver interface

 * [#5838](https://github.com/apache/incubator-nuttx/pull/#5838) esp32/Make.defs: Organise common arch files and chip files appropriately

 * [#5868](https://github.com/apache/incubator-nuttx/pull/#5868) arch/risc-v: Move fpu [re]store to common place

 * [#5869](https://github.com/apache/incubator-nuttx/pull/#5869) riscv/bl602: Enable SPI Master in SPI Poll Send

 * [#5907](https://github.com/apache/incubator-nuttx/pull/#5907)riscv/bl602: Remove check for LCD driver

 * [#5908](https://github.com/apache/incubator-nuttx/pull/#5908) riscv/esp32c3: Remove check for LCD driver

 * [#5746](https://github.com/apache/incubator-nuttx/pull/#5746) RISCV: Fix nasty bug in PMP region test

 * [#5842](https://github.com/apache/incubator-nuttx/pull/#5842) arch/risc-v: improve style consistency accross chip variants

 * [#5913](https://github.com/apache/incubator-nuttx/pull/#5913)arch/risc-v: Move group_addrenv to correct place

 * [#5922](https://github.com/apache/incubator-nuttx/pull/#5922) arch/risc-v: get wider visibility for arch instruction macros

 * [#5940](https://github.com/apache/incubator-nuttx/pull/#5940) arch/risc-v: Add handler for misaligned load/store

 * [#5917](https://github.com/apache/incubator-nuttx/pull/#5917) arch/risc-v: move REGLOAD/REGSTORE macro to riscv_internal.h

 * [#6217](https://github.com/apache/incubator-nuttx/pull/#6217)riscv/pmp: fix bug: PMP_CFG_FLAG_MASK makes pmp cfg fail

 * [#6192](https://github.com/apache/incubator-nuttx/pull/#6192) Riscv hostfs

 * [#6235](https://github.com/apache/incubator-nuttx/pull/#6235) RISC-V: add C++ support to crt0

 * [#5731](https://github.com/apache/incubator-nuttx/pull/#5731) arch/risc-v: Improve speed of context switch

 * [#6255](https://github.com/apache/incubator-nuttx/pull/#6255) arch/riscv: Remove & ~1 before assign signal_handler to REG_EPC

 * [#6237](https://github.com/apache/incubator-nuttx/pull/#6237) arch: risc-v: Enable FPU for qemu-rv only if EXPERIMENTAL=y

 * [#6242](https://github.com/apache/incubator-nuttx/pull/#6242) rv-virt:knsh64

 * [#6690](https://github.com/apache/incubator-nuttx/pull/#6690) Ability to use newer pico-sdk with RP2040 builds (Issue #4919)

 * [#6249](https://github.com/apache/incubator-nuttx/pull/#6249) risc-v/mpfs: introduce IHC driver

 * [#6776](https://github.com/apache/incubator-nuttx/pull/#6776) risc-v/mpfs: usb: configure fifos properly

 * [#6077](https://github.com/apache/incubator-nuttx/pull/#6077) arch/risc-v: Use fs status definition from csr.h

 * [#6095](https://github.com/apache/incubator-nuttx/pull/#6095) arch/risc-v: Remove FAR from chip and board folder

 * [#6101](https://github.com/apache/incubator-nuttx/pull/#6101) arch/risc-v: Change riscv_savefpu/riscv_loadfpu to macro

 * [#6102](https://github.com/apache/incubator-nuttx/pull/#6102) ARM/RISC-V: Fix xxx_assert from IRQ context

 * [#6115](https://github.com/apache/incubator-nuttx/pull/#6115) arch/risc-v: Don't clear reserved bits in fcsr in riscv_fpuconfig

 * [#6116](https://github.com/apache/incubator-nuttx/pull/#6116) arch/risc-v: Enable FPU for K210

 * [#6117](https://github.com/apache/incubator-nuttx/pull/#6117) arch/risc-v/riscv_misaligned: Implement float load/store support

 * [#6125](https://github.com/apache/incubator-nuttx/pull/#6125) arch: risc-v: Do not enable FPU for K210 with QEMU

 * [#6126](https://github.com/apache/incubator-nuttx/pull/#6126) arch/risc-v: add support for GCC LTO

 * [#6156](https://github.com/apache/incubator-nuttx/pull/#6156) riscv/Makefile: Delete old target used for debugging

 * [#6162](https://github.com/apache/incubator-nuttx/pull/#6162) RISC-V PMP: Restrict Fence instruction for chips that support S-mode

 * [#6191](https://github.com/apache/incubator-nuttx/pull/#6191) RISC-V: Fix crt0 file compilation

 * [#6194](https://github.com/apache/incubator-nuttx/pull/#6194) RISC-V: Fix bug in riscv_addrenv.c

 * [#6052](https://github.com/apache/incubator-nuttx/pull/#6052) arch/riscv: Jump instead call riscv_dispatch_syscall

 * [#6131](https://github.com/apache/incubator-nuttx/pull/#6131) RISC-V: Add implementation for vfork

 * [#6134](https://github.com/apache/incubator-nuttx/pull/#6134) RISC-V: Fix system crash when FPU is in use

 * [#6145](https://github.com/apache/incubator-nuttx/pull/#6145) RISC-V: Add syscall support for vfork

 * [#6151](https://github.com/apache/incubator-nuttx/pull/#6151) RISC-V: workaround for the RV64 SoC which does not has mem mapped MTI...

 * [#6069](https://github.com/apache/incubator-nuttx/pull/#6069) RISC-V: Add support for CONFIG_BUILD_KERNEL

 * [#6005](https://github.com/apache/incubator-nuttx/pull/#6005) ESP32C3 TWAI (CAN) controller support.

 * [#5740](https://github.com/apache/incubator-nuttx/pull/#5740) Add ethernet support for risc-v/MPFS

 * [#5749](https://github.com/apache/incubator-nuttx/pull/#5749) risc-v/mpfs: usb: fix ep0 stall/resume and rx reads 

 * [#5783](https://github.com/apache/incubator-nuttx/pull/#5783) risc-v/mpfs: usb: fix ep0 read done

 * [#5881](https://github.com/apache/incubator-nuttx/pull/#5881) MPFS: Fix issue with external interrupt detection

 * [#5875](https://github.com/apache/incubator-nuttx/pull/#5875)MPFS: Fix error in flat build linker script

 * [#5912](https://github.com/apache/incubator-nuttx/pull/#5912) arch/risc-v/mpfs: Remove duplicated riscv_restorefpu

 * [#6060](https://github.com/apache/incubator-nuttx/pull/#6060) MPFS: Fix timer and exception/fault handling

 * [#6070](https://github.com/apache/incubator-nuttx/pull/#6070) MPFS: Set correct interrupt per mode (M-/S-mode) for mtimer

 * [#5993](https://github.com/apache/incubator-nuttx/pull/#5993) MPFS: Prepare support for S-mode

 * [#5780](https://github.com/apache/incubator-nuttx/pull/#5780) MPFS: Add board_memorymap.h

 * [#6160](https://github.com/apache/incubator-nuttx/pull/#6160) MPFS: Remove # CONFIG_ARCH_FPU is not set from defconfigs

 * [#6177](https://github.com/apache/incubator-nuttx/pull/#6177) MPFS: Add support for CONFIG_BUILD_KERNEL, adds icicle:knsh


 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#


 * [#5946](https://github.com/apache/incubator-nuttx/pull/#5946) arch/xtensa: Add xtensa_tcbinfo struct that contains helpful offsets

 * [#5877 ](https://github.com/apache/incubator-nuttx/pull/#5877) xtensa: add xtensa arch oneshot ops

 * [#5876](https://github.com/apache/incubator-nuttx/pull/#5876) xtensa: add xtensa_spill_window declaration

 * [#5820](https://github.com/apache/incubator-nuttx/pull/#5820) xtensa/esp32(s2)_user.c: Use macros defined in xtens_corebits.h

 * [#5771](https://github.com/apache/incubator-nuttx/pull/#5771) arch/xtensa: Don't always reset the APP CPU on startup

 * [#5979](https://github.com/apache/incubator-nuttx/pull/#5979) arch/xtensa: Build the xtensa_tcbinfo.c file for S2 and S3

 * [#5987](https://github.com/apache/incubator-nuttx/pull/#5987) xtensa/esp32: Add support to TWAI/CANBus

 * [#5941](https://github.com/apache/incubator-nuttx/pull/#5941) arch/xtensa: add syscall note support in the flat build

 * [#6167](https://github.com/apache/incubator-nuttx/pull/#6167) arch/xtensa: Replace the xcp context with stack context to improve context switching

 * [#6148](https://github.com/apache/incubator-nuttx/pull/#6148) arch/xtensa: Refactor assembly macros

 * [#6147](https://github.com/apache/incubator-nuttx/pull/#6147) arch/xtensa: Simply use xtensa_createstack for CPU1 idle task.

 * [#6136](https://github.com/apache/incubator-nuttx/pull/#6136) xtensa: Fix backtrace on exceptions

 * [#6122](https://github.com/apache/incubator-nuttx/pull/#6122) arch/xtensa: Color the other CPUs task when they are created

 * [#6111](https://github.com/apache/incubator-nuttx/pull/#6111) arch/xtensa: Use syscall interface for xtensa_save/restore_context

 * [#6109](https://github.com/apache/incubator-nuttx/pull/#6109) arch/sparc,xtensa: Control output by $(Q) as other arch

 * [#6222](https://github.com/apache/incubator-nuttx/pull/#6222) xtensa: move fpu register to XCPTCONTEXT_REGS

 * [#6231](https://github.com/apache/incubator-nuttx/pull/#6231) xtensa_sigtramp.S: Remove unnecessary entry instruction

 * [#6203](https://github.com/apache/incubator-nuttx/pull/#6203) xtensa/xtensa_coproc.S: Use the first allocated memory to save A0

 * [#5790](https://github.com/apache/incubator-nuttx/pull/#5790) xtensa_coporc: Adjust stack frame for C callable coprocessor functions

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)



 * [#6233](https://github.com/apache/incubator-nuttx/pull/#6233) Tiva qemu

 * [#5151](https://github.com/apache/incubator-nuttx/pull/#5151)Tiva CAN driver

 * [#6244](https://github.com/apache/incubator-nuttx/pull/#6244) Fix broken tiva_gpioirqclear

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#



 * [#5815](https://github.com/apache/incubator-nuttx/pull/#5815) defconfig: add Lua configs for sim and teensy-4.x


 * [#6765](https://github.com/apache/incubator-nuttx/pull/#6765) arm/backtrace: use sp unwind if FRAME_POINTER is enabled on thumb mode

 * [#6208](https://github.com/apache/incubator-nuttx/pull/#6208) arm: Refine the common Make.defs

 * [#6071](https://github.com/apache/incubator-nuttx/pull/#6071) arm/rtl8720c: Remove up_getsp which is already implemented in arch/arm/arch.h

 * [#6072](https://github.com/apache/incubator-nuttx/pull/#6072) arm/armv7-[a|r]: move fpu save/restore to assembly handler

 * [#6048](https://github.com/apache/incubator-nuttx/pull/#6048) arm/armv8-m: indicating no low-overhead-loop predication by default

 * [#6042](https://github.com/apache/incubator-nuttx/pull/#6042) arch/arm: Move FPU initialization to common place

 * [#6001](https://github.com/apache/incubator-nuttx/pull/#6001) arm/armv[7|8]-m: skip the fpu save/restore if stack frame is integer-only

 * [#5752](https://github.com/apache/incubator-nuttx/pull/#5752) arch: cxd56xx: Fix critical section in serial transmission

 * [#5761](https://github.com/apache/incubator-nuttx/pull/#5761) arch/arm: Remove the code copy register from xcpt to stack

 * [#5774](https://github.com/apache/incubator-nuttx/pull/#5774) arch/arm: set the SP to stack top

 * [#5824](https://github.com/apache/incubator-nuttx/pull/#5824) arch/arm/src/stm32l4: peripheral voltage monitor support for vddio2

 * [#5863](https://github.com/apache/incubator-nuttx/pull/#5863) arch/arm: Change arm_arch.h to arm_internal.h in arm_perf.c

 * [#5870](https://github.com/apache/incubator-nuttx/pull/#5870) arch/armv7-a: Fix a typo in Toolchain.defs

 * [#5845](https://github.com/apache/incubator-nuttx/pull/#5845) armv8-m: make the securefault handled by non-securefult

 * [#5850](https://github.com/apache/incubator-nuttx/pull/#5850) armv7-m/armv8-m: move up_pref* api to common place

 * [#5745](https://github.com/apache/incubator-nuttx/pull/#5745) arch/arm/samv7/sam_tc: implement timer driver support

 * [#5896](https://github.com/apache/incubator-nuttx/pull/#5896) arm/cortex-[a|r]: IRQ Switch return should with shadow SPSR

 * [#5897](https://github.com/apache/incubator-nuttx/pull/#5897) ESP32{S2/S3/C3}: Enable support for C++ applications

 * [#5918](https://github.com/apache/incubator-nuttx/pull/#5918) arm/chip: add backtrace support for all chips that support thumb instruction set

 * [#6079](https://github.com/apache/incubator-nuttx/pull/#6079) arm/arch: using __builtin_frame_address(0) implement up_getsp()

 * [#6076](https://github.com/apache/incubator-nuttx/pull/#6076) arch/armv[7|8]m: enhance the clang support

 * [#6073](https://github.com/apache/incubator-nuttx/pull/#6073) arch/arm: Remove all lazy fpu related code

 * [#6057](https://github.com/apache/incubator-nuttx/pull/#6057) arch/stm32h7: Add SocketCAN FDCAN driver

 * [#6091](https://github.com/apache/incubator-nuttx/pull/#6091) arch/arm: Move arm_signal_dispatch.c to common folder

 * [#6165](https://github.com/apache/incubator-nuttx/pull/#6165) arch/arm/Make.defs: unify common source include

 * [#6123](https://github.com/apache/incubator-nuttx/pull/#6123) arch/arm: add support for GCC LTO

 * [#6114](https://github.com/apache/incubator-nuttx/pull/#6114) arm/armv[7|8]m: compare of hardware fp registers should skip REG_FP_RESERVED

 * [#6107](https://github.com/apache/incubator-nuttx/pull/#6107) armv7/r:cp15_cache_all: fix error in LineSize 'r5' mask

 * [#6099](https://github.com/apache/incubator-nuttx/pull/#6099) arch/armv7-[a|r]: correct the handing of group env switch

 * [#6097](https://github.com/apache/incubator-nuttx/pull/#6097) arch/armv[7|8]-m: Unify the toolchain definition of eabi/clang/iar for linux and windows

 * [#6096](https://github.com/apache/incubator-nuttx/pull/#6096) arch/arm: Remove unneeded group_addrenv call which handled by arm_doirq

 * [#6093](https://github.com/apache/incubator-nuttx/pull/#6093) arch/arm: Remove FAR and CODE from common/ and arm*/ folder

 * [#6092](https://github.com/apache/incubator-nuttx/pull/#6092) arch/arm: Remove FAR and CODE from chip and board folder

 * [#6198](https://github.com/apache/incubator-nuttx/pull/#6198) armv7-a: smp: fix stack coloration

 * [#6185](https://github.com/apache/incubator-nuttx/pull/#6185) arm/cxd56xx/lc823450: replace arch testset to board implement

 * [#6178](https://github.com/apache/incubator-nuttx/pull/#6178) armv7-a/r: use cps instruction to change cpu mode

 * [#6163](https://github.com/apache/incubator-nuttx/pull/#6163) arm/arch_setjmp.S: armv6m support setjmp, longjmp

 * [#6103](https://github.com/apache/incubator-nuttx/pull/#6103) arm: Remove or merge assembly code as much as possible

 * [#6214](https://github.com/apache/incubator-nuttx/pull/#6214) armv7-a: smp: allocate page table for each cpu

 * [#6213](https://github.com/apache/incubator-nuttx/pull/#6213) arm/cortex-m/toolchain: try print runtime library only in clang

 * [#6211](https://github.com/apache/incubator-nuttx/pull/#6211) armv7-a: Inner Shareable TLB maintenance operations

 * [#6225](https://github.com/apache/incubator-nuttx/pull/#6225) arm/tlsr82: pwm driver optimize and add pulse count support

 * [#6238](https://github.com/apache/incubator-nuttx/pull/#6238) tlsr82/tc32: optimize the irq process

 * [#6234](https://github.com/apache/incubator-nuttx/pull/#6234) arm/tc32/Make.defs: filter-out arm_udelay.c

 * [#6736](https://github.com/apache/incubator-nuttx/pull/#6736) arm/allocateheap: fix multiple definition of 'up_allocate_heap'

 * [#6659](https://github.com/apache/incubator-nuttx/pull/#6659) arch/arm/samv7: fix SPI 16-bit transactions in DMA mode

 * [#6676](https://github.com/apache/incubator-nuttx/pull/#6676) arm_secure_irq: fix NVIC_IRQ_DBGMONITOR un-secure set failed

 * [#5645](https://github.com/apache/incubator-nuttx/pull/#5645) arch/arm: optimize context switch speed

 * [#5662](https://github.com/apache/incubator-nuttx/pull/#5662) arch/arm: Move ARCHCPUFLAGS to Toolchain.defs

 * [#6228](https://github.com/apache/incubator-nuttx/pull/#6228) arch/arm: Fix target 'arm_fpuconfig.o' given more than once in the same rule

 * [#6201](https://github.com/apache/incubator-nuttx/pull/#6201) Restore lost flash define for stm32

 * [#3488](https://github.com/apache/incubator-nuttx/pull/#3488) stm32h7: Adds tickless support

 * [#6772](https://github.com/apache/incubator-nuttx/pull/#6772) arch/stm32f7/stm32_tim.c: include the missing RCC header

 * [#6771](https://github.com/apache/incubator-nuttx/pull/#6771) arch/stm32xx/Kconfig: simplify and unify PWM options

 * [#6757](https://github.com/apache/incubator-nuttx/pull/#6757) STM32L4 DAC: Implements basic support for low level operations

 * [#6741](https://github.com/apache/incubator-nuttx/pull/#6741) stm32wb/mbox: fixing TX buffer queue

 * [#6739](https://github.com/apache/incubator-nuttx/pull/#6739) boards/arm/stm32/common/src: Fix mistakes in comments, snerr and syslog

 * [#6732](https://github.com/apache/incubator-nuttx/pull/#6732) Multiple stm32wl5jc flash usage improvements

 * [#6775](https://github.com/apache/incubator-nuttx/pull/#6775) arch/stm32/stm32_foc.c: fix some ADC and PWM ifdefs

 * [#6769](https://github.com/apache/incubator-nuttx/pull/#6769) arch/stm32f0l0g0: add SPI3 support (STM32G0B0 chips)

 * [#6218](https://github.com/apache/incubator-nuttx/pull/#6218) STM32F746G-Disco, Audiosupport, Bugfix

 * [#6715](https://github.com/apache/incubator-nuttx/pull/#6715) stm32wb: adding BLE support 

 * [#6729](https://github.com/apache/incubator-nuttx/pull/#6729)stm32f7: add showprogress in __start

 * [#6078](https://github.com/apache/incubator-nuttx/pull/#6078) Stm32f746 audio 

 * [#6788](https://github.com/apache/incubator-nuttx/pull/#6788) LPC17xx_40xx PWM multichannel support

 * [#6758](https://github.com/apache/incubator-nuttx/pull/#6758) LPC17_40 CAN driver SocketCAN support

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)


 * [#6790](https://github.com/apache/incubator-nuttx/pull/#6790) Several IMXRT fixes

 * [#6786](https://github.com/apache/incubator-nuttx/pull/#6786) IMX.RT EDMA Support

 * [#6787](https://github.com/apache/incubator-nuttx/pull/#6787) imxrt: Ethernet Cleanup and extend support for ETH1 or ETH2 and LAN8742A

 * [#](https://github.com/apache/incubator-nuttx/pull/#)

 * [#](https://github.com/apache/incubator-nuttx/pull/#)



 * [#6675](https://github.com/apache/incubator-nuttx/pull/#6675) sim: idle pm should do PM_RESOTRE in critical section

 * [#6689](https://github.com/apache/incubator-nuttx/pull/#6689) sim: Increased priority of loop task

 * [#6792](https://github.com/apache/incubator-nuttx/pull/#6792) sim/adb: Enable ping for test

 * [#5862](https://github.com/apache/incubator-nuttx/pull/#5862) arch/sim: Remove the unused SIM_TCNWAITERS from Kconfig

 * [#5923](https://github.com/apache/incubator-nuttx/pull/#5923) sim: Fix initialization of static C++ constructors when using glibc >= 2.34

 * [#5885](https://github.com/apache/incubator-nuttx/pull/#5885) sim/rptun: rsc must set rpmsg_vdev.config_len

 * [#5756](https://github.com/apache/incubator-nuttx/pull/#5756) sim: Enable garbage collection of unused input sections

 * [#5988](https://github.com/apache/incubator-nuttx/pull/#5988) arch/sim: support simulator keyboard devices

 * [#6043](https://github.com/apache/incubator-nuttx/pull/#6043) sim: bt: Add specific bluetooth HCI number id

Driver Support

Bug Fixes

 * [#6068](https://github.com/apache/incubator-nuttx/pull/#6068) driver/mmcsdio: do not hold the semaphore on interrupt context

 * [#6019](https://github.com/apache/incubator-nuttx/pull/#6019) power/governor: Remove the duplicated function prototype

 * [#6021](https://github.com/apache/incubator-nuttx/pull/#6021) Test/wm8904balance

 * [#6018](https://github.com/apache/incubator-nuttx/pull/#6018) Increase audio_comp driver flexibility

 * [#5927](https://github.com/apache/incubator-nuttx/pull/#5927) Minor improve for mmcsd

 * [#5747](https://github.com/apache/incubator-nuttx/pull/#5747) drivers/timers: rename notification parameter oneshot to periodic

 * [#5849](https://github.com/apache/incubator-nuttx/pull/#5849) pm: remove unnecessary depends on OSINIT_OS_READY

 * [#5853](https://github.com/apache/incubator-nuttx/pull/#5853) driver/syslog: Add microseconds after date time

 * [#5901](https://github.com/apache/incubator-nuttx/pull/#5901) power: unify lock sates and move pm_auto_update to outer dir

 * [#5990](https://github.com/apache/incubator-nuttx/pull/#5990) fix uinput rpmsg logic error

 * [#5816](https://github.com/apache/incubator-nuttx/pull/#5816) drivers/mtd/mtd_config: set different format versions for named and ID modes

 * [#5736](https://github.com/apache/incubator-nuttx/pull/#5736) driver/uinput: add cross core control function

 * [#6127](https://github.com/apache/incubator-nuttx/pull/#6127) pm: Move pm_initialize call from driver_initialize to xxx_pminitialize

 * [#6053](https://github.com/apache/incubator-nuttx/pull/#6053) drivers: remove unimplemented open/close/ioctl interfaces

 * [#6157](https://github.com/apache/incubator-nuttx/pull/#6157) drivers: mtd: fix null buffer reference

 * [#6159](https://github.com/apache/incubator-nuttx/pull/#6159) driver/ioexpander: remove response about irq_handler

 * [#6186](https://github.com/apache/incubator-nuttx/pull/#6186) Stm32f746 audio

 * [#6164](https://github.com/apache/incubator-nuttx/pull/#6164) drivers/audio/cxd56: Workaround for HW issue of CXD56

 * [#6655](https://github.com/apache/incubator-nuttx/pull/#6655) driver/syslog: support syslog_rpmsg client and server chardev

 * [#6657](https://github.com/apache/incubator-nuttx/pull/#6657) drivers/lcd/st7789: update putarea() method

 * [#6661](https://github.com/apache/incubator-nuttx/pull/#6661) drivers/syslog: Call up_nputs in syslog_default_write

 * [#6668](https://github.com/apache/incubator-nuttx/pull/#6668) driver/ioe_rpmsg: split server and client ept_cb to simplify code

 * [#6246](https://github.com/apache/incubator-nuttx/pull/#6246) drivers/sdio: Call SDIO_LOCK before and after the transaction

 * [#5736](https://github.com/apache/incubator-nuttx/pull/#5736) driver/uinput: add cross core control function

 * [#5718](https://github.com/apache/incubator-nuttx/pull/#5718) drivers/can: optimize can driver reader side

 * [#6789](https://github.com/apache/incubator-nuttx/pull/#6789) drivers/net: make sure that net driver d_buf is 16-bit aligned

 * [#6708](https://github.com/apache/incubator-nuttx/pull/#6708) driver/sensors[2]: enhance and update sensor driver

 * [#6703](https://github.com/apache/incubator-nuttx/pull/#6703) driver/sensor: add calibrate interface for sensor driver

 * [#6704](https://github.com/apache/incubator-nuttx/pull/#6704) driver/sensors: enhance sensor driver

 * [#6696](https://github.com/apache/incubator-nuttx/pull/#6696) driver/sensor: add sensor type of cap and wake_gesture

 * [#6698](https://github.com/apache/incubator-nuttx/pull/#6698) driver/power:add ioctl cmd for voltage info and protocol and add update event mask

 * [#6727](https://github.com/apache/incubator-nuttx/pull/#6727) power: add PM_IDLE_DOMAIN to pm.h and remove definations

 * [#6759](https://github.com/apache/incubator-nuttx/pull/#6759) drivers: Reorganize the power related code layout

 * [#6748](https://github.com/apache/incubator-nuttx/pull/#6748) power/axp202: Replace battery_charger_operations_s * with battery_charger_dev_s

 * [#6761](https://github.com/apache/incubator-nuttx/pull/#6761) drivers/wireless/gs2200m: Fix short bit length

 * [#6743](https://github.com/apache/incubator-nuttx/pull/#6743) drivers/battery: Handle the early changed event correctly

 * [#6673](https://github.com/apache/incubator-nuttx/pull/#6673) power related update

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#


New Driver Support

 * [#6030](https://github.com/apache/incubator-nuttx/pull/#6030)  Add Sensirion's SCD41 driver and minor fix

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

Drivers With Significant Improvements

Board Support

Significant Improvements

New Board Support

 * [#6216](https://github.com/apache/incubator-nuttx/pull/#6216) Nucleo G474RE board support including USB Full Speed Device

 * [#6754](https://github.com/apache/incubator-nuttx/pull/#6754) NXP S32K1XX: add initial support for NXP RDDRONE-BMS772 board

 * [#6730](https://github.com/apache/incubator-nuttx/pull/#6730) boards/stm32f7: add intial support for ST steval-eth001v1 board

 * [#6691](https://github.com/apache/incubator-nuttx/pull/#6691) boards: add initial support for ST steval-stlcs01v1

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

Boards With Significant Improvements

* [#6036](https://github.com/apache/incubator-nuttx/pull/#6036) arch, boards: cxd56xx: Minor update for spresense

* [#6074](https://github.com/apache/incubator-nuttx/pull/#6074) boards/arm/a1x: Remove the check CONFIG_ARCH_FPU around arm_fpuconfig

* [#5964](https://github.com/apache/incubator-nuttx/pull/#5964) boards/nucleo-f446re: support for SystemView

 * [#5964](https://github.com/apache/incubator-nuttx/pull/#5964) boards/nucleo-f446re: support for SystemView

 * [#5788](https://github.com/apache/incubator-nuttx/pull/#5788) boards/arm/samv7/same70-qmtech: add gpio driver support

 * [#5812](https://github.com/apache/incubator-nuttx/pull/#5812) esp32s3-devkit/spiflash: Use SmartFS instead of LittleFS

 * [#5817](https://github.com/apache/incubator-nuttx/pull/#5817) boards/arm/same70-qmtech: Remove dead code

 * [#5841](https://github.com/apache/incubator-nuttx/pull/#5841) esp32s3-devkit: Fix the number of memory regions in some configurations

 * [#5909](https://github.com/apache/incubator-nuttx/pull/#5909) boards/boardctl:common boardctl to read reset cause

 * [#5751](https://github.com/apache/incubator-nuttx/pull/#5751) boards/sim/adb: Enable CONFIG_ADBD_SOCKET_SERVICE

 * [#5763](https://github.com/apache/incubator-nuttx/pull/#5763) boards: sabre-6quad: Enable environ and path in knsh/defconfig

 * [#5839](https://github.com/apache/incubator-nuttx/pull/#5839) boards: rv-virt: Fix stack corruption for rv64 config

 * [#5860](https://github.com/apache/incubator-nuttx/pull/#5860) boards/arm/uid: fix pointer to int compare

 * [#5895](https://github.com/apache/incubator-nuttx/pull/#5895) boards: correct path to RCRAWS files during file copy

 * [#5785](https://github.com/apache/incubator-nuttx/pull/#5785) boards/arm/samv7: define MTD progmem partitions at board level

 * [#5787](https://github.com/apache/incubator-nuttx/pull/#5787) boards/arm/samv7/same70-qmtech: add /dev/timer0 support

 * [#5804](https://github.com/apache/incubator-nuttx/pull/#5804) boards/arm/samv7/samv71-xult: Fix mcuboot update example missing config

 * [#6142](https://github.com/apache/incubator-nuttx/pull/#6142) boards: Switch the elf link script to binfmt/libelf/gnu-elf.ld

 * [#6199](https://github.com/apache/incubator-nuttx/pull/#6199) boards/space: Remove the unneeded XXXEXT definition

 * [#6138](https://github.com/apache/incubator-nuttx/pull/#6138) boards/boardctl: correct boarctl return value

 * [#6141](https://github.com/apache/incubator-nuttx/pull/#6141) boards/risc-v: Remove "MAXOPTIMIZATION = -Os" from Make.defs

 * [#6143](https://github.com/apache/incubator-nuttx/pull/#6143) boards: Move -fno-common from Make.defs to Toolchain.defs

 * [#6144](https://github.com/apache/incubator-nuttx/pull/#6144) boards: Move -g from Make.defs to Toolchain.defs 

 * [#6146](https://github.com/apache/incubator-nuttx/pull/#6146) boards: Move "-fno-exceptions -fcheck-new" from Make.defs to Toolchain.defs

 * [#6155](https://github.com/apache/incubator-nuttx/pull/#6155) boards: Move -fno-strict-aliasing from Make.defs to Toolchain.defs

 * [#6195](https://github.com/apache/incubator-nuttx/pull/#6195) boards: rv-virt: Add support ELF to nsh and nsh64 defconfigs

 * [#6075](https://github.com/apache/incubator-nuttx/pull/#6075) boards/esp32_twai: Remove arm_arch.h from comment

 * [#6081](https://github.com/apache/incubator-nuttx/pull/#6081) boards/sim: support rc.sysinit

 * [#6654](https://github.com/apache/incubator-nuttx/pull/#6654) boardctl:add reset subreason restore factory

 * [#6744](https://github.com/apache/incubator-nuttx/pull/#6744) boards/stm32wb/ble: adding nimble config

 * [#6752](https://github.com/apache/incubator-nuttx/pull/#6752) NXP S32K1XX: fix LPI2C reset

 * [#6753](https://github.com/apache/incubator-nuttx/pull/#6753) NXP S32K1XX boards: add up_perf_init to support SEGGER SystemView

 * [#6798](https://github.com/apache/incubator-nuttx/pull/#6798) board/cxd56xx/audio: Fix CXD56 audio initialization

 * [#5033](https://github.com/apache/incubator-nuttx/pull/#5033) boards/arm/samv7: Update mcuboot configs

 * [#6692](https://github.com/apache/incubator-nuttx/pull/#6692) stm32f0l0g0: fixes for SPI half duplex

 * [#6693](https://github.com/apache/incubator-nuttx/pull/#6693) boards/stm32g071b-disco: add ina230 support and gpio dev support

 * [#6694](https://github.com/apache/incubator-nuttx/pull/#6694) esp32s3-devkit: Add support to discrete 5-way joystick

 * [#6764](https://github.com/apache/incubator-nuttx/pull/#6764) boards: spresense: Reduce power consumption with LTE board

 * [#6777](https://github.com/apache/incubator-nuttx/pull/#6777) boards: Enable thread local storage for some config

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#

 * [#](https://github.com/apache/incubator-nuttx/pull/#




File System

Bug Fixes

Significant Improvements

Networking

Applications

Improvements

Bug Fixes

Security Issues Fixed In This Release

Compatibility Concerns

Changes to Build System

Known Problems In This Release

More Information

How to Download

Release artifacts for all current and past NuttX releases can be downloaded at:

How to Clone the Git Repository

The Apache NuttX project uses Git SCM as its version control system.

There are two primary repositories:

The main "Single Source of Truth" repositories are hosted by the ASF:

These are synchronized with repositories hosted at GitHub:

How to Contact the Community

The main forum for project communication, to ask a question, get involved, or contribute to NuttX, is our mailing list, dev@nuttx.apache.org. The list is publicly archived and searchable at https://lists.apache.org/list.html?dev@nuttx.apache.orgFor more information, see NuttX Community.

Enthusiastic Contributors Welcome!

NuttX is a free open-source project. If you'd like to participate, whether it's to enhance documentation (even these release notes) or dive into the nitty gritty of some low-level drivers, please join us! You can join the conversation at our dev mailing list by emailing dev-subscribe@nuttx.apache.org. The mailing list is open to the public and archived. You can browse older messages at https://lists.apache.org/list.html?dev@nuttx.apache.org.