| 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 |
* [#17056](https://github.com/apache/nuttx/pull/17056) sched: add stack overflow check on switch context * [#17121](https://github.com/apache/nuttx/pull/17121) sched: Improve nxsched stack overflow checking implementation * [#17075](https://github.com/apache/nuttx/pull/17075) sched: merge nxsched_switch_context and add nxsched_switch_critmon * [#16933](https://github.com/apache/nuttx/pull/16933) sched: remove csection in event * [#17266](https://github.com/apache/nuttx/pull/17266) sched: replace spinlock/sched_lock with spin_lock_irqsave_nopreempt * [#17060](https://github.com/apache/nuttx/pull/17060) sched: use nxsched_switch_context to unify the calls to nxsched_suspend_scheduler and nxsched_resume_scheduler * [#17326](https://github.com/apache/nuttx/pull/17326) sched/clock: Only allow clock_systime_ticks() to access g_system_ticks * [#17104](https://github.com/apache/nuttx/pull/17104) sched/clock: remove return value of clock_systime_timespec() * [#17176](https://github.com/apache/nuttx/pull/17176) sched/clock: remove unused function clock_dow() (dow:day of week) * [#16920](https://github.com/apache/nuttx/pull/16920) sched/event: add nxevent_clear api * [#16993](https://github.com/apache/nuttx/pull/16993) sched/event: add nxevent_getmask api * [#16990](https://github.com/apache/nuttx/pull/16990) sched/event: fix event bug after csection was removed by PR 16933 * [#17272](https://github.com/apache/nuttx/pull/17272) sched/event: Fix uninitialized need_switch flag issue in event_post() * [#16942](https://github.com/apache/nuttx/pull/16942) sched/event: move the temporary even_wait variable out of nxevent_tickwait * [#16919](https://github.com/apache/nuttx/pull/16919) sched/init/nx_bringup.c: Add support for CONFIG_INIT_NONE in a flat build * [#17110](https://github.com/apache/nuttx/pull/17110) sched/irq: add a check for the interrupt stack in irq_dispatch * [#17190](https://github.com/apache/nuttx/pull/17190) sched/irq: fixed some issues with irq stack overflow detection * [#16944](https://github.com/apache/nuttx/pull/16944) sched/semaphore: add support to customize semaphore max allowed value * [#17222](https://github.com/apache/nuttx/pull/17222) sched/sched: add nxsched_wakeup(), introduce TSTATE_SLEEPING and improve nxsched_ticksleep() * [#17324](https://github.com/apache/nuttx/pull/17324) sched/sched: Fix nxsched_suspend() logic * [#17199](https://github.com/apache/nuttx/pull/17199) sched/sched: Replace nxsched_alarm_tick_expiration() with nxsched_tick_expiration() * [#17359](https://github.com/apache/nuttx/pull/17359) sched/signal: Fix nxsig_ismember() return value behavior * [#17367](https://github.com/apache/nuttx/pull/17367) sched/signal: Fix nxsig clockwait() implementation issue * [#17366](https://github.com/apache/nuttx/pull/17366) sched/signal: Initialize signal action pool during init phase * [#17252](https://github.com/apache/nuttx/pull/17252) sched/signal: Improve nxsig_wait_irq() for performance enhancement and code duplication reduction * [#17196](https://github.com/apache/nuttx/pull/17196) sched/signal: Remove shadow definitions to reduce unnecessary API * [#17212](https://github.com/apache/nuttx/pull/17212) sched/signal: use list_waitingforsignal() to access g_waitingforsignal * [#16939](https://github.com/apache/nuttx/pull/16939) sched/signal/sig_dispatch.c: Correct signal dispatch to specific thread * [#17263](https://github.com/apache/nuttx/pull/17263) sched/signal/sig_dispatch.c: Remove DEBUGASSERT(!sched_idletask()) * [#17130](https://github.com/apache/nuttx/pull/17130) sched/sig_pending: sigpending() should return caller pending signals only * [#17368](https://github.com/apache/nuttx/pull/17368) sched/sleep: Add nxsched_nanosleep() API * [#17200](https://github.com/apache/nuttx/pull/17200) sched/sleep: add support for scheduling sleep * [#17204](https://github.com/apache/nuttx/pull/17204) sched/sleep: replace all Signal-based sleep implement to Scheduled sleep * [#17106](https://github.com/apache/nuttx/pull/17106) sched/task: move lock to mhead scope * [#17293](https://github.com/apache/nuttx/pull/17293) sched/wdog: Fix wd_start() boundary check for WDOG_MAX_DELAY * [#17279](https://github.com/apache/nuttx/pull/17279) sched/wdog: Improve wdog precision * [#17295](https://github.com/apache/nuttx/pull/17295) sched/wdog: Introduce wd_restart()/wd_restart_next() for convenient watchdog restart * [#17159](https://github.com/apache/nuttx/pull/17159) sched/wdog: remove unnecessary list_node redefinition * [#17286](https://github.com/apache/nuttx/pull/17286) sched/wdog: Use list_in_list() to detect active watchdogs * [#17300](https://github.com/apache/nuttx/pull/17300) sched_lock: remove the check for whether tcb is NULL |
* [#17214](https://github.com/apache/nuttx/pull/17214) lib: Introduce the invariant-divisor fast division * [#17139](https://github.com/apache/nuttx/pull/17139) libc/crc: Add crc8rohcincr for incremental CRC8 ROHC calculation * [#16994](https://github.com/apache/nuttx/pull/16994) libc/fclose: Validate the user provided stream pointer * [#17129](https://github.com/apache/nuttx/pull/17129) libc/pthread/pthread_keydelete.c: reset key value * [#17380](https://github.com/apache/nuttx/pull/17380) libc/unistd: Replace pipe() macro with proper function implementation * [#17289](https://github.com/apache/nuttx/pull/17289) libs/libc: Fix Kconfig issue for ARMv8-R assembly implementations of memcpy and memset * [#17400](https://github.com/apache/nuttx/pull/17400) libs/libc/arm: add back __aeabi_mem* function |
* [#16969](https://github.com/apache/nuttx/pull/16969) Revert "codespellrc: add ans to ignore words" * [#16945](https://github.com/apache/nuttx/pull/16945) tools/checkpatch.sh: check format for all commits in patch * [#16968](https://github.com/apache/nuttx/pull/16968) tools/checkpatch.sh: fix check for HEAD commit * [#17335](https://github.com/apache/nuttx/pull/17335) tools/checkpatch.sh: Improved error display on GitHub * [#16974](https://github.com/apache/nuttx/pull/16974) tools/configure.sh: align tools/configure.sh with CmakeLists.tx |
* [#17020](https://github.com/apache/nuttx/pull/17020) cmake: add cmake disassembly support for GHS compiler * [#17198](https://github.com/apache/nuttx/pull/17198) cmake: correct nuttx_wildcard_sources cmake usage * [#17346](https://github.com/apache/nuttx/pull/17346) CMake: Enable both sub-Kconfig and generated menu Kconfig * [#17350](https://github.com/apache/nuttx/pull/17350) CMake: Enable Kconfig generation for external directories * [#17027](https://github.com/apache/nuttx/pull/17027) cmake: improve board specific Toolchain.cmake * [#17412](https://github.com/apache/nuttx/pull/17412) cmake: Improve nuttx_generate_kconfig() * [#17072](https://github.com/apache/nuttx/pull/17072) CMake: Move global compiler flags setting before add_executable() * [#17105](https://github.com/apache/nuttx/pull/17105) cmake: pass exclusion list to nuttx_add_subdirectory * [#17028](https://github.com/apache/nuttx/pull/17028) cmake: Provide better .hex and .srec gen for tasking compiler * [#17061](https://github.com/apache/nuttx/pull/17061) Cmake: Provide linker script preprocess for tasking compiler * [#17209](https://github.com/apache/nuttx/pull/17209) cmake: Remove redundant logic in CMake scripts * [#17210](https://github.com/apache/nuttx/pull/17210) cmake: Remove unused BUILD_OOTCPP guard from configuration. |
* [#17331](https://github.com/apache/nuttx/pull/17331) driver: AT25EE multi-device support * [#17182](https://github.com/apache/nuttx/pull/17182) drivers/1Wire: DS2XXX driver for various Maxim/Analog devices memories * [#16936](https://github.com/apache/nuttx/pull/16936) drivers/net: Add network driver for 10BASE-T1x SPI MAC-PHYs * [#17363](https://github.com/apache/nuttx/pull/17363) drivers/sensors: Add QST QMI8658 6-axis IMU sensor driver |
* [#17278](https://github.com/apache/nuttx/pull/17278) drivers/can: Fix buffer overrun and read failures * [#17360](https://github.com/apache/nuttx/pull/17360) drivers/can: message alignment for read and write operations * [#17136](https://github.com/apache/nuttx/pull/17136) drivers/can/ctucanfd_pci.c: refactor to use netdev_uperhalf * [#17135](https://github.com/apache/nuttx/pull/17135) drivers/can/kvaser_pci.c: refactor to use netdev_upperhalf * [#17344](https://github.com/apache/nuttx/pull/17344) drivers/eeprom: Set the bus frequency * [#17175](https://github.com/apache/nuttx/pull/17175) drivers/mtd/CMakeLists.txt: Aligned Cmake with Make * [#17388](https://github.com/apache/nuttx/pull/17388) drivers/mtd/w25: support custom SPI transfers delay * [#16999](https://github.com/apache/nuttx/pull/16999) drivers/net/mdio: add mdio bus * [#17378](https://github.com/apache/nuttx/pull/17378) drivers/pci: qemu_edu: fix arm32 build warning * [#17341](https://github.com/apache/nuttx/pull/17341) drivers/sensors: Fix Kconfig * [#17392](https://github.com/apache/nuttx/pull/17392) drivers/sensors: improvements for Kconfig * [#17076](https://github.com/apache/nuttx/pull/17076) drivers/sensors/ms56xx: Replace custom curtime with standard function * [#17267](https://github.com/apache/nuttx/pull/17267) drivers/syslog: Add early_syslog() for early boot or system down debugging * [#16982](https://github.com/apache/nuttx/pull/16982) drivers/syslog: let syslog_write() return the maximum bytes writen through a channel * [#17316](https://github.com/apache/nuttx/pull/17316) drivers/timers: Introduce clockcount, the time conversion API. [ClockDevice Part II] * [#17345](https://github.com/apache/nuttx/pull/17345) drivers/timers: Re-implemented timer drivers with the count-based oneshot API [ClockDevice Part V] * [#17221](https://github.com/apache/nuttx/pull/17221) drivers/timers/arch_alarm: Revert removal of ndelay_accurate * [#17178](https://github.com/apache/nuttx/pull/17178) drivers/usbdev: Aligned Cmake with Make * [#17180](https://github.com/apache/nuttx/pull/17180) drivers/usbhost: Aligned Cmake with Make * [#17247](https://github.com/apache/nuttx/pull/17247) drivers/usbhost_hub: Add support to Multiple TT HS HUB * [#17181](https://github.com/apache/nuttx/pull/17181) drivers/usbmisc: Aligned Cmake with Make * [#17174](https://github.com/apache/nuttx/pull/17174) drivers/wireless/ieee80211/bcm43xxx/CMakeLists.txt: Aligned Cmake with Make * [#17177](https://github.com/apache/nuttx/pull/17177) drivers/wireless/bluetooth: Aligned Cmake with Make |
* [#17128](https://github.com/apache/nuttx/pull/17128) fs/mmap/fs_mmap.c: add missing NULL pointer * [#17126](https://github.com/apache/nuttx/pull/17126) fs/mmap/fs_mmap.c: fix errno when fd is not valid * [#17125](https://github.com/apache/nuttx/pull/17125) fs/mmap/fs_mmap.c: MAP_PRIVATE or MAP_SHARED must be specified * [#17127](https://github.com/apache/nuttx/pull/17127) fs/mmap/fs_msync.c: don't flush changes if MAP_PRIVATE * [#17124](https://github.com/apache/nuttx/pull/17124) fs/mmap/fs_munmap.c: return error if len is 0 * [#17233](https://github.com/apache/nuttx/pull/17233) fs/fat: Ignore //... sequences in the file path * [#17348](https://github.com/apache/nuttx/pull/17348) fs/fat: Ignore multiple consecutive slashes in long file names * [#17264](https://github.com/apache/nuttx/pull/17264) vfs/fs_stat: set st_size on EEPROM character drivers |
* [#17244](https://github.com/apache/nuttx/pull/17244) [!] sched/event: removed event_tickwait_wait() and added TSTATE_WAIT_EVENT * [#17339](https://github.com/apache/nuttx/pull/17339) ! driver/timers: Remove oneshot callback, args and tick-based API. [ClockDevice Part III] |
Release artifacts for all current and past NuttX releases can be downloaded at:
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:
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.org. For more information, see NuttX Community.
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.