This is an automated email from the ASF dual-hosted git repository.
xiaoxiang781216 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
The following commit(s) were added to refs/heads/master by this push:
new 4977c28a3fa Documentation: add NuttX 13.0.1 release notes
4977c28a3fa is described below
commit 4977c28a3faf51319f5ed6cf073775c9a7111ef9
Author: Alin Jerpelea <[email protected]>
AuthorDate: Wed Aug 12 14:40:21 2026 +0200
Documentation: add NuttX 13.0.1 release notes
add release notes for NuttX 13.0.1 release
Signed-off-by: Alin Jerpelea <[email protected]>
---
Documentation/ReleaseNotes/NuttX-13.0.1 | 206 ++++++++++++++++++++++++++++++++
1 file changed, 206 insertions(+)
diff --git a/Documentation/ReleaseNotes/NuttX-13.0.1
b/Documentation/ReleaseNotes/NuttX-13.0.1
new file mode 100644
index 00000000000..8220ff22410
--- /dev/null
+++ b/Documentation/ReleaseNotes/NuttX-13.0.1
@@ -0,0 +1,206 @@
+NuttX-13.0.1
+------------
+
+What's New In This Release
+Changes to Core OS
+
+Sched
+[#19479](https://github.com/apache/nuttx/pull/19479) sched/backtrace: fix
cross-CPU buffer access under addrenv
+[#19487](https://github.com/apache/nuttx/pull/19487) sched: avoid dumping raw
memory at address 0 for tasks without kstack
+[#19544](https://github.com/apache/nuttx/pull/19544) sched/addrenv: do not
dereference a NULL address environment
+[#19563](https://github.com/apache/nuttx/pull/19563) sched/sched_critmonitor:
remove duplicate preemption start block
+[#19587](https://github.com/apache/nuttx/pull/19587) sched/sched: Fix
uninitialized sporadic params returned by nxsched_get_param()
+
+MM
+[#19581](https://github.com/apache/nuttx/pull/19581) mm/ubsan: fix signed
inline value decoding
+
+libs
+[#19444](https://github.com/apache/nuttx/pull/19444) libs/libc: Fix
divide-by-zero in stat() with large filesystem block sizes
+[#19497](https://github.com/apache/nuttx/pull/19497) lib/math32: Avoid
__uint128_t casts for LDC ImportC
+[#19513](https://github.com/apache/nuttx/pull/19513)
libs/libbuiltin/compiler-rt: skip unsupported Arm VFP builtins asm
+[#19516](https://github.com/apache/nuttx/pull/19516) libc/time: Fix POSIX
timezone string parsing
+
+Tools
+[#19477](https://github.com/apache/nuttx/pull/19477) tools/Zig.defs: Fix Zig
builds on sim:x86_64
+[#19566](https://github.com/apache/nuttx/pull/19566) tools/mkallsyms.py: let
the dependency error actually reach the user
+[#19569](https://github.com/apache/nuttx/pull/19569) tools: fix stale archive
members surviving a Kconfig-driven CSRCS change
+
+Various Improvements
+Audio
+[#19686](https://github.com/apache/nuttx/pull/19686) audio: fix private buffer
allocation and document the upper half
+Crypto
+[#19294](https://github.com/apache/nuttx/pull/19294) crypto: Support
SHA2_224_HMAC
+[#19396](https://github.com/apache/nuttx/pull/19396) crypto: Add standalone
CHACHA20 stream cipher on the unified enc path
+[#19403](https://github.com/apache/nuttx/pull/19403) crypto: add
CRYPTO_CHACHA20_DJB variant (64-bit counter/nonce)
+Syscall
+[#19727](https://github.com/apache/nuttx/pull/19727) syscall: add missing
memory locking and clock_getres entries
+Video
+[#19053](https://github.com/apache/nuttx/pull/19053) video/fb: Handle case of
multiple displays where some do not require update
+[#19466](https://github.com/apache/nuttx/pull/19466) video: fix EDID standard
timing decode
+[#19685](https://github.com/apache/nuttx/pull/19685) video/rgbcolors: Fix
RGBTO8 to use the high bits of each component
+
+Changes to the Build System
+Bug Fixes
+[#19464](https://github.com/apache/nuttx/pull/19464) cmake: Sanitize NAME for
_main symbol generation
+[#19507](https://github.com/apache/nuttx/pull/19507) cmake: Do not link an
executable to detect the compiler
+
+Architectural Support
+Bug Fixes
+[#19438](https://github.com/apache/nuttx/pull/19438) arch/common: fix
host_flags_to_mode() O_RDONLY sentinel collision
+ARM
+[#19565](https://github.com/apache/nuttx/pull/19565) arch/arm: carry CONTROL
over to the fork child on Cortex-M
+[#19486](https://github.com/apache/nuttx/pull/19486) arch/arm: set PSPLIM to
top of TLS region to protect it from overflow
+[#19691](https://github.com/apache/nuttx/pull/19691) arch/arm/kinetis/rtc:
Enable global lock for all
+[#19746](https://github.com/apache/nuttx/pull/19746) arch/arm/nrf53: fix I2C3
base
+[#19542](https://github.com/apache/nuttx/pull/19542) arch/arm/nrf52,nrf53:
don't pass HCI messages under the lock
+[#19378](https://github.com/apache/nuttx/pull/19378) arch/arm/rp2040,rp23xx:
fix CDC-NCM bulk/notify endpoint handling
+[#19452](https://github.com/apache/nuttx/pull/19452) arch/arm/rp2040/rp23xx:
implement endpoint stall queueing and GET_STATUS responses
+[#19574](https://github.com/apache/nuttx/pull/19574) arch/arm/rp2040/rp23xx:
order the USB BUFF_STATUS clear before the AVAILABLE re-arm
+[#19450](https://github.com/apache/nuttx/pull/19450) arch/arm/rp2040/rp23xx:
preserve SIE_CTRL.PULLUP_EN in usbdev_register
+[#19535](https://github.com/apache/nuttx/pull/19535) arch/arm/rp23xx: Fix six
register/bit macro name clashes
+[#19520](https://github.com/apache/nuttx/pull/19520) arch/arm/stm32: Detach
GPIO IRQ callbacks upon clearing "setevent"
+[#19385](https://github.com/apache/nuttx/pull/19385) arch/arm/stm32: fix H5
I2C kernel-clock register names
+[#19383](https://github.com/apache/nuttx/pull/19383) arch/arm/stm32: make
STM32_FOC depend on MOTOR_FOC
+[#19395](https://github.com/apache/nuttx/pull/19395) arch/arm/stm32: make
STM32_ETHMAC depend on NET
+[#19382](https://github.com/apache/nuttx/pull/19382) arch/arm/stm32: STM32_DTS
depends on SENSORS
+[#19519](https://github.com/apache/nuttx/pull/19519) arch/arm/stm32g0: Fix
FLASHIF typo
+[#19495](https://github.com/apache/nuttx/pull/19495) arch/arm/stm32h7: fix
MDIO RDA field in c22 write
+[#19769](https://github.com/apache/nuttx/pull/19769) arch/arm/stm32h5: Fix
handling of GPIO port I
+[#19506](https://github.com/apache/nuttx/pull/19506) arch/arm/stm32h7:
invalidate dcache after aligned SDMMC RX DMA
+[#19701](https://github.com/apache/nuttx/pull/19701) arch/arm/stm32h5/serial:
fix UART8 buffer guard typo
+ARM64
+[#19676](https://github.com/apache/nuttx/pull/19676) arch/arm64/imx9: Fix imx9
usdhc DMA initialization
+MIPS
+[#19784](https://github.com/apache/nuttx/pull/19784) arch/mips/Makefile: Add
nuttx build with CONFIG_ALLSYMS enabled
+RISC-V
+[#19768](https://github.com/apache/nuttx/pull/19768) arch/risc-v/espressif:
fix SPI IOMUX false positive without SPI2
+[#19439](https://github.com/apache/nuttx/pull/19439) arch/riscv: Fix RISC-V
backtrace
+[#19364](https://github.com/apache/nuttx/pull/19364) arch/risc-v: reject
overlapping leaf PTE in riscv_fillpage
+[#19377](https://github.com/apache/nuttx/pull/19377) arch/risc-v: kill
faulting user task instead of panicking kernel
+[#19468](https://github.com/apache/nuttx/pull/19468) arch/risc-v: qemu: don't
rewind interrupt stack sp on nested trap
+[#19471](https://github.com/apache/nuttx/pull/19471) arch/risc-v: fix fault
handler misattributing kernel faults to user
+[#19718](https://github.com/apache/nuttx/pull/19718) arch/risc-v: fix
uninitialized HW cmds and bus clock
+X86
+[#19567](https://github.com/apache/nuttx/pull/19567) arch/x86: default
CROSSDEV on a macOS host
+X86_64
+[#19559](https://github.com/apache/nuttx/pull/19559) arch/x86_64: six fixes to
make BUILD_KERNEL and the HPET alarm work
+[#19692](https://github.com/apache/nuttx/pull/19692) arch/x86_64: fix page
table levels in pgalloc
+[#19791](https://github.com/apache/nuttx/pull/19791) arch/x86_64: fix kernel
build issues found with LTP
+
+Driver Support
+Bug Fixes
+[#19184](https://github.com/apache/nuttx/pull/19184) drivers/serial: add
job-control TTY ioctls
+[#19371](https://github.com/apache/nuttx/pull/19371) drivers/usbdev: re-assert
soft connect in cdcecm/cdcncm disconnect()
+[#19373](https://github.com/apache/nuttx/pull/19373) drivers/i2s/i2schar: Fix
return types
+[#19386](https://github.com/apache/nuttx/pull/19386) drivers/i2c:
I2C_SLAVE_DRIVER depends on I2C_SLAVE
+[#19391](https://github.com/apache/nuttx/pull/19391) drivers/serial: hold
xmit.lock around echo in uart_readv()
+[#19411](https://github.com/apache/nuttx/pull/19411) drivers/net/w5500: fix
variable names in receive error path and d_private
+[#19415](https://github.com/apache/nuttx/pull/19415) drivers/spi/ice40: fix
operator precedence in final clock cycle count
+[#19416](https://github.com/apache/nuttx/pull/19416) drivers/efuse: Multiple
Drivers Are Registered With World Writable
+[#19419](https://github.com/apache/nuttx/pull/19419) drivers/contactless: fix
uninitialized uid leak in mfrc522_read
+[#19433](https://github.com/apache/nuttx/pull/19433) drivers/watchdog: fix
capture automonitor notifier context
+[#19437](https://github.com/apache/nuttx/pull/19437) drivers: Multiple Drivers
Are Registered With World Writable (2)
+[#19451](https://github.com/apache/nuttx/pull/19451) drivers/usbdev: fix
composite-mode class requests and BOT short-response handling
+[#19453](https://github.com/apache/nuttx/pull/19453) drivers: Multiple Drivers
Are Registered With World Writable (3)
+[#19470](https://github.com/apache/nuttx/pull/19470) drivers/usbdev/cdcncm:
fix TX corruption/wedge under write buffers
+[#19476](https://github.com/apache/nuttx/pull/19476) drivers/eeprom: I2C
EEPROM Read/Write Kernel Operations Crash
+[#19502](https://github.com/apache/nuttx/pull/19502) drivers/mmcsd: fix eMMC
bus width switch sequencing
+[#19522](https://github.com/apache/nuttx/pull/19522) drivers/video: zero
message on MIPI DSI driver
+[#19568](https://github.com/apache/nuttx/pull/19568) drivers/syslog: fix
syslog_write() returning -EIO on every write
+[#19571](https://github.com/apache/nuttx/pull/19571)
drivers/ioexpander/iso1i813t: fix error startup condition
+[#19577](https://github.com/apache/nuttx/pull/19577) drivers/input: partial
fix of indistinguishable ASCII and special keycodes
+[#19590](https://github.com/apache/nuttx/pull/19590) drivers/ioexpander: Fix
GPIO expanders warnings
+[#19604](https://github.com/apache/nuttx/pull/19604) drivers/mmcsd: Fix finfo
print modifier
+[#19632](https://github.com/apache/nuttx/pull/19632) drivers/usbdev/rndis: Fix
reported MTU OID sizes
+[#19740](https://github.com/apache/nuttx/pull/19740) drivers/usbdev/cdcacm:
fix self-deadlock in cdcuart_txempty()
+[#19742](https://github.com/apache/nuttx/pull/19742} drivers/usbhost: Refuse
to register the same class driver twice
+
+Board Support
+Bug Fixes
+[#19498](https://github.com/apache/nuttx/pull/19498) boards: Dropbear
defconfig crypto deps
+[#19492](https://github.com/apache/nuttx/pull/19492) boards: Fix/dropbear
cryptodev defconfigs
+[#19481](https://github.com/apache/nuttx/pull/19481) boards/dropbear: retain
child exit status for NSH PTY session
+ARM
+[#19538](https://github.com/apache/nuttx/pull/19538) boards/arm/mps2-an521:
Correct the swapped UART0 TX and RX interrupts
+[#19361](https://github.com/apache/nuttx/pull/19361) boards/arm/mps3-an547:
Fix error caused by updating nsh Kconfig
+[#19561](https://github.com/apache/nuttx/pull/19561) boards/arm/rp23xx: add
missing rp23xx_st7735.c LCD board glue
+[#19431](https://github.com/apache/nuttx/pull/19431) boards/arm/stm32{f1,f4}:
drop duplicated reset.c/romfs
+[#19454](https://github.com/apache/nuttx/pull/19454) boards/arm/stm32f3:
nucleo-f302r8:ihm07m1_b16: enable LTO to fit flash
+[#19483](https://github.com/apache/nuttx/pull/19483)
boards/arm/stm32f746g-disco: Add Dropbear SSH server support
+[#19257](https://github.com/apache/nuttx/pull/19257)
boards/arm/stm32f746g-disco: Add support for Winbond W25Q128JVEQ flash chip
+[#19389](https://github.com/apache/nuttx/pull/19389) boards/arm/stm32h7:
switch board common to boards/arm/common/stm32
+ARM64
+[#19427](https://github.com/apache/nuttx/pull/19427)
boards/arm64/raspberrypi-4b/sd: Fix SD card issues
+RISC-V
+[#19474](https://github.com/apache/nuttx/pull/19474)
boards/risc-v/esp32c3-devkit/dropbear: enable SCHED_HAVE_PARENT
+SIM
+[#19405](https://github.com/apache/nuttx/pull/19405) boards/sim: add dropbear
board configuration
+[#19576](https://github.com/apache/nuttx/pull/19576) boards/sim: add ROMFS
passwd and crypto deps for NSH console login
+[#19583](https://github.com/apache/nuttx/pull/19583) boards/sim: drop unused
FSUTILS_PASSWD from sim defconfigs
+
+File System
+Bug Fixes
+[#19179](https://github.com/apache/nuttx/pull/19179) fs: widen ino_t to
uint32_t and add d_ino to struct dirent
+[#19212](https://github.com/apache/nuttx/pull/19212) fs/vfs: provide link
fallback without softlinks - #19212
+[#19394](https://github.com/apache/nuttx/pull/19394) fs/procfs: fix environ
read for another task under CONFIG_A
+[#19704](https://github.com/apache/nuttx/pull/19704) fs/pseudofile: fix buffer
sizing and sparse growth
+[#19770](https://github.com/apache/nuttx/pull/19770) fs/romfs: fix node cache
overflow in directories with >256 entries
+Networking
+Bug Fixes
+[#18857](https://github.com/apache/nuttx/pull/18857) net/sixlowpan: Check if
g_frame_hdrlen + IPv6_HDRLEN <= iob->io_len
+[#19436](https://github.com/apache/nuttx/pull/19436) net/igmp: restore General
Query handling broken by pointer compare
+[#19564](https://github.com/apache/nuttx/pull/19564) net/tcp: don't accept a
reset connection as connected
+[#19589](https://github.com/apache/nuttx/pull/19589) net/tcp: Remove
work_available check when updating retransmit timer
+[#19595](https://github.com/apache/nuttx/pull/19595) net: Fix IP fragment
forwarding and L4 handling
+[#19801](https://github.com/apache/nuttx/pull/19781) net/udp: fix d_len
corruption for 2nd+ SO_REUSEADDR listener
+
+
+Compatibility Concerns
+
+[#19209](https://github.com/apache/nuttx/pull/19209) !boards/nsh: Replace TEA
password storage with PBKDF2-HMAC-SHA256 hashing
+
+Replace reversible TEA password storage in /etc/passwd with one-way
PBKDF2-HMAC-SHA256 hashing in modular crypt format (MCF):
+$pbkdf2-sha256$<iterations>$<base64url-salt>$<base64url-hash>
+
+BREAKING CHANGE: TEA-encoded /etc/passwd entries no longer verify.
+Regenerate with tools/mkpasswd or NSH passwd/useradd after upgrading
nuttx-apps.
+
+Changes:
+
+ Add apps/crypto/pbkdf2 (PBKDF2-HMAC-SHA256; Mbed TLS backend when
available, self-contained SHA-256 fallback otherwise)
+ Rewrite passwd_encrypt.c / passwd_verify.c to use PBKDF2 and
timingsafe_bcmp() for verification
+ Add shared passwd_base64.c for base64url encode/decode
+ Enforce password complexity when setting passwords (min 8 chars, upper,
lower, digit, special character)
+ Add testing/pbkdf2 (RFC 6070 vectors + passwd round-trip test)
+
+Companion nuttx PR (host mkpasswd tool and ROMFS build integration):
apache/nuttx-apps#3557
+
+
+[#19297](https://github.com/apache/nuttx/pull/19297) !arch/arm/src/stm32:
unify the timer input clock board options
+
+Replace the divergent board conventions for the timer input clock frequency
with a single uniform convention provided by every board:
+
+ STM32_APBx_TIMn_CLKIN and BOARD_TIMn_FREQUENCY -> STM32_TIMn_CLKIN
+ STM32_APBx_LPTIMn_CLKIN, BOARD_LPTIMn_FREQUENCY and STM32_LPTIMn_FREQUENCY
-> STM32_LPTIMn_CLKIN
+
+All STM32 consumers (tim/lptim/pwm/adc/dac/capture/sdadc/dfsdm/pulsecount)
updated to match; the timer input clock is now bus-agnostic
+in the drivers.
+
+Boards that carried the same timer clock in more than one convention now
define STM32_TIMn_CLKIN exactly once, derived from the APB bus
+clock (PCLKx with the x2 doubler when the APB prescaler is greater than 1),
instead of redefining it with a second, sometimes different, value.
+
+BREAKING CHANGE: The timer input-clock board macros STM32_APBx_TIMn_CLKIN,
BOARD_TIMn_FREQUENCY, STM32_APBx_LPTIMn_CLKIN, BOARD_LPTIMn_FREQUENCY
+and STM32_LPTIMn_FREQUENCY are removed in favor of STM32_TIMn_CLKIN and
STM32_LPTIMn_CLKIN.
+Out-of-tree boards must define STM32_TIMn_CLKIN / STM32_LPTIMn_CLKIN (drop the
APB bus from the name, keep the value),
+and out-of-tree drivers referencing the old names must be updated.
+
+
+[#19321](https://github.com/apache/nuttx/pull/19321) !boards: enforce secure
ROMFS passwd and TEA key setup
+
+Remove implicit default credentials and add build-time validation. Add
check_passwd_keys.sh and gen_passwd_keys.sh; run key setup via passwd_keys.mk
+ before config.h is generated. Mirror the same logic in
cmake/nuttx_add_romfs.cmake for CMake builds.
+
+BREAKING CHANGE: Builds with CONFIG_BOARD_ETC_ROMFS_PASSWD_ENABLE=y now
require an explicit admin password and non-default TEA keys.
+The Kconfig default password "Administrator" and default TEA keys are no
longer accepted. Fix: run make menuconfig, set Admin password under
+Board Selection -> Auto-generate /etc/passwd, enable random TEA keys or
+set CONFIG_FSUTILS_PASSWD_KEY1..4 manually, and use NSH login with Encrypted
password file verification.