Work In Progress
Warning |
---|
|
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
...
Markdown |
---|
arm
* [#10987](https://github.com/apache/nuttx/pull/10987) gd32f4: add gd32f470i board support
* [#11094](https://github.com/apache/nuttx/pull/11094) stm32: add support to LINUM-STM32H753BI board
* [#10990](https://github.com/apache/nuttx/pull/10990) stm32: add support to STM32F401RC-RS485 board
* [#11358](https://github.com/apache/nuttx/pull/11358) stm32h7: linum-stm32h753bi: Add modbus example using usart6
* [#11276](https://github.com/apache/nuttx/pull/11276) seeed-xiao-rp2040: Add initial board support
xtensa
* [#10976](https://github.com/apache/nuttx/pull/10976) Add ESP32-2432S028 board
* [#10928](https://github.com/apache/nuttx/pull/10928) esp32s3-box: Support hardware version 3
risc-v
* [#11379](https://github.com/apache/nuttx/pull/11379) Initial support for CanMV-k230 board
* [#11377](https://github.com/apache/nuttx/pull/11377) Add support for PINE64 Ox64 BL808 SBC
|
Board Improvements
...
File System
Improvements
Markdown |
---|
* [#10995#11056](https://github.com/apache/nuttx/pull/1099511056) ChangeModify inode_checkflags to static functiontest "ramtest" path
* [#11445#11192](https://github.com/apache/nuttx/pull/1144511192) Fixremove obsolete CONFIG_EXAMPLES_FOC_IPHASE_ADC option
|
arm
Markdown |
---|
hostfs after uid/gid changes
* [#11433#11101](https://github.com/apache/nuttx/pull/1143311101) fatcxd56xx: FixAdd number of data clusters usable for fat drivercxd5610 gnss driver
* [#11196#11373](https://github.com/apache/nuttx/pull/1119611373) fatgd32f4xx: fixchange ubsangd32f470z warning of shift-out-of-boundsboard code
* [#10706#11193](https://github.com/apache/nuttx/pull/1070611193) fs_epollimx6: several epoll problems fixFix sabre-6quad:libcxx
* [#11125#11310](https://github.com/apache/nuttx/pull/1112511310) fs_files.cnrf52: make sure that fs_getfilep is not interrupted when holding mutexnrf52832-dk: add timer example
* [#11349#10835](https://github.com/apache/nuttx/pull/1134910835) fs_gettype:add zipfs magic nrf52: remove CONFIG_ARMV7M_SYSTICK form tickless configs
* [#11446#11150](https://github.com/apache/nuttx/pull/1144611150) hostfssama5:fix structureAdd layoutQSPI inconsistencysupport in hostfsSAMA5
* [#11090#11151](https://github.com/apache/nuttx/pull/1109011151) inode: Change inode_unlink to static functionsama5: sama5d2-xult: add support for QSPI flash and nxffs
* [#11188#11117](https://github.com/apache/nuttx/pull/1118811117) inodestm32: check file list before memcpyb-g431b-esc1: don't use CONFIG_STM32_USE_LEGACY_PINMAP=y
* [#11140#11306](https://github.com/apache/nuttx/pull/1114011306) inodestm32h7: improvefix the performance of get file pointerconfig conflict
* [#11318#11214](https://github.com/apache/nuttx/pull/1131811214) proc stm32h7: linum-stm32h753bi: FixAdd groupfdsupport to getRTC fd by group instead of current tcband alarm
* [#11449#11167](https://github.com/apache/nuttx/pull/1144911167) procfs add poll supportstm32h7: linum-stm32h753bi: Added suport to userlerds library.
* [#11360#11265](https://github.com/apache/nuttx/pull/1136011265) procfs/cpuinfostm32f4: Zero copylen in cpuinfo_readstm32f401rc-rs485: Add sdcard support
* [#11039#11217](https://github.com/apache/nuttx/pull/1103911217) renamestm32f4: fix use after free issue about renamestm32f401rc-rs485: Add buttons support
* [#11451#11169](https://github.com/apache/nuttx/pull/1145111169) smartfsstm32f4: Add necessary aligned access in smartfs_rename()stm32f401rc-rs485: add support to userleds
* [#11248#11255](https://github.com/apache/nuttx/pull/1124811255) spiffsstm32f4: correct mutex lock cycle of spiffs
stm32f401rc-rs485: Fix f401rc flash size |
risc-v
Markdown |
---|
* [#10804#10736](https://github.com/apache/nuttx/pull/1080410736) support zipfs,can mount zipfileesp32c3: pm: Let PM_PROCFS depend on FS_PROCFS_REGISTER
* [#11232#11418](https://github.com/apache/nuttx/pull/1123211418) tmpfsesp32c6: fixAdd anostest integer overflowdefconfig
* [#10880#11096](https://github.com/apache/nuttx/pull/1088011096) vfsmpfs: Add option addfor munmapboard logicspecific toPMP pseudofs
|
Networking
Improvements
Markdown |
---|
configuration
* [#10813#11262](https://github.com/apache/nuttx/pull/1081311262) Add CONFIG_NET_ICMPv6_ROUTER_LIFETIMEqemu-rv: rv-virt/knsh: Set correct RAM_START and RAM_SIZE
* [#10893#11397](https://github.com/apache/nuttx/pull/1089311397) allow icmpv6 and udp to find the dev by the ifindex with s_boundto.
* qemu-rv: Virtio sound |
sim
Markdown |
---|
* [#10960](https://github.com/apache/nuttx/pull/10960) fix Cygwin/MSYS2 ld: unrecognized option '-z'
* [#11290[#10916](https://github.com/apache/nuttx/pull/1091611290) Fixnxscope: remove CONFIG_ALLSYMS=y |
xtensa
Markdown |
---|
RNDIS compilation error
* [#10819#11142](https://github.com/apache/nuttx/pull/1081911142) localesp32: FixAdd the problem that local udp socketpair cannot release fifo files.LVGL defconfig
* [#11443#11229](https://github.com/apache/nuttx/pull/1144311229) localesp32: makeAdd thesupport callenconder return of each process consistent with linuxto ESP32-2432S028
* [#11015#10961](https://github.com/apache/nuttx/pull/1101510961) localesp32: SupportAdd SO_SNDBUFwifishare optionboard inconfig getsockoptand documentation
* [#11289#10996](https://github.com/apache/nuttx/pull/1128910996) loopbackesp32: Fix flags of lo deviceRename Shift game to Brickmatch and add an board example to esp32-devkitc
* [#11324#11417](https://github.com/apache/nuttx/pull/1132411417) icmpv6:Optimize the process of obtaining the IPv6 address through RA.esp32<|s2|s3>_board_spiflash: Fix error message about SmartFS init
* [#11010#11425](https://github.com/apache/nuttx/pull/1101011425) icmpv6esp32s2: Increase Fixinit nettask maskstack logicsize into icmpv6_setaddresses3072
* [#11197#11156](https://github.com/apache/nuttx/pull/1119711156) igmp: call IFF_SET_IPv4 when igmp_sendesp32s3: Link stack checking function and data to SRAM when enable flash or PSRAM driver
* [#11384#11342](https://github.com/apache/nuttx/pull/1138411342) ipv6esp32s3: Fix source address with many addresses in same networkadd esp32s3-devkit:toywasm kconfig
* [#11378#11295](https://github.com/apache/nuttx/pull/1137811295) ipv6esp32s3: MoveAdd xxx_ipv6multicast from arch to common codertc defconfig
* [#10894#10885](https://github.com/apache/nuttx/pull/1089410885) netdbESP32S3-EYE: WhenGPIO setand a dns nameserver which already exists, retrun OKbutton support
* [#11076#10884](https://github.com/apache/nuttx/pull/1107610884) netconfigESP32-S3-EYE: Enable SOCK_CLOEXEC for ioctl socketsI2C, SPI and LCD support
* [#11396#10883](https://github.com/apache/nuttx/pull/1139610883) ESP32-S3-EYE: Wifi |
File System
Improvements
Markdown |
---|
* [#10995](netdev: Modify the logic for setting the IFF_RUNNING status of interfaces.
* [#11110](https://github.com/apache/nuttx/pull/1111010995) SimplifyChange gettinginode_checkflags valueto forstatic different domainfunction
* [#11054#11445](https://github.com/apache/nuttx/pull/1105411445) SupportFix multiplehostfs IPv6after address per netdevuid/gid changes
* [#11406#11433](https://github.com/apache/nuttx/pull/1140611433) tcpfat: Recover from iob shortage with TCP_WRITE_BUFFERSFix number of data clusters usable for fat driver
* [#11126#11196](https://github.com/apache/nuttx/pull/1112611196) tcpfat: Supportfix initialubsan sequencewarning number described in RFC 6528of shift-out-of-bounds
* [#11009#10706](https://github.com/apache/nuttx/pull/1100910706) tunfs_epoll: Fixseveral theepoll error of calling tun_close when tun_txavail or tun_txavail_work is executedproblems fix
* [#10986#11125](https://github.com/apache/nuttx/pull/1098611125) tunfs_files.c: Fixmake thesure error of calling tun_close when tun_txavail or tun_txavail_work is executedthat fs_getfilep is not interrupted when holding mutex
* [#11372#11349](https://github.com/apache/nuttx/pull/1137211349) udpfs_gettype:add Add check when sending too big packet without IP fragzipfs magic
* [#11210#11446](https://github.com/apache/nuttx/pull/1121011446) udphostfs:fix structure Addlayout supportinconsistency forin SO_TIMESTAMPhostfs
* [#11120#11090](https://github.com/apache/nuttx/pull/1112011090) udp: modify ipv4 multicast to allow different conn to join simultaneously
* [#10878](https://github.com/apache/nuttx/pull/10878) usersock: Return -ENOSUPP directly if domain isn't equal to PF_INET/PF_INET6 |
Security Issues Fixed In This Release
Compatibility Concerns
Changes to Build System
Renamed or Modified Kconfig Options
...
inode: Change inode_unlink to static function
* [#11188](https://github.com/apache/nuttx/pull/11188) inode: check file list before memcpy
* [#11140](https://github.com/apache/nuttx/pull/11140) inode: improve the performance of get file pointer
* [#11318](https://github.com/apache/nuttx/pull/11318) proc: Fix groupfd to get fd by group instead of current tcb
* [#11449](https://github.com/apache/nuttx/pull/11449) procfs add poll support
* [#11360](https://github.com/apache/nuttx/pull/11360) procfs/cpuinfo: Zero copylen in cpuinfo_read
* [#11039](https://github.com/apache/nuttx/pull/11039) rename: fix use after free issue about rename
* [#11451](https://github.com/apache/nuttx/pull/11451) smartfs: Add necessary aligned access in smartfs_rename()
* [#11248](https://github.com/apache/nuttx/pull/11248) spiffs: correct mutex lock cycle of spiffs
* [#10804](https://github.com/apache/nuttx/pull/10804) support zipfs,can mount zipfile
* [#11232](https://github.com/apache/nuttx/pull/11232) tmpfs: fix an integer overflow
* [#10880](https://github.com/apache/nuttx/pull/10880) vfs: add munmap logic to pseudofs
|
Networking
Improvements
Markdown |
---|
* [#10813](https://github.com/apache/nuttx/pull/10813) Add CONFIG_NET_ICMPv6_ROUTER_LIFETIME
* [#10893](https://github.com/apache/nuttx/pull/10893) allow icmpv6 and udp to find the dev by the ifindex with s_boundto.
* [#10916](https://github.com/apache/nuttx/pull/10916) Fix RNDIS compilation error
* [#10819](https://github.com/apache/nuttx/pull/10819) local: Fix the problem that local udp socketpair cannot release fifo files.
* [#11443](https://github.com/apache/nuttx/pull/11443) local: make the call return of each process consistent with linux
* [#11015](https://github.com/apache/nuttx/pull/11015) local: Support SO_SNDBUF option in getsockopt
* [#11289](https://github.com/apache/nuttx/pull/11289) loopback: Fix flags of lo device
* [#11324](https://github.com/apache/nuttx/pull/11324) icmpv6:Optimize the process of obtaining the IPv6 address through RA.
* [#11010](https://github.com/apache/nuttx/pull/11010) icmpv6: Fix net mask logic in icmpv6_setaddresses
* [#11197](https://github.com/apache/nuttx/pull/11197) igmp: call IFF_SET_IPv4 when igmp_send
* [#11384](https://github.com/apache/nuttx/pull/11384) ipv6: Fix source address with many addresses in same network
* [#11378](https://github.com/apache/nuttx/pull/11378) ipv6: Move xxx_ipv6multicast from arch to common code
* [#10894](https://github.com/apache/nuttx/pull/10894) netdb: When set a dns nameserver which already exists, retrun OK
* [#11076](https://github.com/apache/nuttx/pull/11076) netconfig: Enable SOCK_CLOEXEC for ioctl sockets
* [#11396](https://github.com/apache/nuttx/pull/11396) netdev: Modify the logic for setting the IFF_RUNNING status of interfaces.
* [#11110](https://github.com/apache/nuttx/pull/11110) Simplify getting value for different domain
* [#11054](https://github.com/apache/nuttx/pull/11054) Support multiple IPv6 address per netdev
* [#11406](https://github.com/apache/nuttx/pull/11406) tcp: Recover from iob shortage with TCP_WRITE_BUFFERS
* [#11126](https://github.com/apache/nuttx/pull/11126) tcp: Support initial sequence number described in RFC 6528
* [#11009](https://github.com/apache/nuttx/pull/11009) tun: Fix the error of calling tun_close when tun_txavail or tun_txavail_work is executed
* [#10986](https://github.com/apache/nuttx/pull/10986) tun: Fix the error of calling tun_close when tun_txavail or tun_txavail_work is executed
* [#11372](https://github.com/apache/nuttx/pull/11372) udp: Add check when sending too big packet without IP frag
* [#11210](https://github.com/apache/nuttx/pull/11210) udp: Add support for SO_TIMESTAMP
* [#11120](https://github.com/apache/nuttx/pull/11120) udp: modify ipv4 multicast to allow different conn to join simultaneously
* [#10878](https://github.com/apache/nuttx/pull/10878) usersock: Return -ENOSUPP directly if domain isn't equal to PF_INET/PF_INET6 |
Security Issues Fixed In This Release
Compatibility Concerns
Markdown |
---|
* [#10605](https://github.com/apache/nuttx/pull/10605) Implement ticket spinlock
A proposal to slove #1488
Implement ticket spinlock.
* [#10861](https://github.com/apache/nuttx/pull/10861) spinlock: Add spin_lock_init and spin_is_locked macro
align with Linux api naming.
* [#11102](https://github.com/apache/nuttx/pull/11102) sched: explicitly select the cpuload clock source configuration
Different configurations require different dependencies.
Explicitly select dependencies to avoid automatically selecting
inappropriate configurations.
* [#11334](https://github.com/apache/nuttx/pull/11334) stm32h7_adc: Dynamically set clock prescaler and BOOST
First commit is aligning naming and is a breaking change.
* [#10827](https://github.com/apache/nuttx/pull/10827) Improve adjtime() functionality
Prior pull request #9084 and issue #8858 added basic adjtime()
support for the SAMv7 platform.
This pull request adds support for STM32 platform.
In addition I have made a few changes to the adjtime() configuration
options:
1) Previously adjustments less than 1 microsecond per tick would be
completely ignored. Now they are applied over a shorter period at
a rate of 1 us per tick.
2) Previously CLOCK_ADJTIME_PERIOD was in units of 1/100th of second.
Change to milliseconds to be more generally useful unit.
Change setting name to CLOCK_ADJTIME_PERIOD_MS to make the unit change
easier to notice.
3) Previously CLOCK_ADJTIME_SLEWLIMIT was in percentage.
Most clock crystals have better accuracy than 1%, so the minimum slew
rate was excessive. Change to CLOCK_ADJTIME_SLEWLIMIT_PPM with setting
value in parts per million.
4) No need to use floating point math in clock_adjtime.c.
Impact
Users who have used CLOCK_ADJTIME_PERIOD and CLOCK_ADJTIME_SLEWLIMIT
settings should update their configuration. New CLOCK_ADJTIME_PERIOD_MS is
10x the old period value, and new CLOCK_ADJTIME_SLEWLIMIT_PPM is 10000 times
the old slewlimit. |
Known Problems In This Release
NuttX on Ox64: getprime + hello crashes
Markdown |
---|
NuttShell (NSH) NuttX-12.4.0
nsh> uname -a
NuttX 12.4.0 96c2707737 Jan 15 2024 10:35:29 risc-v ox64
nsh>
nsh> getprime
Set thread priority to 10
Set thread policy to SCHED_RR
Start thread #0
thread #0 started, looking for primes < 10000, doing 10 run(s)
thread #0 finished, found 1230 primes, last one was 9973
Done
getprime took 0 msec
nsh>
nsh> hello
riscv_exception: EXCEPTION: Store/AMO page fault. MCAUSE: 000000000000000f, EPC: 0000000050208fcc, MTVAL: 0000000080200000
riscv_exception: PANIC!!! Exception = 000000000000000f |
More Information
How to Download
...
The main "Single Source of Truth" repositories are hosted by the ASF:
These are synchronized with repositories hosted at GitHub:
...