DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
| Markdown |
|---|
* [#16554](https://github.com/apache/nuttx/pull/16554) sched: assert: Print Stack pointer value when not within the stack * [#16673](https://github.com/apache/nuttx/pull/16673) sched: Fix smp scheduling * [#16919](https://github.com/apache/nuttx/pull/16919) sched/init/nx_bringup.c: Add support for CONFIG_INIT_NONE in a flat build * [#16927](https://github.com/apache/nuttx/pull/16927) sched/signal: Old signal action need save sa_user * [#16481](https://github.com/apache/nuttx/pull/16481) sched/wdog: Replace periodical timer with the wd_start_next. * [#16545](https://github.com/apache/nuttx/pull/16545) sched/wqueue: Fix windows compilation errors. * [#16593](https://github.com/apache/nuttx/pull/16593) sched/wqueue: Fix windows compilation errors. |
MM
| Markdown |
|---|
* [#16617](https://github.com/apache/nuttx/pull/16617) mm: add CONFIG_MM_NODE_GUARDSIZE option
* [#16653](https://github.com/apache/nuttx/pull/16653) mm/Kasan: Fixed some bugs |
libc
| Markdown |
|---|
* [#16568](https://github.com/apache/nuttx/pull/16568) libc: Change atomic_fetch_cxx to macro * [#16768](https://github.com/apache/nuttx/pull/16768) libc: fix assert "Free memory from the wrong heap" with flat mode and… * [#16713](https://github.com/apache/nuttx/pull/16713) libc/idr: Fix Use-After-Free during idr_destroy() * [#16675](https://github.com/apache/nuttx/pull/16675) libc/mcount: add armv6m mcount implementation * [#16811](https://github.com/apache/nuttx/pull/16811) libs/libc/netdb: Optimize the DNS timeout calculation logic * [#16932](https://github.com/apache/nuttx/pull/16932) libs/libc/semaphore: allow nxsem_init to negative value * [#16614](https://github.com/apache/nuttx/pull/16614) libbuiltin/gcov: Upgrade gcov function * [#16786](https://github.com/apache/nuttx/pull/16786) Revert "libs/libc/stdlib/lib_exit.c: fix multiple definition of __dso… |
...
Tools
| Markdown |
|---|
* [#16563](https://github.com/apache/nuttx/pull/16563) tools: Modify refresh.sh to support update all configs from a board
* [#16650](https://github.com/apache/nuttx/pull/16650) tools/checkpatch.sh: add -x option to auto-format Python files.
* [#16912](https://github.com/apache/nuttx/pull/16912) tools/checkpatch.sh: check git commit format
* [#16724](https://github.com/apache/nuttx/pull/16724) tools/espressif: Add risc-v compiler info dump for Espressif devices
* [#16763](https://github.com/apache/nuttx/pull/16763) tools/nix: Add Nix flake for reproducible dev environment
* [#16924](https://github.com/apache/nuttx/pull/16924) tools/nix: move nix flakes to tools/
* [#16831](https://github.com/apache/nuttx/pull/16831) tools/nix: split flake into root and Documentation
* [#16759](https://github.com/apache/nuttx/pull/16759) tools/nxstyle.c: Updating white list to xedge example
* [#16855](https://github.com/apache/nuttx/pull/16855) tools/rp{2040,23xx}: Ensure that picotool is found or built
* [#16667](https://github.com/apache/nuttx/pull/16667) tools/process_config.sh: Fix sed errors
* [#16546](https://github.com/apache/nuttx/pull/16546) tools/testbuild.ps1: Windows fix the redirect error stream
* [#16711](https://github.com/apache/nuttx/pull/16711) toolchain/arm: Fix crash caused by clang compiling with -mfpu=fpv5-d16 and -march=armv8.1-m.main+mve.fp+fp.dp
* [#16709](https://github.com/apache/nuttx/pull/16709) toolchain/arm: Fix link parameter error
* [#16720](https://github.com/apache/nuttx/pull/16720) toolchain/armclang: Fix armclang config |
Build System
...
Improvements
| Markdown |
|---|
* [#16880](https://github.com/apache/nuttx/pull/16880) arch: Add Cmake build support for raspberrypi-4b board & bcm2711 chip * [#16475](https://github.com/apache/nuttx/pull/16475) arch/arm/src/mcx-nxxx/CMakeLists.txt: Aligned Cmake with Make * [#16579](https://github.com/apache/nuttx/pull/16579) arch/arm/src/mcx-nxxx/CMakeLists.txt: Aligned Cmake with Make * [#16647](https://github.com/apache/nuttx/pull/16647) arch/arm64/fvp-v8r: support cmake compile * [#16581](https://github.com/apache/nuttx/pull/16581) arch/risc-v/src/qemu-rv/CMakeLists.txt: removed repeated addition of … * [#16477](https://github.com/apache/nuttx/pull/16477) arch/risc-v/src/qemu-rv/CMakeLists.txt: removed repeated addition of the file qemu_rv_userspace.c * [#16794](https://github.com/apache/nuttx/pull/16794) arm: CMake build for the i.MX RT series implemented. * [#16627](https://github.com/apache/nuttx/pull/16627) Arm32 v8m support cmake clang compile * [#16922](https://github.com/apache/nuttx/pull/16922) boards/arm/imxrt: CMake added imxrt1020-evk imxrt1050-evk boards * [#16918](https://github.com/apache/nuttx/pull/16918) boards/arm/imxrt: CMake added imxrt1060-evk imxrt1064-evk imxrt1170-evk boards * [#16639](https://github.com/apache/nuttx/pull/16639) cmake/arm64: support clang compile * [#16547](https://github.com/apache/nuttx/pull/16547) cmake(bugfix):fix VERSION genarator strip error in CMake build * [#16594](https://github.com/apache/nuttx/pull/16594) cmake(bugfix):fix VERSION genarator strip error in CMake build * [#16751](https://github.com/apache/nuttx/pull/16751) cmake(bugfix):add default c++ search path * [#16897](https://github.com/apache/nuttx/pull/16897) Cmake: add defconfig preprocess capability in Cmake build environment(recursively expand #include) * [#16721](https://github.com/apache/nuttx/pull/16721) cmake: enhance the function of cmake nuttx_wildcard_sources * [#16867](https://github.com/apache/nuttx/pull/16867) drivers/analog/CMakeLists.txt: Aligned Cmake with Make * [#16870](https://github.com/apache/nuttx/pull/16870) drivers/audio/CMakeLists.txt: Aligned Cmake with Make * [#16873](https://github.com/apache/nuttx/pull/16873) drivers/ioexpander/CMakeLists.txt: Aligned Cmake with Make * [#16871](https://github.com/apache/nuttx/pull/16871) drivers/leds/CMakeLists.txt: Aligned Cmake with Make * [#16913](https://github.com/apache/nuttx/pull/16913) drivers/net/CMakeLists.txt: Aligned Cmake with Make * [#16620](https://github.com/apache/nuttx/pull/16620) drivers/segger/CMakeLists.txt: Aligned Cmake with Make * [#16633](https://github.com/apache/nuttx/pull/16633) drivers/segger/CMakeLists.txt: Aligned Cmake with Make * [#16616](https://github.com/apache/nuttx/pull/16616) drivers/sensors/CMakeLists.txt: Aligned Cmake with Make * [#16634](https://github.com/apache/nuttx/pull/16634) drivers/sensors/CMakeLists.txt: Aligned Cmake with Make * [#16737](https://github.com/apache/nuttx/pull/16737) toolchain/arm64/cmake: Corrected the writing of arm64 cmake search library |
Major Changes to the Build System
Improvements
| Markdown |
|---|
* [#16849](https://github.com/apache/nuttx/pull/16849) Make/Toolchain.defs: add the AR_EXTRACT command |
Architectural Support
New Architecture Support
Driver Support
New Driver Support
Improvements
ARM
| Markdown |
|---|
| Markdown |
* [#16836#16806](https://github.com/apache/nuttx/pull/1683616806) driversarch/analog/ads7046: Add support for ADS7046 ADC*/*_sigdeliver.c: Fix a race condition is signal delivery for SMP * [#16714#16657](https://github.com/apache/nuttx/pull/1671416657) driversarch/inputarm: Create Single Button Multi ActionsAdd gic lock for GICD_ICFGR RMW operations. * [#16902#16881](https://github.com/apache/nuttx/pull/1690216881) driversarch/ioexpanderarm: Add support for pcal6416missing barriers.h * [#16934#16669](https://github.com/apache/nuttx/pull/1693416669) driversarch/arm/ioexpander/aw9523b*/stm32_fdcan_sock.c: Newprevent driverinterrupt forflood AW9523B i/o expanderon errors. * [#16217#16611](https://github.com/apache/nuttx/pull/1621716611) drivers/leds: Add support for KTD2052arch/arm/armv7-a: Support hardware debugpoint to enhance gdbstub * [#16660#16752](https://github.com/apache/nuttx/pull/1666016752) driversarch/arm/netcxd56xx: add IGB network card support Fix bug that causes wake-up by unused gpio interrupt * [#16623#16797](https://github.com/apache/nuttx/pull/1662316797) driversarch/arm/netimxrt: addInitial supportmodification forto thesupport NCV7410two 10BASE-T1S SPI MAC-PHYUSB Controllers * [#16605#16478](https://github.com/apache/nuttx/pull/1660516478) driversarch/arm/sensorsimxrt: Serial add QuectelRXDMA L86-XXXsupport GNSSfor uORBsinglewire sensor drivermode * [#16838#16703](https://github.com/apache/nuttx/pull/1683816703) driversarch/sensorsarm/tmp112rp23xx: AddFix supportgpio for TMP112 temperature sensor |
Drivers With Significant Improvements
| Markdown |
|---|
for RP2350B * [#16715#16704](https://github.com/apache/nuttx/pull/1671516704) driversarch/analogarm/ads1115.hrp23xx: Add ioctl for conversion triggerspi unset peripheral before to modify Spi parameters * [#16875#16837](https://github.com/apache/nuttx/pull/1687516837) driversarch/canarm/kvaser_pcirp2040: configureFix typos numberin ofADC passesand inGPIO interruptmacro handlernames * [#16738#16840](https://github.com/apache/nuttx/pull/1673816840) driversarch/arm/fsrp2040:Always use register_mtddriver() to register the MTD device (patch2)Implement GPIO output override functionality * [#16914#16886](https://github.com/apache/nuttx/pull/1691416886) driversarch/i2sarm/i2scharrp2040: Silence Implement"LOAD ioctlsegment commandswith andRWX blocking read/write operationspermissions" linker warnings * [#16745#16876](https://github.com/apache/nuttx/pull/1674516876) driversarch/ioexpanderarm/icjx.crp2040: reconfigureSupport icjx after undervoltagepico-sdk 2.2.0 * [#16729#16842](https://github.com/apache/nuttx/pull/1672916842) driversarch/miscarm/opteerp2040: CacheSupport coherencynon-sequential when MMU is disabledADC channels and standardize internal function names * [#16734#16783](https://github.com/apache/nuttx/pull/1673416783) driversarch/miscarm/optee: expand RPC suppport for IMX9samv7: add support for pin to pin compatible pic32cz ca70 series and its evaluation kit * [#16800#16901](https://github.com/apache/nuttx/pull/1680016901) driversarch/miscarm/optee_smc: Explicitly yield during NW interruptssamv7: add support for progmem in PIC32CZ CA70 series * [#16801#16907](https://github.com/apache/nuttx/pull/1680116907) driversarch/miscarm/optee_smcsamv7: Fix sched_yield() on flat buildsfix compile warning * [#16473#16522](https://github.com/apache/nuttx/pull/1647316522) driversarch/arm/mtdsamv7: init perf fixevents compileif warningenabled * [#16577#16572](https://github.com/apache/nuttx/pull/1657716572) driversarch/arm/mtdsamv7: fix compile warningset correct SPI mode during init * [#16789#16465](https://github.com/apache/nuttx/pull/1678916465) driversarch/arm/mtdsamv7: introduce nvblk set correct SPI mode during init * [#16642#16541](https://github.com/apache/nuttx/pull/1664216541) driversarch/mtdarm/ftl/bchstm32: Addadd directSTM32 writingI2C methodSlave forsupport FTLf… * [#16906#16532](https://github.com/apache/nuttx/pull/1690616532) driversarch/arm/netstm32: ksz9477add fixes * [#16899](https://github.com/apache/nuttx/pull/16899) drivers/net: Remove NCV7410 driver and corresponding board supportsupport for ADC trigger from TRGO event * [#16661#16534](https://github.com/apache/nuttx/pull/1666116534) driversarch/arm/netstm32: variousadd fixessupport for e1000batch andDMA igctransfer * [#16649#16680](https://github.com/apache/nuttx/pull/1664916680) drivers/net/Kconfig: Move NET_IGC_TXDESC and NET_IGC_RXDESC to NET_IG…arch/arm/stm32{h5|h7|l4}/adc: move ADC_MAX_SAMPLES to Kconfig * [#16767#16530](https://github.com/apache/nuttx/pull/1676716530) driversarch/pciarm/stm32f0l0g0: epcadd TIMER addtrigger dmafor heapADC * [#16753#16514](https://github.com/apache/nuttx/pull/1675316514) driversarch/arm/seggerstm32f0l0g0: Addfix acompilation kconfigwhen toTIM6/TIM7 override Segger SystemView target sources versionis missing * [#16510#16589](https://github.com/apache/nuttx/pull/1651016589) driversarch/arm/seggerstm32f0l0g0: Change SEGGER_RTT_LOCK into rspinlockfix compilation when TIM6/TIM7 is missing * [#16805#16810](https://github.com/apache/nuttx/pull/1680516810) driversarch/arm/sensorstm32f0l0g0: AddFix flagsI2C forIRQ GNSS satellitenumbers * [#16764#16543](https://github.com/apache/nuttx/pull/1676416543) driversarch/sensorsarm/l86xxxstm32f0l0g0: FixImprove STM32G0 driverperipheral registrationconfig crashesgranularity * [#16701#16670](https://github.com/apache/nuttx/pull/1670116670) driversarch/sensorsarm/l86xxxstm32f0l0g0: Fix Kconfig options and dependenciesmove ADC_MAX_SAMPLES to Kconfig * [#16821#16513](https://github.com/apache/nuttx/pull/1682116513) driversarch/sensorsarm/l86xxxstm32f0l0g0: Mutexremove fixesreferences & performance improvementsto CONFIG_STM32F0L0G0_FORCEPOWER * [#16778#16557](https://github.com/apache/nuttx/pull/1677816557) driversarch/sensorsarm/l86xxxstm32f0l0g0: UseSTM32G0 DMA uORBand GNSSADC lower-halfSupport * [#16717#16497](https://github.com/apache/nuttx/pull/1671716497) driversarch/sensorsarm/nau7802stm32f0l0g0: UID Addedsupport frequency control * [#16466]for F0, L0 and C0 * [#16517](https://github.com/apache/nuttx/pull/1646616517) driversarch/arm/serialstm32f7: fixAdd racemissing conditionsRCC include * [#16573#16909](https://github.com/apache/nuttx/pull/1657316909) driversarch/arm/serialstm32f7: Fix fix"unused racevariable" conditionswarning * [#16820#16860](https://github.com/apache/nuttx/pull/1682016860) driversarch/syslog/syslog_channel.c: fix incompatible-pointer-types compile errorsarm/stm32f7: Fix I2C4 SDA pin assignment * [#16788#16827](https://github.com/apache/nuttx/pull/1678816827) driversarch/arm/videostm32h7: add sched_note_mark at fb_remove_paninfo and fb_notify_vsync |
Board Support
New Board Support
| Markdown |
|---|
* [#16443Fix timer capture upper half driver registration * [#16809](https://github.com/apache/nuttx/pull/1644316809) boardsarch/avrarm/atmegastm32h7: Port timer Addedcapture Elegoodriver Mega2560r3from boardstm32 * [#16781#16705](https://github.com/apache/nuttx/pull/1678116705) boardsarch/arm/imxrtstm32h7: Add support to ARCX Socket Grid boardfor /dev/random device * [#16558#16706](https://github.com/apache/nuttx/pull/1655816706) boardsarch/xtensaarm/esp32s3STM32H5: Add DMA addand newADC esp32s3-8048S043 board |
Improvements
| Markdown |
|---|
DMA support * [#16792#16776](https://github.com/apache/nuttx/pull/1679216776) boardsarch/arm/stm32h5: Fix Kconfig styleAdd DMA Support to STM32H5 Serial Driver * [#16663#16708](https://github.com/apache/nuttx/pull/1666316708) boardsarch/arm/lpc17xx_40xx/lincoln60: Correct defconfigSTM32H5: Add oversampling and resolution support for THTTPD_CGIINBUFFERSIZ spellingADC * [#16833#16746](https://github.com/apache/nuttx/pull/1683316746) boardsarch/arm/qemustm32h5: Initial Driver Changefor configSTM32H5 nameDigital ofTemperature inputSensor tool(DTS) * [#16931#16818](https://github.com/apache/nuttx/pull/1693116818) boardsarch/arm/rp23xx/common: update board reset via BOOTROM functionsstm32h5: Fix STM32H5 FDCAN Driver and Add Test Files * [#16707#16803](https://github.com/apache/nuttx/pull/1670716803) boardsarch/arm/stm32f401rc-rs485stm32h5: Add support to HX711 ADCUse double-buffer for ADC DMA in Circular Mode * [#16779#16923](https://github.com/apache/nuttx/pull/1677916923) boardsarch/arm/xmc4 : fix serial buffer size for unused channel |
ARM64
| Markdown |
|---|
* [#16612stm32f401rc-rs485: Add support to MAX31855 and MAX6675 * [#16780](https://github.com/apache/nuttx/pull/1678016612) boardsarch/arm/stm32f4discoveryarm64: Addenable supportarm64 tohardware HX711 ADCbreakpoints * [#16857#16846](https://github.com/apache/nuttx/pull/1685716846) boardarch/esp: Revert mtdblock registerationarm64: Fix signal delivery in EL1 when MMU is enabled * [#16866#16826](https://github.com/apache/nuttx/pull/1686616826) boardsarch/esp32s3arm64: Addimx9 SPI slave device supportadd pci dma space and pci outbound space * [#16725#16884](https://github.com/apache/nuttx/pull/1672516884) boardsarch/arm64/espressifgicv3: addImprove supportinitialization forin SDMMCwarm over SPI for ESP32-C3|C6|H2reboot case * [#16812#16743](https://github.com/apache/nuttx/pull/1681216743) boardsarch/arm64/imxrtimx9: Fix issues and add USBHOST support to arcx-socket-gridfor imx95 * [#16824#16727](https://github.com/apache/nuttx/pull/1682416727) boardsarch/imxrt/arcx-socket-grid: Remove debug symbolsarm64/imx9: eDMA5 Allow sharing with Linux * [#16535#16844](https://github.com/apache/nuttx/pull/1653516844) boards/nucleo-f446rearch/arm64/imx9: fixFix adcfirst exampletrace * [#16592#16900](https://github.com/apache/nuttx/pull/1659216900) boards/nucleo-f446rearch/arm64/imx9: fixFix adcbus examplereset * [#16665#16719](https://github.com/apache/nuttx/pull/1666516719) boardsarch/arm64/qemuzynq-armv8ampsoc: Addfix `xedge`race examplecondition programin and documentation txint handler |
AVR
| Markdown |
|---|
* [#16659#16687](https://github.com/apache/nuttx/pull/1665916687) boards/qemu-intel64/qemu.ld: add .lbss, .ldata and .lrodata arch/avr: do not copy const variables to RAM * [#16848#16498](https://github.com/apache/nuttx/pull/1684816498) arch/avr: fix atomic load functions from arch_atomic.c * [#16586](https://github.com/apache/nuttx/pull/16586) arch/avr: fix atomic load functions from arch_atomic.c |
RISC-V
| Markdown |
|---|
* [#16692](https://github.com/apache/nuttx/pull/16692) arch/[risc-v/xtensa]: Add SHA accelerator support for esp32[-s2|-s3|-c3|-c6|-h2]
* [#16694](https://github.com/apache/nuttx/pull/16694) arch/risc-v: Add LP_I2C support for esp32[-c6]
* [#16683](https://github.com/apache/nuttx/pull/16683) arch/risc-v: Add LPUART support for esp32[-c6]
* [#16685](https://github.com/apache/nuttx/pull/16685) arch/risc-v: Change DMA functions with common layer for esp32[-c3|-c6|-h2]
* [#16565](https://github.com/apache/nuttx/pull/16565) arch/risc-v: Fix `rv-virt:nsbi[|64]` defconfigs
* [#16676](https://github.com/apache/nuttx/pull/16676) arch/risc-v: fix I2C timeout and board compilation requirements
* [#16921](https://github.com/apache/nuttx/pull/16921) arch/risc-v: Refactor Wi-Fi driver for ESP32-C3|C6
* [#16485](https://github.com/apache/nuttx/pull/16485) arch/risc-v/mpfs: Add optimized perf timer functions
* [#16850](https://github.com/apache/nuttx/pull/16850) arch/risc-v/mpfs: fixes for coremmc and emmcsd
* [#16851](https://github.com/apache/nuttx/pull/16851) arch/risc-v/mpfs: SMP interrupt handling fixes
* [#16903](https://github.com/apache/nuttx/pull/16903) arch/risc-v/mpfs/mpfs_clockconfig.c: Flag out code only used in b…
* [#16529](https://github.com/apache/nuttx/pull/16529) arch/risc-v/ricv_exception.c: Dump the process name at exception in user space
* [#16424](https://github.com/apache/nuttx/pull/16424) arch/risc-v/rp23xx-riscv: Add rp23xx(rp2350) (Pico 2 board) RISC-V support |
SIM
| Markdown |
|---|
* [#16742](https://github.com/apache/nuttx/pull/16742) arch/sim: avoid host-call being interrupted before getting errno |
TRICORE
| Markdown |
|---|
* [#16885](https://github.com/apache/nuttx/pull/16885) arch/tricore: add up_trigger_irq
* [#16910](https://github.com/apache/nuttx/pull/16910) arch/tricore: fix ld unrecognized option '-g3'
* [#16917](https://github.com/apache/nuttx/pull/16917) arch/tricore/tricore_irq.c: add up_affinity_irq |
X86_64
| Markdown |
|---|
* [#16787](https://github.com/apache/nuttx/pull/16787) arch/x86_64: Allow specifying alternative compilers via CROSSDEV environment variable |
XTENSA
| Markdown |
|---|
* [#16804](https://github.com/apache/nuttx/pull/16804) arch/xtensa: Fix a race condition in xtensa_sig_deliver for SMP
* [#16750](https://github.com/apache/nuttx/pull/16750) arch/xtensa: fix build break if compiler without ISA - XCHAL_HAVE_THREADPTR support
* [#16686](https://github.com/apache/nuttx/pull/16686) arch/xtensa: Fix dedicated GPIO build error for esp32[-s2|-s3]
* [#16672](https://github.com/apache/nuttx/pull/16672) arch/xtensa: support more than 32 cpu interrupts
* [#16744](https://github.com/apache/nuttx/pull/16744) arch/xtensa/esp32: fix esp32(s3)_async_op() asynchronous operation race issue
* [#16883](https://github.com/apache/nuttx/pull/16883) arch/xtensa/esp32: fix some compilation warnings
* [#16882](https://github.com/apache/nuttx/pull/16882) arch/xtensa/esp32: fix the issue of erasing a wide range of flash sectors
* [#16894](https://github.com/apache/nuttx/pull/16894) arch/xtensa/esp32,esp32s3: Start the "spiflash_op" thread with corret affinity
* [#16878](https://github.com/apache/nuttx/pull/16878) arch/xtensa/esp32s3: Add EXT1 wakeup support in power management
* [#16756](https://github.com/apache/nuttx/pull/16756) arch/xtensa/esp32s3: Fix bug related to the PSRAM-allocated task stack
* [#16566](https://github.com/apache/nuttx/pull/16566) arch/xtensa/esp32s3: Fix Esp32S3 LCD FB resolution.
* [#16603](https://github.com/apache/nuttx/pull/16603) arch/xtensa/esp32s3: Remove LCD Warnings.
* [#16607](https://github.com/apache/nuttx/pull/16607) arch/xtensa/esp32s3: Remove LCD Warnings.
* [#16856](https://github.com/apache/nuttx/pull/16856) arch/xtensa/esp32s2: Remove duplicated lines to fix warning |
Driver Support
New Driver Support
| Markdown |
|---|
* [#16836](https://github.com/apache/nuttx/pull/16836) drivers/analog/ads7046: Add support for ADS7046 ADC
* [#16714](https://github.com/apache/nuttx/pull/16714) drivers/input: Create Single Button Multi Actions
* [#16902](https://github.com/apache/nuttx/pull/16902) drivers/ioexpander: Add support for pcal6416
* [#16934](https://github.com/apache/nuttx/pull/16934) drivers/ioexpander/aw9523b: New driver for AW9523B i/o expander
* [#16217](https://github.com/apache/nuttx/pull/16217) drivers/leds: Add support for KTD2052
* [#16660](https://github.com/apache/nuttx/pull/16660) drivers/net: add IGB network card support
* [#16623](https://github.com/apache/nuttx/pull/16623) drivers/net: add support for the NCV7410 10BASE-T1S SPI MAC-PHY
* [#16605](https://github.com/apache/nuttx/pull/16605) drivers/sensors: add Quectel L86-XXX GNSS uORB sensor driver
* [#16838](https://github.com/apache/nuttx/pull/16838) drivers/sensors/tmp112: Add support for TMP112 temperature sensor |
Improvements
| Markdown |
|---|
* [#16715](https://github.com/apache/nuttx/pull/16715) drivers/analog/ads1115.h: Add ioctl for conversion trigger
* [#16875](https://github.com/apache/nuttx/pull/16875) drivers/can/kvaser_pci: configure number of passes in interrupt handler
* [#16738](https://github.com/apache/nuttx/pull/16738) drivers/fs:Always use register_mtddriver() to register the MTD device (patch2)
* [#16914](https://github.com/apache/nuttx/pull/16914) drivers/i2s/i2schar: Implement ioctl commands and blocking read/write operations
* [#16745](https://github.com/apache/nuttx/pull/16745) drivers/ioexpander/icjx.c: reconfigure icjx after undervoltage
* [#16729](https://github.com/apache/nuttx/pull/16729) drivers/misc/optee: Cache coherency when MMU is disabled
* [#16734](https://github.com/apache/nuttx/pull/16734) drivers/misc/optee: expand RPC suppport for IMX9
* [#16800](https://github.com/apache/nuttx/pull/16800) drivers/misc/optee_smc: Explicitly yield during NW interrupts
* [#16801](https://github.com/apache/nuttx/pull/16801) drivers/misc/optee_smc: Fix sched_yield() on flat builds
* [#16473](https://github.com/apache/nuttx/pull/16473) drivers/mtd: fix compile warning
* [#16577](https://github.com/apache/nuttx/pull/16577) drivers/mtd: fix compile warning
* [#16789](https://github.com/apache/nuttx/pull/16789) drivers/mtd: introduce nvblk
* [#16642](https://github.com/apache/nuttx/pull/16642) drivers/mtd/ftl/bch: Add direct writing method for FTL
* [#16906](https://github.com/apache/nuttx/pull/16906) drivers/net: ksz9477 fixes
* [#16899](https://github.com/apache/nuttx/pull/16899) drivers/net: Remove NCV7410 driver and corresponding board support
* [#16661](https://github.com/apache/nuttx/pull/16661) drivers/net: various fixes for e1000 and igc
* [#16649](https://github.com/apache/nuttx/pull/16649) drivers/net/Kconfig: Move NET_IGC_TXDESC and NET_IGC_RXDESC to NET_IG…
* [#16526](https://github.com/apache/nuttx/pull/16526) drivers/optee: fix compile break
* [#16767](https://github.com/apache/nuttx/pull/16767) drivers/pci: epc add dma heap
* [#16753](https://github.com/apache/nuttx/pull/16753) drivers/segger: Add a kconfig to override Segger SystemView target sources version
* [#16510](https://github.com/apache/nuttx/pull/16510) drivers/segger: Change SEGGER_RTT_LOCK into rspinlock
* [#16512](https://github.com/apache/nuttx/pull/16512) drivers/segger: define a macro using a configuration variable
* [#16805](https://github.com/apache/nuttx/pull/16805) drivers/sensor: Add flags for GNSS satellite
* [#16764](https://github.com/apache/nuttx/pull/16764) drivers/sensors/l86xxx: Fix driver registration crashes
* [#16701](https://github.com/apache/nuttx/pull/16701) drivers/sensors/l86xxx: Fix Kconfig options and dependencies
* [#16821](https://github.com/apache/nuttx/pull/16821) drivers/sensors/l86xxx: Mutex fixes & performance improvements
* [#16778](https://github.com/apache/nuttx/pull/16778) drivers/sensors/l86xxx: Use uORB GNSS lower-half
* [#16717](https://github.com/apache/nuttx/pull/16717) drivers/sensors/nau7802: Added frequency control
* [#16466](https://github.com/apache/nuttx/pull/16466) drivers/serial: fix race conditions
* [#16573](https://github.com/apache/nuttx/pull/16573) drivers/serial: fix race conditions
* [#16820](https://github.com/apache/nuttx/pull/16820) drivers/syslog/syslog_channel.c: fix incompatible-pointer-types compile errors
* [#16677](https://github.com/apache/nuttx/pull/16677) drivers/touchscreen: Add support for mirror/swap
* [#16788](https://github.com/apache/nuttx/pull/16788) drivers/video: add sched_note_mark at fb_remove_paninfo and fb_notify_vsync |
Board Support
New Board Support
| Markdown |
|---|
* [#16443](https://github.com/apache/nuttx/pull/16443) boards/avr/atmega: Added Elegoo Mega2560r3 board
* [#16781](https://github.com/apache/nuttx/pull/16781) boards/imxrt: Add support to ARCX Socket Grid board
* [#16558](https://github.com/apache/nuttx/pull/16558) boards/xtensa/esp32s3: add new esp32s3-8048S043 board |
Improvements
| Markdown |
|---|
* [#16792](https://github.com/apache/nuttx/pull/16792) boards/arm: Fix Kconfig style
* [#16663](https://github.com/apache/nuttx/pull/16663) boards/arm/lpc17xx_40xx/lincoln60: Correct defconfig for THTTPD_CGIINBUFFERSIZ spelling
* [#16833](https://github.com/apache/nuttx/pull/16833) boards/arm/qemu: Change config name of input tool
* [#16931](https://github.com/apache/nuttx/pull/16931) boards/arm/rp23xx/common: update board reset via BOOTROM functions
* [#16707](https://github.com/apache/nuttx/pull/16707) boards/arm/stm32f401rc-rs485: Add support to HX711 ADC
* [#16779](https://github.com/apache/nuttx/pull/16779) boards/arm/stm32f401rc-rs485: Add support to MAX31855 and MAX6675
* [#16780](https://github.com/apache/nuttx/pull/16780) boards/arm/stm32f4discovery: Add support to HX711 ADC
* [#16857](https://github.com/apache/nuttx/pull/16857) board/esp: Revert mtdblock registeration
* [#16866](https://github.com/apache/nuttx/pull/16866) boards/esp32s3: Add SPI slave device support
* [#16725](https://github.com/apache/nuttx/pull/16725) boards/espressif: add support for SDMMC over SPI for ESP32-C3|C6|H2
* [#16812](https://github.com/apache/nuttx/pull/16812) boards/imxrt: Fix issues and add USBHOST support to arcx-socket-grid
* [#16824](https://github.com/apache/nuttx/pull/16824) boards/imxrt/arcx-socket-grid: Remove debug symbols
* [#16535](https://github.com/apache/nuttx/pull/16535) boards/nucleo-f446re: fix adc example
* [#16592](https://github.com/apache/nuttx/pull/16592) boards/nucleo-f446re: fix adc example
* [#16665](https://github.com/apache/nuttx/pull/16665) boards/qemu-armv8a: Add `xedge` example program and documentation
* [#16659](https://github.com/apache/nuttx/pull/16659) boards/qemu-intel64/qemu.ld: add .lbss, .ldata and .lrodata
* [#16848](https://github.com/apache/nuttx/pull/16848) boards/risc-v/rp23xx-rv/common: update board reset via BOOTROM functions
* [#16646](https://github.com/apache/nuttx/pull/16646) boards/riscv-v/esp32c6: Add the NCV7410 10BASE-T1S SPI MAC-PHY support
* [#16898](https://github.com/apache/nuttx/pull/16898) boards/tricore: rename tc397 chip board name
* [#16505](https://github.com/apache/nuttx/pull/16505) boards/xtensa/esp32: Add BLE config to esp32-sparrow
* [#16602](https://github.com/apache/nuttx/pull/16602) boards/xtensa: support SDMMC over SPI on ESP32|S2|S3
* [#16638](https://github.com/apache/nuttx/pull/16638) boards/xtensa/esp32s3/esp32s3-box: Fix ILI9342C color inversion
* [#16681](https://github.com/apache/nuttx/pull/16681) boards/weact-stm32h743 Add sdcard support
* [#16785](https://github.com/apache/nuttx/pull/16785) boards/weact-stm32h743: Add support to ST7735 display |
File System
Improvements
| Markdown |
|---|
* [#16722](https://github.com/apache/nuttx/pull/16722) fs/block_proxy: fix the issue of the refs count for filep being zeroed out by utilizing dup2
* [#16938](https://github.com/apache/nuttx/pull/16938) fs/fat: Fix wrong alloc used in fat_zero_cluster()
* [#16536](https://github.com/apache/nuttx/pull/16536) fs/fcntl: using ioctl to implement FIOGCLEX/FIOCLEX/FIONCLEX
* [#16832](https://github.com/apache/nuttx/pull/16832) fs/lock: Allow driver lock
* [#16598](https://github.com/apache/nuttx/pull/16598) fs/procfs: fix output format of fd info
* [#16518](https://github.com/apache/nuttx/pull/16518) fs/smartfs: Fix a fatal bug about sector writing after seek
* [#16590](https://github.com/apache/nuttx/pull/16590) fs/smartfs: Fix a fatal bug about sector writing after seek
* [#16490](https://github.com/apache/nuttx/pull/16490) fs/vfs: check if all `iov_base` are accessible
* [#16584](https://github.com/apache/nuttx/pull/16584) fs/vfs: check if all iov_base are accessible
* [#16609](https://github.com/apache/nuttx/pull/16609) fs/vfs: clear filep when call file_open/file_mq_open to avoid random value[bug fix]
* [#16538](https://github.com/apache/nuttx/pull/16538) fs/vfs/fs_close.c: avoid double free if CONFIG_FS_NOTIFY is set
* [#16455](https://github.com/apache/nuttx/pull/16455) fs/vfs/fs_rename: fix directory move operation. |
Networking
Improvements
| Markdown |
|---|
* [#16926](https://github.com/apache/nuttx/pull/16926) include/net/if.h: Add mechanism for MMD access with SIOCxMIIREG ioctls
* [#16628](https://github.com/apache/nuttx/pull/16628) net: Enable TCP/IP backlog by default
* [#16684](https://github.com/apache/nuttx/pull/16684) net/arp: avoid unnecessary ARP requests
* [#16905](https://github.com/apache/nuttx/pull/16905) net/can: fixes and cleanups
* [#16682](https://github.com/apache/nuttx/pull/16682) net/local: correct shutdown state when use UDP mode (To fix issue: https://github.com/apache/nuttx/issues/16555)
* [#16494](https://github.com/apache/nuttx/pull/16494) net/utils: avoid unalign access g_tcp_connections_buffer
* [#16585](https://github.com/apache/nuttx/pull/16585) net/utils: avoid unalign access g_tcp_connections_buffer
* [#16599](https://github.com/apache/nuttx/pull/16599) netdb/lib_dnsquery.c: prevent file descriptor leakage
* [#16606](https://github.com/apache/nuttx/pull/16606) netdb/lib_dnsquery.c: In the IPv6 or IPv4 dns_query_callback() block,… |
Unsorted contributions
| Markdown |
|---|
* [#16644](https://github.com/apache/nuttx/pull/16644) espressif: update lower-half drivers * [#16467](https://github.com/apache/nuttx/pull/16467) audio/comp: fix build warning caused by invalid return value * [#16469](https://github.com/apache/nuttx/pull/16469) mcx-nxxx: Add LPI2C driver for mcx-nxxx architecture * [#16474](https://github.com/apache/nuttx/pull/16474) syslog/rpmsg: disable force put char to lower putc * [#16479](https://github.com/apache/nuttx/pull/16479) sensors/nau7802: Fix format warning * [#16482](https://github.com/apache/nuttx/pull/16482) Fix i.MX93 ENET1 (EMAC) TXC muxing and RGMII-ID setting * [#16483](https://github.com/apache/nuttx/pull/16483) Segger sysview improvements * [#16486](https://github.com/apache/nuttx/pull/16486) add spin_lock_irqsave_nopreempt rspin_lock_irqsave_noprempt implement. * [#16487](https://github.com/apache/nuttx/pull/16487) Fix arch perf events ifdef in alarm * [#16489](https://github.com/apache/nuttx/pull/16489) Added support obtaining the unique id for the stm32f0l0g0 family * [#16491](https://github.com/apache/nuttx/pull/16491) espressif[risc-v|xtensa]: Check events when reading PCNT counter value * [#16492](https://github.com/apache/nuttx/pull/16492) add FDCAN support for STM32C0 * [#16493](https://github.com/apache/nuttx/pull/16493) RFC 5424 implementation for SYSLOG * [#16495](https://github.com/apache/nuttx/pull/16495) minor stream improvement * [#16496](https://github.com/apache/nuttx/pull/16496) improve libc/stream subsystem * [#16500](https://github.com/apache/nuttx/pull/16500) Add ADC support for STM32G0 (along with oversampling) * [#16508](https://github.com/apache/nuttx/pull/16508) riscv qemu-rv: fix kernel mapping by enabling CONFIG_MM_KMAP in knsh * [#16509](https://github.com/apache/nuttx/pull/16509) Update the ELF guides * [#16511](https://github.com/apache/nuttx/pull/16511) nuttx/spinlock: Define empty macro for spin_unlock * [#16519](https://github.com/apache/nuttx/pull/16519) imx9/smp: Add SMP support for imx93 * [#16527](https://github.com/apache/nuttx/pull/16527) nxgdb/fs: fix exception when failed to parse symbol * [#16533](https://github.com/apache/nuttx/pull/16533) Update MCUBoot build process for Espressif devices * [#16540](https://github.com/apache/nuttx/pull/16540) qemu/armv8a: fastboot tcp defconfig + documentation. * [#16549](https://github.com/apache/nuttx/pull/16549) Minor improve to stream * [#16550](https://github.com/apache/nuttx/pull/16550) gitignore: add more vim swap files * [#16552](https://github.com/apache/nuttx/pull/16552) spinlock: Better recursive spinlock implementation. * [#16556](https://github.com/apache/nuttx/pull/16556) risc-v/mmu: Fix map_region() for incorrect page table setup when vadd… * [#16562](https://github.com/apache/nuttx/pull/16562) esp32s3: update config and doc for fastboot * [#16567](https://github.com/apache/nuttx/pull/16567) Move assemble soure files out off gnu folder * [#16569](https://github.com/apache/nuttx/pull/16569) Refine vfs source file layout * [#16571](https://github.com/apache/nuttx/pull/16571) remove warnings * [#16574](https://github.com/apache/nuttx/pull/16574) audio/comp: fix build warning caused by invalid return value * [#16578](https://github.com/apache/nuttx/pull/16578) syslog/rpmsg: disable force put char to lower putc * [#16580](https://github.com/apache/nuttx/pull/16580) mcx-nxxx: Add LPI2C driver for mcx-nxxx architecture * [#16582](https://github.com/apache/nuttx/pull/16582) sensors/nau7802: Fix format warning * [#16583](https://github.com/apache/nuttx/pull/16583) Fix i.MX93 ENET1 (EMAC) TXC muxing and RGMII-ID setting * [#16588](https://github.com/apache/nuttx/pull/16588) riscv qemu-rv: fix kernel mapping by enabling CONFIG_MM_KMAP in knsh … * [#16591](https://github.com/apache/nuttx/pull/16591) Update MCUBoot build process for Espressif devices * [#16595](https://github.com/apache/nuttx/pull/16595) risc-v/mmu: Fix map_region() for incorrect page table setup when vadd… * [#16596](https://github.com/apache/nuttx/pull/16596) Fix arch perf events ifdef in alarm * [#16597](https://github.com/apache/nuttx/pull/16597) fix framebuffer config resolution. * [#16604](https://github.com/apache/nuttx/pull/16604) [ESP32S3] Add LCD defconfig * [#16615](https://github.com/apache/nuttx/pull/16615) debug/0 address: Add 0 address access panic configuration * [#16618](https://github.com/apache/nuttx/pull/16618) Enhanced Kasan * [#16619](https://github.com/apache/nuttx/pull/16619) arm64/v8r: support clang compilation * [#16629boards/risc-v/rp23xx-rv/common: update board reset via BOOTROM functions * [#16646](https://github.com/apache/nuttx/pull/1664616629) boards/riscv-v/esp32c6: Add the NCV7410 10BASE-T1S SPI MAC-PHY supportbugfix: share kernel thread group should not dup files from caller group * [#16898#16635](https://github.com/apache/nuttx/pull/1689816635) boards/tricore:Add a renameheader tc397file chipas boarda namedependency * [#16505#16651](https://github.com/apache/nuttx/pull/1650516651) boards/xtensa/esp32: Add BLE config to esp32-sparrowRefactored the btuart_rxwork function to improve data reception stability. * [#16602#16654](https://github.com/apache/nuttx/pull/1660216654) boardsimx9/xtensalpuart: supportFix SDMMCrace overcondition SPI/ on ESP32|S2|S3 regression in imx9_txint * [#16638#16671](https://github.com/apache/nuttx/pull/1663816671) boardssem/xtensa/esp32s3/esp32s3-boxtrywait/atomic: Fix ILI9342C color inversion * [#16681](https://github.com/apache/nuttx/pull/16681) boards/weact-stm32h743 Add sdcard supportthe try wait abort by interrupted caused false failure report. * [#16785#16674](https://github.com/apache/nuttx/pull/1678516674) boardsxtensa/weact-stm32h743espressif: Change AddLEDC supportimplementation to ST7735 display |
File System
Improvements
| Markdown |
|---|
common one * [#16722#16690](https://github.com/apache/nuttx/pull/1672216690) fs/block_proxycoredump: fixFix themissing issueloglevel ofto the refs count for filep being zeroed out by utilizing dup2logmask conversion * [#16938#16700](https://github.com/apache/nuttx/pull/1693816700) fssensors/fatbmi160,270: Fix wronga allocbug usedsensor_time in fat_zero_cluster()is truncated * [#16536#16718](https://github.com/apache/nuttx/pull/1653616718) fsarm64/fcntlqemu: usingdecouple ioctlqemu toboard implement FIOGCLEX/FIOCLEX/FIONCLEXfrom chip * [#16832#16735](https://github.com/apache/nuttx/pull/1683216735) fs/lock: Allow driver lockespressif: fix MCUBoot OTA on Espressif devices. * [#16598#16754](https://github.com/apache/nuttx/pull/1659816754) fs/procfs espressif: PCNT: fixadd high outputand formatlow oflimit fdKconfig infooptions * [#16518#16765](https://github.com/apache/nuttx/pull/1651816765) fs/smartfsnucleo-h743zi: FixAdd aADC2 fatalsupport bugand aboutexpand sectorADC writingchannel after seeklist * [#16590#16769](https://github.com/apache/nuttx/pull/1659016769) fs/smartfsesp32s3_extraheaps.c: Fixadd a fatalmissing buginclude about sector writing after seekfor xtensa_imm_initialize * [#16490#16771](https://github.com/apache/nuttx/pull/1649016771) fscrypto/vfscryptosoft: checkfix ifaadlen allused `iov_base` are accessibleuninitialized warning * [#16584#16773](https://github.com/apache/nuttx/pull/1658416773) fs/vfs: check if all iov_base are accessibleadd esp32s3-devkit:mbedtls kconfig * [#16609#16798](https://github.com/apache/nuttx/pull/1660916798) fs/vfsarm64: clearporting filepmu whendrv call file_open/file_mq_open to avoid random value[bug fix]and scmi from arm imx9 * [#16538#16807](https://github.com/apache/nuttx/pull/1653816807) fsbugix/vfs/fs_close.crisc-v/esp32c6: avoidFix doublebuild freeerror ifof CONFIG_FS_NOTIFY is setLP_I2C * [#16455#16813](https://github.com/apache/nuttx/pull/1645516813) fs/vfs/fs_rename: fix directory move operation. |
Networking
Improvements
| Markdown |
|---|
* [#16926Fix compilation errors with c++ * [#16819](https://github.com/apache/nuttx/pull/1692616819) include/net/if.h: Add mechanismIncrease buffer sizes for MMD access with SIOCxMIIREG ioctlsuORB devices * [#16628#16830](https://github.com/apache/nuttx/pull/1662816830) net: Enable TCP/IP backlog by defaulth743zi/capture: add doc, defconfig & update make pipeline * [#16684#16839](https://github.com/apache/nuttx/pull/1668416839) netcrypto/arphmac: Fix typo avoidin unnecessaryfunction ARPimplementation requestsnames * [#16905#16843](https://github.com/apache/nuttx/pull/1690516843) net/canpci: fixes and cleanupsepf test default a function * [#16682#16845](https://github.com/apache/nuttx/pull/1668216845) netsys/localsocket.h: wrap correctthe shutdownouter statelayer whenof usestruct UDPsockaddr_storage modewith (To fix issue: https://github.com/apache/nuttx/issues/16555aligned(SS_ALIGNSIZE) * [#16494#16852](https://github.com/apache/nuttx/pull/16494) net/utils: avoid unalign access g_tcp_connections_buffer16852) risc-v/mpfs: usb: don't try nonexistent ep int flags * [#16585#16853](https://github.com/apache/nuttx/pull/1658516853) net/utils: avoid unalign access g_tcp_connections_bufferMpfs map mtime in userspace * [#16599#16874](https://github.com/apache/nuttx/pull/1659916874) netdb/lib_dnsquery.c: prevent file descriptor leakageAdd missing PSE52 interfaces * [#16606#16879](https://github.com/apache/nuttx/pull/1660616879) netdb/lib_dnsquery.c: In the IPv6 or IPv4 dns_query_callback() block,…include/nuttx/compiler.h: |
Compatibility Concerns
| Markdown |
|---|
* [#16499](https://github.com/apache/nuttx/pull/16499) [BREAKING] fs/vfs: Separate file descriptors from file descriptions This PR is a rework of the NuttX file descriptor implementation. The goal is two-fold: Improve POSIX compliance. The old implementation tied file description to inode only, not the file struct. POSIX however dictates otherwise. Fix a bug with descriptor duplication (dup2() and dup3()). There is an existing race condition with this POSIX API that currently results in a kernel side crash. The crash occurs when a partially open / closed file descriptor is duplicated. The reason for the crash is that even if the descriptor is closed, the file might still be in use by the kernel (due to e.g. ongoing write to file). The open file data is changed by file_dup3() and this causes a crash in the device / drivers themselves as they lose access to the inode and private data. The fix is done by separating struct file into file and file descriptor structs. The file struct can live on even if the descriptor is closed, fixing the crash. This also fixes the POSIX issue, as two descriptors can now point to the same file. The implementation of this PR is based on the modifications made in #16361. Thank you @pussuw DEPENDS ON: apache/nuttx-apps#3091 IMPACT Remove the FS_REFCOUNT config because reference counting is a very necessary feature that is required in many scenarios to ensure stability. Rename the functions fs_getfilep, fs_putfilep, and fs_reffilep to file_get, file_put, and file_ref respectively, to unify the naming convention to file_xxx, such as file_open, file_ioctl, etc. Introduce a new fd (file descriptor) structure. If multiple file descriptors (fds) are in a dup relationship, they can share the same file entity to implement the dup functionality. Modify the functions nx_close_from_tcb, nx_open_from_tcb, nx_dup2_from_tcb, and nx_dup3_from_tcb to fdlist_open, fdlist_close, fdlist_dup2, and fdlist_dup3 respectively, to uniformly operate on file descriptors using fdlist. |
...