Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Major Changes to Core OS

New Features


Bug Fixes

Major Changes to the Build System

Parts of the build system have been refactored to reduce duplication and simplify Makefile and Make.defs files across many directories. These changes are particularly beneficial for boards.

Please note that if you develop your own custom boards, you may need to make some modifications to keep your board's build scripts up-to-date with the rest of NuttX and avoid a broken or defective build. For details, see Compatibility Concerns, Changes to Build System, in these release notes.

Architectural Support

New Architecture Support

Architectures With Significant Improvements

PR-745 The full line of STM32H7 chips are now defined

This adds support for these variants:

  • STM32H743AG
  • STM32H743AI
  • STM32H743BG
  • STM32H743BI
  • STM32H743IG
  • STM32H743II
  • STM32H743VG
  • STM32H743VI
  • STM32H743XG
  • STM32H743XI
  • STM32H743ZG
  • STM32H753AI
  • STM32H753BI
  • STM32H753VI
  • STM32H753XI
  • STM32H753ZI

PR-811 i486: Fix corruption of esp register on full context restore

This resolves a long standing issue with running the x86 port under QEMU where it would crash shorly after boot.

Driver Support

New Driver Support

PR-795 - An initial Nuttx audio driver supporting the Spresense CXD56

Drivers With Significant Improvements

Board Support

New Board Support

Boards With Significant Improvements

File System

PR-857 Wrong value for it_interval field in timespec returned by timer_gettime

PR-902 SMP: On task creation do not clone uninitialized descriptors

In SMP mode, there is a possibility that a pthread executing one CPU may create a new task while a pthread on another CPU has allocated the socket but not yet initialized it. This commit updates the socket clone test to assure that the socket is both allocated and initialized before it is cloned.

PR-911 Use OS signal functions internally to not reset errno that applications are using

Major Changes to the Build System

Parts of the build system have been refactored to reduce duplication and simplify Makefile and Make.defs files across many directories. These changes are particularly beneficial for boards.

Please note that if you develop your own custom boards, you may need to make some modifications to keep your board's build scripts up-to-date with the rest of NuttX and avoid a broken or defective build. For details, see Compatibility Concerns, Changes to Build System, in these release notes.

New Features

PR-894 openamp and libmetal can now be downloaded and configured by build system

Bug Fixes


Architectural Support

New Architecture Support

PR-879 Add armv8-m support

Architectures With Significant Improvements

PR-745 The full line of STM32H7 chips are now defined

This adds support for these variants:

  • STM32H743AG
  • STM32H743AI
  • STM32H743BG
  • STM32H743BI
  • STM32H743IG
  • STM32H743II
  • STM32H743VG
  • STM32H743VI
  • STM32H743XG
  • STM32H743XI
  • STM32H743ZG
  • STM32H753AI
  • STM32H753BI
  • STM32H753VI
  • STM32H753XI
  • STM32H753ZI

PR-811 i486: Fix corruption of esp register on full context restore

This resolves a long standing issue with running the x86 port under QEMU where it would crash shortly after boot.

PR-837 rx65n: Add crashdump support using standby RAM

PR-862 STM32L4: Expose LPTIM timers

PR-868 STM32L4: Extend clock options and power regulation for based on clock settings

  • Interface to select the core regulator voltage according to clock frequency range
  • Usage of this interface during clock configuration according to chosen clock frequency
  • Option to choose a different system clock than the main PLL (there is HSI, MSI, HSE and LSE available to use)
  • Option to not enable the main PLL which allows for reduced power usage when setting one of the above options as system clock, to do this you should define STM32L4_BOARD_NOPLL on your board header.

PR-905 x86_64: Resolve linking issue when building with gcc 7 and 9.

PR-904 x86_64: Resolve compiler aliasing warnings and RNG pointer cast bug

PR-919 sim: Add host mmap and perror to allow use of LIBC_MODLIB and BINFMT_LOADABLE

Driver Support

New Driver Support

PR-795 Initial NuttX audio driver supporting the Spresense CXD56

Drivers With Significant Improvements

PR-887 PR-888 rptun: Add control for independent control of rx and tx buffer size

PR-917 gs2200m: Receive performance improvement for TCP/UDP

Board Support

New Board Support

Boards With Significant Improvements

File System

Bug Fixes

PR-918 tmpfs: Calling statfs could cause files to be removed recursively

Significant Improvements

PR-793 Allow use of genromfs to geneate ROMFS

...

#include <nuttx/config.h>
#ifdef CONFIG_NSH_PROC_MOUNTPOINT
mount -t procfs CONFIG_NSH_PROC_MOUNTPOINT
#endif
#ifdef CONFIG_FS_TMPFS
mount -t tmpfs CONFIG_LIBC_TMPDIR
#endif
#ifndef CONFIG_NSH_DISABLE_UNAME
uname -a > /dev/syslog
#endif

Networking

PR-851 Upgrade littlefs to v2.2.1


Networking

PR-807 Netlink: Broadcast link status changes to userspace via RTNLGRP_LINK

PR-892 Netdb: Multiple DNS Servers

PR adds capability to add multiple nameservers on run-time even when not using resolv.conf and reset the list of nameservers back to default setting (no nameserver at all or single predefined nameserver in Kconfig). This is useful for applications that change their cellular network frequently.PR-807 Netlink: Broadcast link status changes to userspace via RTNLGRP_LINK

Applications

Improvements

PR-185 PR-828 nshlib: Rename sh to source

Bug Fixes

Security Issues Fixed In This Release

...