Apache NuttX-12.7.0 Release Notes

What’s New In This Release Core OS Sched

  • #13395 Critmon optimize, make possible open cpuload based on critmon and disable critical section & sched_lock to save cost.
  • #12691 sched.h: add SCHED_BATCH and SCHED_IDLE definition
  • #12584 sched.h: CPU_XXX macros can also be used without CONFIG_SMP
  • #12703 sched.h: Update doc link for tcbinfo_s
  • #13274 sched: add DEBUGASSERT to assure that affinity not zero
  • #13341 sched: adjust the scheduling strategy
  • #13105 sched: change pthread_mutex implementation from sem to mutex
  • #12742 sched: Improve Kconfig help of INIT_ENTRYPOINT
  • #13525 sched: move DUMP_ON_EXIT to sched
  • #13211 sched: replace up_cpu_index with this_cpu
  • #13271 sched: use this_task replace nxsched_self
  • #13263 sched/event: clear pending events before enable the scheduler
  • #13329 sched/group/setuptask_file: duplicate idle task fd for kernel thread
  • #13083 sched/irq: correct critical section to spin lock
  • #12802 sched/nxevent: add support of kernel event group
  • #13264 sched/policy: move g_policy from data to rodata
  • #13017 sched/sched: simplify the implementation of the function nxsched_readytorun_setpriority
  • #13134 sched/signal: fix pthread_kill use after free
  • #13530 sched/signal: Simplified Implementation for SIGEV_THREAD_TID
  • #12283 sched/signal: There is no need to use sched_[un]lock
  • #12553 sched/tcb: amend pull/12320 mm
  • #12550 mm: add mm_initialize_pool, make pool more flexible
  • #12556 mm: mm_threshold perfer from init
  • #12501 mm/iob: Simplify IOB alloc/free logic
  • #12923 mm/map/vm_region.c: Fix usage of void* arithmetics
  • #12946 mm/mempool: rename the mempool_alloc and mempool_free function
  • #12659 mm_ubsan: add dummy to bypass runtime actions
  • #12646 mm_ubsan: add implement for dynamic_type_cache_miss libc
  • #12672 add rint and expm1 function to cmath from libm
  • #13420 Add dummy implementations for shm_open pthread_setaffinity_np and RLIMIT_RTPRIO
  • #13429 arm64_task/pthread_start: Convert the C / inline ASM code to assembly
  • #13366 arm64/task/pthread_start: Fix rare issue with context register location
  • #13011 lib_getcwd:Fix the Name in the function description.
  • #12966 lib_remove:Repair the logical judgment
  • #12890 libc: Add macro restrictions to code that uses floating point numbers
  • #13111 libc: compile stackchk function by default
  • #12953 libs: fix the default value of process-shared attribute
  • #12975 libs: fix the default value of process-shared attribute
  • #12605 libc: scanf, printf %z change switch const to if
  • #12585 libc/execinfo: extract a common backtrace format function
  • #13013 libc/msic: Implement get_nprocs API
  • #13381 libc/misc/crc32: crc32 add slow mode, optional decrease size
  • #13441 libc/netdb: Remove unnecessary CONFIG_LIBC_NETDB checks
  • #13025 libc/netdb: Separate IPv4 and IPv6 cache size limit
  • #13220 libc/sysconf: add _SC_GETPW_R_SIZE_MAX
  • #13479 libc/time: add g_lcl_lock to protect local context in localsub
  • #13080 libc/time: remove lib_strptime
  • #12693 libc/unistd: added an implementation of the lib_flock function
  • #12609 libc/x86_64: port string functions from bionic
  • #13110 libcxxabi: libcxxabi enables exceptions by default
  • #13079 libs/libc/obstack: correctly append null byte at the end of string
  • #13482 libs/libc/obstack: implement ptr and int growing functions
  • #13495 libs/libc/obstack: revert invalid null byte append to obstack_vprintf
  • #13185 libs/libc/stdio/*printf *scanf:Add string serialization and deserialization functions
  • #13294 libs/libm: fix epsilon relaxation in log and logf
  • #13307 libs/libm/libm: apply epsilon relax factor only if epsilon is small
  • #12568 libm{libm newlib}: fix broken sincos optimization for GCC
  • #12811 libm/copysign: respect signed zero/NaN handling in copysign
  • #13174 syscall: delete getrandom in syscall because it have moved to lib
  • #13428 gdb plugin: Encapsulate the gdb native command gcore as nxgcore
  • #12557 gdbstub: fix typo
  • #12549 gdbstub: support gdbstub_debugpoint_add/remove smp call
  • #13339 nuttx/pthread: export priority protect in pthread with ceiling priority in semaphore
  • #12561 pthread: add pthread_self/pthread_gettid_np function
  • #13462 pthread_mutx: remove unused critical_secton lock
  • #13456 pthread_mutex: add deadlock assert tools
  • #12701 Feature/mcuboot toolchain support
  • #13021 tools: add improved pre-commit tool
  • #12794 tools: nxstyle if statement check
  • #12651 tools/imx9: prepare bootable bootloader image
  • #12838 tools/[Rust D]: Fix build break for RISC-V
  • #12854 tools/[Rust D]: Fix the Rust and D Builds for QEMU RISC-V
  • #12983 tools/parsetrace.py:fix parsetrace script error
  • #13321 greenhills support: add ghs linker script for mps2-an500 platform
  • #12884 greenhills support: add Kconfig, makefile, make.defs support for ghs compiler
  • #12887 greenhills support: add new platform of qemu cortex-m7
  • #13146 greenhills support: add the “__sync_synchronize” func impl
  • #12877 greenhills support: add up_getsp() implementation to adapting greenhills compiler
  • #12883 greenhills support: fix the asm build error for adapting to greenhills compiler
  • #12885 greenhills support: fix the build and link error specific to ghs platform
  • #13144 greenhills support: fix the build options warning
  • #13207 greenhills support: fix the build option warning
  • #13145 greenhills support: fix the build warning while support greenhills build
  • #12886 greenhills support: fix the build warning for ghs platform
  • #13533 greenhills support: fix the enumerated type mixed using warning
  • #13322 greenhills support: fix the ghs build warning
  • #13502 greenhills support: fix the greenhills compile warning on sizeof operand
  • #13195 greenhills support: fix the pointless comparison build warning various
  • #12552 compiler.h: rename CMSE extension attribute macros
  • #12874 fix stm32wl5_rcc.h: Add the missing argument to RCC_PLLCFG_PLLP define.
  • #13148 include/fcntl.h: add O_LARGEFILE flags
  • #13324 include/sensors: import public definitions types and to uorb.h
  • #12690 ioctl.h: add SIOCATMARK definition to resolve compilation errors
  • #13314 ip6_tables.h: fix gcc 14 errors
  • #13257 socketlin : add lin.h and lin bus-type
  • #12692 sysinfo.h: add get_nprocs_conf/get_nprocs definition
  • #13149 sys/shm.h: add macro define for posix
  • #12594 x86_64/irq.h: use 32bit operations in up_cpu_index(

Build System New Features

  • #12904 [Cross-Platform] Remove Unix-specific code in savedefconfig and replace it with cmake script
  • #12910 [cmake] add_application supports only registration but not compilation
  • #12964 [cmake] split the archive process to avoid parameter too long problems
  • #13019 [cmake] add nuttx_post and app_context inter targets for timing control
  • #12908 [Win32 sim] enable win32 native platfrom sim compilation by CMake fix compilation error
  • #12900 arch/sim/src/cmake/Toolchain.cmake: macOS fix unknown options: –gc-sections
  • #12856 build: Fix libc/pwd CMakeLists.txt
  • #13347 build: fix memory manager compile options for CMake
  • #12859 build: Fix Toolchain.cmake for CONFIG_SIM_ASAN enabled
  • #12880 build: set CMake policy to allow FetchContent_Populate
  • #12784 build/cmake: add user_ldscript preprocessing
  • #12866 build/cmake: fix system include dir for PROTECTED mode
  • #13143 board/maix-bit: initial cmake support
  • #13090 board/qemu-armv7a: add CMake support
  • #12868 boards/rv-virt: cmake for pnsh and nsbi
  • #13175 Cmake: [arch arm] added initial support for MSYS2
  • #13389 cmake: add support for PCI
  • #12516 cmake: reuse OpenAMP own CMake script for CMake build
  • #12592 cmake: refine sim cmake redefine symbols
  • #13449 cmake: Refactor extra_lib tagert,build include_arch path,refine sim link script target
  • #12667 cmake: strip file full path to save the code size
  • #13451 cmake: support openlibm,dhara,libmcs,lic regex CMake build scripts
  • #12608 cmake/add_library: enable library install by default
  • #12714 cmake/boards: fix build break on custom board
  • #13085 CMakeLists.txt: warning D9002 on Windows + msvc
  • #13253 cmake/nuttx_kconfig.cmake: fixed the correct .config path in the buid folder
  • #13276 cmake/tricore: filter out nostdlib in linker phase to avoid build break
  • #13499 libc: add missing preadv/pwritev in CMakeLists.txt
  • #12700 riscv/cmake: fix Toolchain.cmake
  • #12694 riscv/k230: fix apps ROMFS cmake
  • #12996 riscv/qemu-rv: add RPTUN cmake
  • #12634 sim/cmake: enable garbage collection of unused input sections
  • #12721 tools/testbuild.sh: add option -N use CMake with Ninja
  • #12805 tools/testbuild.sh: added store compilation artifacts for cmake
  • #12724 tricore/cmake: add support of cmake build for tricore Bug Fixes
  • #12558 [bugfix] cmake:fix a few issues during CMake build
  • #12915 [bugfix] fix CMake build block when enable LTO
  • #12582 Fix cmake for cxd56xx
  • #12581 cmake: Fix build failure when -DNUTTX_APPS_DIR is specified
  • #13171 CMake: fix CMake compile errors during the protected build mode
  • #13081 cmake: fix invalid syntax when generating version.h from tags

Architectural Support unsorted

  • #12827 Additional encoder for F7 and added functions for TimerHook for F745 …
  • #12924 Bugfix/esp spi fix
  • #12770 Enable SMPS for STM32H745I-DISCO by default
  • #12574 arch: Add –whole-archive linker option for some of architectures
  • #13200 arch: cxd56xx: Add logic for i2c reset
  • #13496 arch: cxd56xx: Fix issue by update of inode reference
  • #13201 arch: cxd56xx: Fix SCU sensor data format
  • #12962 arch: inline this_task to improve performence
  • #13270 arch: remove unused up_cpu_pausereq waiting
  • #13423 arch: use up_current_regs/up_set_current_regs replace CURRENT_REGS
  • #13041 arch/EXTRA_LIBS: link all staging library.
  • #12624 arch/sim: add custom data section support
  • #12909 arch/sim/Kconfig: set SIM_FBBPP to 32 by default
  • #12845 arch/stm32h7: add defines for USART clock selection
  • #13292 arch/xmc4 : Add input pin DX0 selection for multiple SPI channel
  • #12823 arch/xmc4 : Fixed critical section in i2c_transfer
  • #12761 arch/xmc4 : i2c master lower-half driver
  • #12545 BL808: Add support for UARTs 0-2 and serial configuration
  • #12575 BL808: Replace courier with M0 interrupt controller
  • #12795 elf: Enable ELF loader if text heap read is word-aligned and enable ELF loader for ESP32-S3
  • #12620 esp32: add simple boot support
  • #12616 ESP32: emac initialization adding cpu id
  • #13249 esp32: enable APP_CPU cache earlier
  • #13244 esp32: cache_sram_mmu_set: update the correct register bits
  • #13222 esp32: fix a crash with PSRAM + SMP
  • #13243 esp32: fix seemingly wrong calculations
  • #13250 esp32: psram_set_cs_timing: sync with esp-idf
  • #13311 esp32: Port the bootloader patch
  • #12572 esp32[c3 c6 h2]: Add I2C master support
  • #12573 esp32[c3 c6 h2]: Add GDMA support
  • #13298 esp32c6: PCNT Quadrature Encoder driver
  • #13269 esp32s2: fix SPI flash and file system mounting
  • #12647 esp32s3-devkit: add a config for qemu
  • #12851 esp32s3-devkit/toywasm: enable ESP32S3_SPI_FLASH_SUPPORT_PSRAM_STACK
  • #12725 esp32s3_textheap.c: fix a build error w/o CONFIG_ESP32S3_SPIRAM
  • #12565 esp32s3/wifi: Fix bug related to IOB off-loading with SMP
  • #12789 esp32s3/i2s: Fix faulty initialization when SMP is enabled
  • #13265 esp32_psram.c: Remove a seemingly stale comment
  • #12669 Feature/esp mcuboot support
  • #12776 Feature/esp spi dma
  • #12775 Feature/esp temperature sensor
  • #12604 fix(esp32-qemu-openeth): allocate buffers in internal memory
  • #13193 gd32f4xx_at24: Fix uninitialized use of local variables i2c and at24
  • #13401 Imx9 ethernet fixes
  • #12632 Imx9 support flexspi m25p nor
  • #13399 imx9/edma: Fix function prototypes
  • #13400 imx9/LPUART fixes
  • #12921 imx93: Add more base addresses
  • #12623 imxrt: Correctly update PLL, bit has to toggled instead of being set
  • #12562 imxrt: imxrt11xx set core clock to 1p15v regardless of ocotp
  • #12821 k230_start.c: Fix condition for k230_copy_init_data()
  • #12894 mps3-an547:support mps3-an547 reset
  • #12989 nuttx/sim:By default, stack-use-after-return is not checked when enabling SIM_ASAN.
  • #13043 nuttx/sim:By default, stack-use-after-return is not checked when enabling SIM_ASAN.
  • #13548 nrf91: Update GPS to GNSS
  • #12612 refactor(esp32-qemu-openeth): use lower half driver interface
  • #12660 refresh esp32s3-devkit:qemu_debug
  • #12707 rp2040 Rename the RP2040-specific PWM_MULTICHAN definition
  • #12610 rp2040: Add support to MAX6675
  • #13318 rp2040: Support pico-sdk 2.0.0
  • #13070 Sync the modifications of the WiFi function in simulator.
  • #12697 s32k1xx: FlexIO i2c driver
  • #12678 samv7: fix compile warning in PWM driver
  • #12627 samv7/sam_mcan.c: fix TSEG1, TSEG2 and SJW compile warnings for MCAN1
  • #12622 sim: make possible keep ubsan and bypass feature
  • #13034 sim: read the second buffer
  • #13097 sim: Support to use of non-consecutive framebuffers
  • #13355 sim_offload: add lame library to apps/audioutils/lame
  • #12870 sim/login: remove login restrictions to improve the experience for green hands
  • #13534 sim/minmea: Fix defconfig warning
  • #13042 simwifi: Add the netlink event of connect/disconnect.
  • #12778 Small improvements to nrf91
  • #13282 smp: enable smp_call in all smp arch
  • #12566 STM32G47XXX: Added basic HRTIM support.
  • #12600 tee smp support
  • #12640 Userleds support to seed-xiao-rp2040
  • #13032 wifi_sim.c:fix compile warning

Architecture Improvements arm

  • #12626 arch/arm/stm32: Fix EXTI lines definitions for STM32G47XX.
  • #12664 arch/armv8-r: new config to set SPIs Configuration to edge-triggered
  • #12666 arch/armv8-r: update g_running_tasks before context switch
  • #13472 arch/arm-m: Clear lr before jump to __start
  • #13284 arch/arm: support kernel heap in BUILD_FLAT mode
  • #13416 arm generate busfault & recursive bug fix
  • #13268 arm: armv7-a/r and armv8-r up_cpu_index inline
  • #13024 arm: Fix DS1307 initialization for common STM32 logic
  • #12888 arm: Select ram vector on armv6m
  • #13505 arm_addrenv:fix app crash when enable shm in kernel mode
  • #12787 arm_backtrace_unwind:Make the backtrace search the entire stack as much as possible
  • #12954 arm/armv[7 8]-m: add syn barrier for MPU ops
  • #12925 arm/armv8-r: invalidate d-cache on boot
  • #12928 arm/armv8-r: add cp15 ops for mpu
  • #13529 arm/cortex-a,r: replace cp15 instruct to macros to align operation
  • #13239 arm/giv3: add g_ prefix to some global variables
  • #13262 arm/gicv3: set routing affinity before enable IRQ
  • #13240 arm/linum-stm32h753bi: Add support to RFID MFRC522
  • #12873 arm/lm3s6965-ek: Disable NTPC for lm3s6965 to fix maximum flash space…
  • #13557 arm/qemu: Add mounting of tmpfs
  • #13117 arm/qemu: enable WFI in up_idle
  • #13131 arm/spinlock: up_testset() sould not depends on SMP
  • #12879 arm/stm32f401rc-rs485: Add support to BMP280 sensor
  • #13565 arm/stm32f401rc-rs485: Add support to LCD 16x2 with I2C Backpack
  • #12839 arm/stm32f401rc-rs485: Add support to RFID MFRC522
  • #12860 arm/stm32h7/stm32h745i-disco: Add STM32H745I-DISCO Per Core Support
  • #12902 arm/stm32h7x3x_rcc.c: Add External Power Supply option to stm32h7x3x …
  • #12679 arm/xmc4: pwm driver
  • #13466 armv7-a gic related update
  • #13176 armv7-a timer:fix timer overflow.
  • #12956 armv7a/irq: enable fiq in tee, enable irq in ap
  • #13453 armv8-m:arch libc function need save ip register use pacbti
  • #13237 armv8-r/gicv3: correct cpu index of irouter
  • #13275 armv8-r/r52: add neon support into compiler lin

arm64

  • #12633 arch/arm64/src/imx9/imx9_lowputc.c: Fix an arithmetic sign error in d…
  • #12648 arch/arm64: allow to use custom up_idle
  • #13397 arch/arm64/src/imx9/imx9_lpi2c.c: Cleanups and error fixes
  • #13402 arch/arm64/imx9: Change Kconfig logic
  • #13403 arch/arm64/imx9: Add system reset controller
  • #13427 arch/arm64/src/imx9/imx9_lpi2c.c: Ignore spurious RX interrupts
  • #13218 arch/arm64: Move ELF_64BIT selection to arch/Kconfig
  • #12681 arm64: add initial support for ZYNQ MPSOC and ZCU111 Evaluation Kit
  • #12580 arm64: inline up_cpu_index
  • #13560 arm64_addrenv: Add support for 4 level MMU translations
  • #13363 arm64_addrenv_pgmap.c: Revoke user execution access to kernel mmap’d pages
  • #13364 arm64_addrenv.c: Flush kernel page table copy to user mappings
  • #13204 arm64_checkstack.c: Fix traversing of user stack when ARCH_ADDRENV=Y
  • #13361 arm64_syscall.c: Don’t need to set register context during syscall
  • #13365 arm64_vector_table.S: Remove unnecessary instruction
  • #12695 arm64/arm64_boot.c: Fix exception caused by accesses to ICC_SRE_EL3 when GICv3 was not implemented
  • #13373 arm64/crt0.c: Fix stack alignment when executing signal trampoline
  • #12649 arm64/imx9: ccm: add default clk init
  • #13205 arm64/imx9: Force 64-bit ELF format
  • #13360 arm64/mmu: Fixes for MMU driver
  • #13362 arm64/syscall: (Re-)enable interrupts only if they were previously enable

tricore

  • #12682 arch/tricore: add support of tricore gcc toolchain
  • #12706 arch/tricore: synchronize instruction/data following MTCR/MFC

risc-v

  • #12961 arch: inline up_testset in arm arm64 riscv xtensa
  • #12579 arch/riscv: add all region in NAPOT
  • #12881 arch/riscv: add cluster local hartid
  • #12906 arch/riscv: fix IRQ_SOFT for non-SMP
  • #12546 arch/riscv: fix NuttSBI PMP config
  • #12717 arch/riscv: fix trap sp restore logic
  • #13430 arch/riscv: Fixed hardware timer warps-around issue
  • #13278 arch/riscv: revert pull#12864
  • #12864 arch/riscv: unify in-kernel syscall
  • #12619 arch/risc-v: add support for capture driver on ESP32C6 and ESP32H2.
  • #12726 arch/risc-v: make common up_allocate_heap weak symbol
  • #12732 arch/risc-v: does not clear IPI address in S mode
  • #12460 arch/risc-v/common: provide architecture specific perfmon bindings.
  • #13353 arch/risc-v/litex: Fix the litex arty_a7 build
  • #13382 arch/risc-v/src/litex: Claim all pending PLIC interrupts.
  • #13547 arch/risc-v/src/litex_ticked: Set initial tick count to known value.
  • #12804 arch/risc-v: introduce AIA support
  • #12843 arch/risc-v: add support for DC motor control on ESP32 C6 H2
  • #12586 riscv_exception.c: Add missing comma in exception reasons array
  • #13408 riscv_mtimer: modify riscv_mtimer_current to reduce precision lost
  • #12643 riscv_tcbinfo: Fix register ordering for PC
  • #13564 riscv: add a return value to riscv_swint
  • #13561 riscv: g_current_regs is only used to determine if we are in irq
  • #12812 riscv: Fix fork() system call
  • #13354 riscv: Unify the extended context save/restore
  • #12554 riscv: Initial support for debug trigger module
  • #12559 riscv: Improve exception and irq mapping
  • #12809 riscv/debug: Add support for steppoint
  • #12819 riscv/espressif: Mark private data as static in esp_spi.c
  • #12861 riscv/fork: fix fp/gp handling
  • #12589 riscv/k230: revise canmv230:nsbi
  • #12677 riscv/k230: updates for nsh and pnsh
  • #12744 riscv/nsbi: fix k230 AMP confs
  • #12799 riscv/qemu-rv: skip reloading mhartid
  • #12807 riscv/qemu-rv: Add BUILD_PROTECTED target for rv-virt
  • #12944 riscv/qemu-rv: add RPTUN support
  • #12772 riscv/rv-virt: use RAM_START in ld.script
  • #12816 riscv/qemu-rv: add NuttSBI target for rv-virt
  • #12831 riscv/qemu-rv: revise PROTECTED mode
  • #12840 riscv/nsbi: fix up_udelay for rv32
  • #13510 risc-v: Add a new option to control exception reason
  • #12722 risc-v/bl808, sg2000: Configure MMU to cache Kernel Text, Data and Heap (T-Head C906)
  • #12571 risc-v/bl808: Add GPIO Driver
  • #12621 risc-v/bl808: Add GPADC character driver
  • #12663 risc-v/bl808: Add SPI driver
  • #12771 risc-v/bl808: Add watchdog driver
  • #12752 risc-v/bl808: Add timer driver
  • #12614 risc-v/ox64: Add LED Driver
  • #12762 risc-v/qemu-rv: Add LED Driver for QEMU RISC-V 32-bit and 64-bit xtensa
  • #13223 Add spi slave dev to esp32 xtensa
  • #13225 espressif: Fix build with RTC
  • #13255 espressif: Fix deadlock in RT timer caused by critical section
  • #12560 espressif: Fix error while evaluating Wi-Fi task ID
  • #13368 espressif: Update external libraries to fix GPIO interrupt bug
  • #13236 espressif: Update HAL library reference to include debug assert
  • #13022 espressif: Update internal libraries reference
  • #12551 xtensa: add support for capture driver on ESP32 and ESP32 S3
  • #12781 xtensa: add support for motor control driver
  • #12967 xtensa_cache:add up_get_cachesize api
  • #12865 xtensa/esp32: replace nxsig_usleep() with up_udelay()
  • #12750 xtensa/esp32s3: Add peripheral DMA request return value and optimize DMA initialization
  • #13277 xtensa/esp32s3: Add timing delay set interface for QSPI
  • #13291 xtensa/esp32s2: add WiFi support
  • #13454 xtensa/esp32s3: Adjust I2C clock timing
  • #12720 xtensa/esp32s3: Deinitialize ESP32-S3 QSPI GDMA engine.
  • #12871 xtensa/esp32s3: Update the rtc code to fix system blocking issue
  • #12919 xtensa/esp32s3: partition name duplicate and free
  • #12918 xtensa/esp32s3: reserve memory for a mutex struct depending on the OS
  • #12932 xtensa/esp32s3: Separate address and command flag for QSPI DMA transfer
  • #13165 xtensa/esp32s3/esp32s3_sdmmc.c: wait for command done event also on error response x86_64
  • #13391 Add MSI/MSI-X support for intel64
  • #12583 arch/intel64: add cpu specific data and per-cpu interrupt stacks
  • #12803 arch/intel64: add support for HPET as system clock
  • #12588 arch/intel64: add support for inter-processor signaling
  • #12570 arch/intel64: get TSC frequency only when not provided from Kconfig
  • #12801 arch/intel64/irq.h: rename rdtsc macros
  • #13392 intel64: Improvements for HPET
  • #12567 arch/x86_64: addrenv should add offset only for RAM region
  • #12577 arch/x86_64/intel64/intel64_rtc.c: fix compilation
  • #12591 arch/x86_64: add SMP support
  • #13417 arch/x86_64: Add ARCH_INTEL64_DISABLE_CET
  • #13409 arch/x86_64: Add ARCH_X86_64_IDLE_NOP and ARCH_X86_64_IDLE_MWAIT
  • #13436 arch/x86_64: add basic support for R_X86_64_REX_GOTPCRELX relocation
  • #13422 arch/x86_64: Add elf32 multiboot1 wrapper for NuttX binary
  • #13313 arch/x86_64: convert all asm() to asm
  • #13317 arch/x86_64: Fix wrong RDTSCP implementation
  • #13316 arch/x86_64: Support QEMU PVH ELF loader
  • #13426 arch/x86_64/intel64: fix compilation errors in intel64_oneshot_lower.c
  • #12800 arch/x86_64/intel64/intel64_cpu.c: remove workaround for spin_lock
  • #13390 qemu-intel64: restore functionality of PCI test configs
  • #13315 qemu-intel64: simplify linker script
  • #12597 x86_64: add AVX support
  • #12613 x86_64: addrenv support
  • #12569 x86_64: hide –whole-archive behind Kconfig option

Driver Support New Driver Support

  • #12829 Add amg88xx driver
  • #13396 Add Intel e1000 and igc support
  • #13393 Add support for 16550 compatible PCI serial cards
  • #12715 Add support for the Sensirion SHT4x temperature and humidity sensor
  • #12824 Add thermal framework
  • #11605 Coresight: add init coresight driver framework
  • #13082 driver/mem: add Mem Driver.
  • #12834 driver/ssd1680: Add support for 1.54 inch e-paper display
  • #12938 drivers/video: add goldfish gpu fb
  • #13470 drivers/pinctl: add pinctrl framework
  • #13471 drivers/goldfish-pipe: implement goldfish pipe
  • #13553 Pci ep framework Drivers Improvements
  • #12998 [driver][bcm43xxx] reset tx_seq of sido-bus when ifdown wlan-if
  • #13154 can/sja1000: drop driver dependency on __builtin functions
  • #13524 can: Add g_ prefix to can_dlc_to_len and len_to_can_dlc.
  • #13141 can: Merge netpacket/can.h into nuttx/can.h
  • #12676 driver/net/lan9250: Add lan9250_ioctl and lan9250_uninitialize APIs
  • #13464 driver/ftl: Read the consecutive eraseblocks
  • #13320 driver/usbdev: support userspace to access ep0
  • #12641 drivers: add API for drivers early initialization
  • #13492 drivers: fix gcc14 errors for virtio
  • #13107 drivers/audio: fix samp rate conversion issue
  • #13323 drivers/bch: fix uint32 overflow issue
  • #12564 drivers/net/ksz9477: Add port mirroring support
  • #12765 drivers/drivers_initialize.c: check if only one console is selected
  • #13411 drivers/fb: add panbuffer clear ioctl
  • #13468 drivers/gpio: support poll gpio device and optimize code to save memory
  • #12976 drivers/input: enable touch/kbd/mouse for virtio input
  • #13060 drivers/modem/alt1250: Disable the PIN feature in ALT1250
  • #13327 drivers/mtd/bch: fix size_t overflow when offset > 4GB
  • #13480 drivers/pty: support pty write to kill signal, like serial driver
  • #12830 drivers/serial: Make the 16550 rx trigger level configurable
  • #13202 drivers/regmap: add exit function interface.
  • #13469 drivers/reset: support rpmsg reset
  • #13328 drivers/rwbuffer: Bug fix: Set nblocks 0 after direct using wrflush
  • #13434 drivers/serial
  • #13576 drivers/syslog: compile syslog_device.c if console/char/file channel enabled
  • #12857 drivers/touchscreen: add grab for touchscreen
  • #13481 drivers/usbdev: minor update for cdcacm
  • #12930 drivers/virtio-net: Support VIRTIO_F_ANY_LAYOUT
  • #13170 drivers: Fix goldfish events x64 unresponsive interrupt issue
  • #13531 Fix build error of drivers/sensors/usensor.c
  • #13325 Input/ff: new driver frameworks for vibrator(haptic)
  • #13078 video: fix warning & update sim camera
  • #12760 virtio/serial: initial CONSOLE support
  • #12971 mmcsd_sdio:Fix performing read and write in irq
  • #12949 mmcsd: add support of getting ext_csd reg data
  • #13157 mmcsd: add write ext csd reg support
  • #13528 mmcsd: fix a logic error
  • #13215 mmcsd: make a compatibility change for cmd12 and cmd23
  • #13380 mtd:ramtron MB85RS256B address length is 2
  • #13136 mtd:use part->name as partition name when CONFIG_MTD_PARTITION_NAMES set
  • #12796 mtd/Kconfig: fix W25_SLOWREAD menu item.
  • #13252 mtd/nvs: fix align size
  • #13219 nuttx/drivers:Modify errcode returned by relay_ioctl
  • #12848 Optimize iic and spi parts and add iic slave drivers
  • #13344 pci ivshmem related driveres support
  • #13337 Revert “Fix unwanted flush in the SPI slave driver”
  • #13251 rndis: correct usb descriptor
  • #13538 sensor:Fixed the problem of user information lag in cross-core communication “stublist”.
  • #13539 sensor_rpmsg.c:Fix that “stub” will be created when local core only has subscribers.
  • #12927 serial/uart_16550: include stdint.h in uart_16550.h
  • #13383 serial/uart_16550: remove up_putc spinlock
  • #13384 serial/uart_pl011: default syslog needs to check flow control in up_putc
  • #13509 serial/pci_16550: make sure that interrupts are disabled during init
  • #13102 syslog_rpmsg: Ensure the syslog ept is ready when rpmsg_send
  • #13184 timer driver:support poll.
  • #13075 usb_cdcmbim: add mbim device driver
  • #13367 usbdev: Add fastboot boardctl
  • #12914 usbdev: add USB cdcncm device driver
  • #12745 usbdev: delete unsigned comparison with 0
  • #13216 usbdev: extend the usb req len to unit32_t
  • #13190 USB 3.0 device side suppor

Board Support New Boards

  • #13248 arm: Add support for CSK6011A SOC and CSK6011A-NANO board
  • #11709 at32uc3a0: Initial work for SimpleMachines’ Mizar32-A
  • #12813 boards/esp32s3: Add initial support to the ESP32-S3-Korvo-2 board
  • #13467 boards/esp32s3: add support to esp32s3-lhcbit board Boards Improvements
  • #13532 [Bugfix]Kconfig:ensure compatibility between kconfig-frontend and kconfiglib in kernel build
  • #12698 Add defconfig to use the ws2812 driver
  • #12878 arm/stm32f103-minimum: Use common board MFRC522
  • #12922 arm64: Initial implementation of CONFIG_BUILD_KERNEL
  • #13376 arm64/Kconfig: Make the ARM64_PA/VA_BITS a true Kconfig variable
  • #12973 board/arm/rp2040/seeed-xiao-studio-rp2040 GPIO configuration
  • #12738 board/linum-stm32h753bi: Add support to external sdram
  • #12882 board/lm3s6965-ek: restore 128K kflash
  • #12699 board/stm32f401rc-rs485: Add support to Device Configuration over Telnet
  • #12737 board/stm32f401rc-rs485: Add support to MAX7219 8x8 LED Matrix
  • #13516 boards: Update EXAMPLES_SOTEST_DEVMINOR to EXAMPLES_SOTEST_DEVMINOR_MAX
  • #12743 boards/arm/rp2040: Userled configuration to Seeed-Stdio RP2040
  • #13142 boards/arm/stm32/stm32f4discovery: Add support to RFID MFRC522
  • #13440 boards/arm/stm32h7/stm32h745i-disco: Add RPTUN support
  • #12825 boards/armv5: Make ARMv5 boards work again
  • #12593 boards/stm32: DRV8825 driver
  • #12673 boards/esp32[c3 c6 h2 s2 s3]: Ignore etctmp in common board
  • #13124 boards/esp32s3_lan9250: deinitialize the ethernet device lan9250
  • #12716 boards/esp32s3: Increse the default stack size for usbnsh
  • #12763 boards/imx93-evk: add sdimage cleanup
  • #12876 boards/lm3s6965-ek: fix memory.ld for PROTECTED
  • #12598 boards/MIMXRT1020-EVK: Fix board I2C code to adapt to last IMXRT I2C/pi…
  • #13137 boards/risc-v/esp32c6/esp32c6-devkitm: Add support to RFID MFRC522
  • #12869 boards/rv-virt: unify RV32 config names
  • #13226 boards/sim: Defconfigs for nand and mnemofs
  • #12898 boards/xtensa/esp32s3: ESP32S3 Emmc Support
  • #13478 boardctl: add board control api to start slave core
  • #13273 boardcrtl: change BOARDCTL_TESTSET to BOARDIOC_SPINLOCK
  • #12747 Change nucleof429zi nsh defconfig
  • #13059 defconfig: add SYSTEM_TELNETD related config
  • #13334 esp32: fix a way to test a config
  • #13563 esp32s3: Fix faulty esp32s3-devkit:stack example
  • #13234 imx9_usdhc.c: Fix build error when CONFIG_ARM64_DCACHE_DISABLE=y
  • #12867 LTDC for Linum board
  • #12780 nrf9160-dk: disable FPU for modem example
  • #13476 nucleo-h745zi: fix potential bl jump to app failed issue
  • #13069 nucleo-l432kc: Revert the USART2 config to be use by virtual COM port
  • #12987 nuttx/boards:Uniform initialization format for init_array.
  • #13208 risc-v/bl808: Configure MMU to cache User Text, Data and Heap
  • #13199 risc-v/mmu: Configure T-Head MMU to cache User Text, Data and Heap
  • #12862 risc-v/qemu-rv: Add Build Config for leds64_rust
  • #13186 risc-v/qemu-rv: Add Build Config for leds64_zig
  • #12896 risc-v/qemu-rv: add cluster PLIC/CLINT configs
  • #12544 riscv/nuttsbi: add MTVAL argument
  • #12645 stm32h7/linum-stm32h753bi: add support to qencoder
  • #12739 stm32f777zit6-meadow: Add support for two USB CDC/ACM
  • #12637 Usbnsh to seed-xiao-rp2040 board
  • #12713 zynq_mpsoc/zcu111: add support for gpio and board auto led
  • #12806 zynq-mpsoc/zcu111: independent JTAG configs from normal nsh configs
  • #12797 w25c: add W25_DEBUG sub-menu config option and update debug traces.

File System New FS

  • #13001 V9FS For NuttX FS Improvements
  • #13514 add sched note for littlefs/romfs/rpmsgfs
  • #12863 Fix the location of tmpfs pwrite write and Fixed some code check warnings
  • #13500 fs.h: fix a comment in file_operations
  • #12532 fs: add backtrace to where file opens
  • #13150 fs: add fs_heap, support shm/tmpfs/pseudofile with indepent heap
  • #12587 Fs: backtrace tweak
  • #13512 fs: Dump the list of files when the file description runs out
  • #13194 fs: nfs: Fix nfsmount error
  • #12978 fs: Rename node with inode.
  • #12969 Fslock optimize
  • #12937 fs/mnemofs: Fix journal log rw issue, rw size issue
  • #12945 fs/hostfs: Replace strcpy with memcpy
  • #13443 fs_inode:Change the type of i_crefs to atomic_int
  • #13458 fs_dup2 bug fix, memleak
  • #13573 fs/chmod/fchmod/lchmod: only set permissions by mode_t and ignore othjer bits
  • #12931 fs/epoll: Optimize implementation details
  • #12615 fs/fat: Fix Fseek Bug When File Size Is Multiple of Cluster Size
  • #12548 fs/fat/fs_fat32.c Return EOF when reading past the end of the file.
  • #13521 fs/dump: correct SCHED_DUMP_ON_EXIT to DUMP_ON_EXIT
  • #12990 fs/mmap: Fix build warning with [-Wmaybe-uninitialized].
  • #13132 fs/procfs: Supports any number of thread displays
  • #13123 fs/shmfs:Avoid an integer overflow
  • #12790 fs/spiffs: Return OK on spiffs_fstat success
  • #13407 fs/mmap: Add MADV_HUGEPAGE definitions
  • #13406 fs/mmap: Ensure anonymous pages are initialized to zero
  • #12661 fs/mnemofs: Adds Block Allocator
  • #12668 fs/mnemofs: Add parent iterator and path methods.
  • #12680 fs/mnemofs: Add LRU and CTZ methods
  • #12683 fs/mnemofs: Add journal methods.
  • #12702 fs/mnemofs: Add master node and r/w methods
  • #12943 fs/mnemofs: Autoformat
  • #12808 fs/mnemofs: Refactoring path logic, direntry size bug fix, open free bug fix
  • #12658 fs/mnemofs: Setup and VFS methods
  • #13475 fs/mount: add ftl proxy to mount block filesystem on mtd device
  • #13258 fs/mq_open: revise comments
  • #13326 fs/files_extend: Bug Fix
  • #13331 fs/inode: using inode reference to indicate unlink and simply code
  • #13077 Fsnotify
  • #12942 Hostfs support get filepath by ioctl
  • #12817 procfs/meminfo: free delaylist before reporting
  • #13058 procfs/mempool: fix did not remove when pool not enabled
  • #13092 rpmsgfs: fix out of bounds access caused by data transmission farmat
  • #13063 rpmsgfs: set fs type to rpmsgfs when mount through rpmsgfs
  • #13348 smartfs procfs: fix double declare g_smartfs_operations
  • #12939 rpmsgfs_client:Fix error return exception
  • #12941 rpmsgfs: support filelock
  • #13098 tmpfs: old data was loaded when SEEK_SET beyond end of the file
  • #13490 vfs:fix a type mismatch issue and a typo

Networking Improvements

  • #13385 Fix the bug that netlink receive wait does not hang up
  • #13053 icmp:add net_lock to protect icmp connection
  • #13336 local_socket: add SO_SNDBUF & SO_RCVBUF support
  • #13045 localsocket improvment
  • #12639 net: Enable ICMP by default if IPv4 is enabled
  • #13028 net_chksum.c:mod process of generating sum to solve checksum error
  • #12991 net/icmpv6/icmpv6_input.c: fix undefined build error
  • #13093 net/netdev: Add periodic log for netdev statistics
  • #12689 net/netfilter: fix windows compile error
  • #12688 net/pkt: correct PF_PACKET family sending errors
  • #12995 net/pkt: fix issue that set nonblock by fcntl does not take effect
  • #13010 net/pkt: fix raw socket send data length is insufficient
  • #13120 net/tcp_timer: fix tcp_timer idle loop and retransmission bug
  • #13051 net/tcp: reset the dupack counter.
  • #12899 net/tun: Remove unused variables in read & write
  • #13191 net/tun: Support changing carrier state of TUN/TAP
  • #13350 net/udp: Fixed the issue of sending ICMP error when the destination address is broadcast/multicast.
  • #13037 netdev_upperhalf: add polling mode support for tx/rx
  • #13046 netdev/ioctl: Setting log level to warning on SIOCGIFHWADDR failure
  • #13007 netdev/lower: Add reclaim callback and use it in virtio-net
  • #13343 netdev/statistics: Add bytes for netdev statistics
  • #13008 netdev/upper: Delay replied packets to prevent TX quota become negated
  • #12992 netinet/in.h: add macro definitions to resolve compilation errors
  • #12994 netlib/route: add length for add/del route-func to reduce caller stack usage
  • #13335 netdb: Make NETDB_DNSSERVER_NAMESERVERS effective for NETDB_RESOLVCONF
  • #13038 netdb: netdb code support ffmpeg rtsp(getaddrinfo & getnameinfo)
  • #13049 Modify the IPV6 address acquisition method and the gateway settings.
  • #13125 modify for offload checksum and add macro with tcp/icmp/icmpv6/igmp checksum
  • #13026 modify the type of the ipv6 parameters to solve runtime error
  • #13029 solve Problem of tcp parameter calculation exceeding the boundary
  • #13156 sys/socket: implement compiler agnostic sockaddr_storage alignment
  • #13158 tcp_close.c:when tcp socket stays in TCP_FIN_WAIT_1 or TCP_FIN_WAIT_2,calling tcp_close_eventhandler releases received packets
  • #12999 tcp_input: if tcp->req > recvreq, send ack only when state is TCP_ESTABLISHED

Unsorted Improvements

  • #13448 [Bug-Fix] Resource leaks
  • #13100 [BugFix]Command “critmon” error
  • #13002 12K sample rate support
  • #13486 Accelerate access to interrupt status
  • #12980 add fb_vsync_pollnotify
  • #12959 Add goldfish events
  • #12951 Add irq disable func
  • #13130 Add memory pressure monitoring
  • #13089 api:add lib_realpath function
  • #12947 assert: add compile_assert macro
  • #13020 assert: check COMPILE_TIME_ASSERT before define
  • #13087 Audio upstream
  • #13044 Basic Atomic for NuttX
  • #13099 bch: alloc bch->buffer when offset not aligned
  • #13513 BCH: Add readonly configuration for BCH devices
  • #12853 binfmt/elf_loadfile: Set sh_addr even if SHF_ALLOC == 0
  • #12965 boot: fix potential bl jump to app failed issue
  • #13094 Bugfix hcreate
  • #13300 can: Before we use pstate, we should check if it is NULL.
  • #13570 can: Add g_ prefix to can_dlc_to_len and len_to_can_dlc.
  • #13048 can: CAN code optimization
  • #12656 can: fixes and tweaks for CAN FD support
  • #13126 Capture adds the function of edges counting
  • #12934 clk: fix reg operation not compatible with 64bit
  • #13210 cdcacm: align cdcacm_epconfigure function parameters
  • #13189 Controlling rgb led bp
  • #12889 Coredump enhancement, optimized prompt statements
  • #13474 coredump: just save latest core file
  • #12958 coredump: refine coredump info analyse
  • #13066 crypto: import the ability to clone session
  • #13109 crypto/bn: Provide software algorithms to calculate inverse elements and greatest common divisor
  • #13431 crypto/rsa: add exp mod in software crypto
  • #12970 Disable clean/flush optimization in case of SMP restriction
  • #12777 dlfcn: Add stub for dladdr
  • #12779 dlfcn: Fix indent issue in lib_dlclose.c
  • #13159 dynamically create work queues
  • #13489 enable O_CLOEXEC explicitly to avoid fd leak
  • #13118 Enhance ASSERT
  • #13424 Enhance Kasan
  • #13559 Enhance Kasan’s global variable out of bounds detection
  • #13388 Expose IPTOS_xxx to the application layer
  • #12963 fdcheck: fix race condition in fdcheck
  • #13096 fb:add select overlay FB_NO_OVERLAY
  • #13296 filep Reference count
  • #12578 Fix allocated memory test
  • #13461 Fix dev_mem related
  • #13555 Fix greater-than-or-equal-to-zero issue
  • #12741 Fix pin LTDC_B0, should be PJ12 instead of PF0
  • #13129 Fix task_setup race condition
  • #13054 Fix the compilation warnings
  • #12955 fix the potential bug of putwc, fgetwc, ungetwc, wcsstr, fputwc
  • #13095 fix:uart_rpmsg_dmareceive
  • #13477 ftl: should pre-allocate eblock for car case
  • #13000 getrlimit: implement RLIMIT_STACK return limit stack size
  • #13459 GNSS: Add support for constellation, measurement, clock and geofence
  • #13504 goldfish:add kernel mode support
  • #13330 group/filelist: add reference to protect filelist of group
  • #13554 i2c: Optimize access to private data
  • #13233 Increase the chance for _assert to work early in the boot
  • #13306 init: add OSINIT_TASK_READY
  • #13228 inline restore_critical_section and add parameters to restore_critical_section
  • #12981 input: fix goldfish input and lvgl input device name mismatch problem
  • #13108 input: fix touchevent race condition
  • #13073 inode: call inode_release when close success
  • #13198 Introduce new PCI framework
  • #13442 input/ff: modify FF_MAX to support 64-bit machine
  • #13387 ipfrag: fix warnig
  • #13163 ipfrag: remove assert for actual product reasons
  • #13012 irq: add [enter leave]_critical_section_nonirq
  • #13018 irq: add isr thread
  • #13242 irq: dynaminc create g_irqmap
  • #13256 irq: irq with the same priority share the same wqueue
  • #12595 irq: remove g_cpu_nestcount in restore_critical_section
  • #12935 irq: remove restore_critical_section in irq
  • #12596 irq: remove restore_critical_section in irq
  • #13369 irq: simplify code by using OSINIT_TASK_READY
  • #13119 Kasan enhance
  • #12893 kasan:fix bug write error is recognized as read error
  • #13133 Keep the log level consistent with assert
  • #12590 libmetal/atomic: enable 64-bit atomic by toolchain builtin flags
  • #13543 lilygo_tbeam_lora_gps/gps: Enable GNSSUTILS_MINMEA_LIB for EXAMPLES_GPS
  • #13549 lzf:Add macro judgment to header file reference.
  • #12929 make/disassembly: generate disassembly file
  • #13179 memset:optimizate speed.
  • #12985 minidumpserver: fix parsing bug
  • #13287 mksymtab.c support for structure
  • #13452 modify BUILD_LOADABLE to MODULES which backwards-compatible Kernel
  • #12968 MPU update
  • #13460 New Rpmsg Transports: Rpmsg Port SPI, Rpmsg Port Uart and Rpmsg Router Transport Support
  • #13104 nxmutex api enhance
  • #13047 nuttx-names.in:add popen & pclose assign to glibc interface
  • #13006 nuttx/audio: add AUDIOIOC_GETPOSITION ioctl
  • #13005 nuttx/audio: add offload buffer size config
  • #13340 nuttx/crypto: export asymmetric algorithms about ecdh and ecc256 via /dev/crypto
  • #13138 nuttx/crypto: fix wrong implementation in crypto module
  • #13173 nuttx/crypto: support new algorithm about crc32 and aes-cmac
  • #13084 nuttx/crypto: support poly1305 and ripemd160 algorithm
  • #12986 nuttx/note: fix missing the last character when printing custom labels.
  • #12730 NVS: fix align size
  • #13187 nvs: modify nvs block size and block numbers
  • #12601 queue: inline queue
  • #13435 pci/pci_uio_ivshmem: pci uio ivshmem msix interrupt support
  • #13178 pl031:change mktime to timegm.
  • #13057 pm_runtime: fix missing header
  • #13064 pm_activity: fix deadlock with spinlock and critcal_section
  • #13055 pm: add pm_idle, up_idle only handle pm state execution
  • #12933 pm: add debug_assert for cb register/unregister api
  • #13072 pm: update document, add pm_idle interface for not-smp case
  • #13279 poll: fix thread_cancel() caused poll used after free
  • #13074 Private requirement for wapi
  • #13168 protected build: userspace threads will unexpectly work in privileged mode after syscall
  • #13153 pty: use mutex to protect alloc minor
  • #13295 psram_cache_init: remove cosmetic differences between PRO/APP
  • #13438 ramlog bug fix
  • #13283 Refactor wdog module
  • #12891 Reimplemented the mempool traversal function and fixed some existing bugs in the mempool
  • #13463 rename, strtoul & sscanf
  • #13309 Restore ASSERT/VERIFY semantics
  • #13485 Revert “irq: add [enter leave]_critical_section_nonirq”
  • #12607 Revert “irq: remove restore_critical_section in irq”
  • #13432 Rpmsg VirtIO Transport support and releated patches
  • #13183 rpmsg_rtc:Update g_basetime from rpmsg.
  • #13169 rpmsg.c: move onceinit judge logic to common part
  • #13404 rpmsgblk: split multi_cmd only when it is too large to be placed into…
  • #13465 rpmsgdev: Support server export and oneway polling
  • #13172 rptun.c: fix rptun.c format follow rpmsg virtio
  • #13203 rtc alarm:fix doesn’t call nxsig_notification
  • #13515 shm: remove useless macro
  • #13280 smp: smp call handler add up_cpu_paused_[save restore]
  • #13405 spi_slave: change length to nwords
  • #12599 spin_lock: inline spin_lock
  • #12837 spinlock: add support of spin_trylock_irqsave()
  • #12836 spinlock: inline no trace implement to remove duplicate logic
  • #13272 spinlock: spin_initialize should add memory barrier
  • #13457 stack recored bug fix
  • #13386 stream/syslograw: remove support for iob buffer in syslog
  • #13511 Support msync
  • #13196 support rss/arfs with device
  • #13106 suppress libasan checks
  • #13031 Synchronize the modification of the WiFi problems in QEMU.
  • #13113 Swift embedded support
  • #12820 task_fork.c: Fix vfork for BUILD_KERNEL
  • #12754 up_backtrace: fix maybe backtrace the exiting thread
  • #13293 Update clock speed
  • #13410 Update posix timer
  • #12611 Upgrade Segger SystemView to V3.54
  • #12705 V4l2m2m openh264 x264 to builtin
  • #13030 video/fb: changed circbuf_write assert to warning
  • #13433 VirtIO PCI Transport Support for NuttX
  • #13338 virtio-blk: support called read/write in interrupt
  • #13437 wqueue bug fix
  • #13241 wqueue: add interface work_queue_priority_wq and work_queue_priority