DUE TO SPAM, SIGN-UP IS DISABLED. Goto Selfserve wiki signup and request an account.
...
PR-1611 libc: Allocate file_struct dynamically
...
PR-1684 Add gdb script for NuttX thread debugging
PR-1911 init_section was not being emitted resulting in C++ static constructors not being called.
PR-1889 Fix build error for ::setbuf if CONFIG_STDIO_DISABLE_BUFFERING is set
Major Changes to the Build System
New Features
PR-1786 Support building external code into the OS
Bug Fixes
PR-1713 Fix export target: libboard was missing KERNEL flag.
PR-1470 Fix Make.dep not updated by .config changes
PR-1345 Enhance export target: make BIN directory configurable, export post build script, use LDNAME instead of LDSCRIPT
PR-1332 Include incdir.c in the export target
Architectural Support
New Architecture Support
PR-1847 ARM: Initial support for ARMV6M to support CortexM0+
Architectures With Significant Improvements
cxd56xx
PR-1753 cxd56xx: Use spinlock in gpioint to improve SMP performance
PR-1650 cxd56xx: Use spinlock in rtc to improve SMP performance
PR-1621 cxd56xx: Use spinlock in serial to improve SMP performance
PR-1569 cxd56xx: Add SMp support to cxd56_farapi.c
ESP32
PR-1422 ESP32: Add SPI driver (Master & Slave)
PR-1435 ESP32: Add I2C driver
PR-1491 ESP32: Add SPI Flash driver
PR-1525 ESP32: Add Ethernet driver
PR-1610 ESP32: Improve SPI transmision (DMA, IOMUX, software CS)
PR-1630 ESP32: Add support for HW RNG
PR-1830 ESP32: Add Power Management of Force-Sleep
PR-1859 ESP32: Add hist timer and improve the oneshot timer logic
PR-1754 ESP32: Add support for external SPIFLASH
PR-1613 ESP32: Add function for switching CPU from 80MHz to 240MHz
IMXRT
PR-1868 IMXRT: Add ADC driver
Kinetis
PR-1624 Kinetis: USBHOST improvements to avoid race condition durring freeing for queue head structure by using Async Advance Doorbell.
NRF52
PR-1418 NRF52: Add Timer and RTC drivers
PR-1432 NRF52: Add timer lowerhalf
PR-1635 NRF52: Add support for RTC event handling
PR-1636 NRF52: Add support for PPI peripheral
PR-1681 NRF52: Add support for GPIOTE task mode
PR-1726 NRF52: Extend systimer support
PR-1773 NRF52: Add ADC and PWM support
PR-1915 NRF52: Add serial termios support (no flow control)
PR-1907 NRF52: Add basic error handing for i2c in polling mode to support i2ctool. Still not handled in DMA mode.
PR-1839 NRF52: Add missing SPI callback register hooks to support drivers like mmcsd
PR-1646 NRF52: Better differentiation between NRF52840 and NRF52832
RISCV
PR-1858 RISCV: Add missing CSR macros listed in RISC-V spec V1.10.
RX65N
PR-1622 RX65N: Add I2C(RIIC) support
PR-1894 RX65N: Add USB device support
PR-1899 RX65N: Add DTC driver
PR-1910 RX65N: Add SPI driver support
SAMD5E5
PR-1515 SAMD5E5: Add Watchdog timer support
PR-1574 SAMD5E5: Add USB host support
PR-1594 SAMD5E5: Freerun timer, oneshot timer and tickless support
PR-1816 SAMD5E5: Add MTD progmem support and NVM USER PAGE IOTCLs
SIM
PR-1914 SIM: SIGUSR1 handling now uses NuttX interrupt logic
PR-1767 SIM: Allow access to tty interfaces for better termios support
PR-1655 SIM: Add support for Linux HCI Socket as a NuttX BLE adapter. Full NuttX BLE stack can be run against any Linux Bluetooth adapter in sim.
PR-1558 SIM: Add support for Stack Smashing Protector.
STM32F4
PR-1865 STM32F4: Add support for STM32F412CE fixing I2C2/I2C3 and USART1 alt
STM32H7
PR-1714 STM32H7: Fix I2C driver interrupt storm
Bug Fixes
CXD56xx
PR-1930 cxd56xx: Fix handle_irqreq() in cxd56_cpupause.c
PR-1789 CXD56xx: Fix deadlock issue in up_txinit() in SMP mode.
PR-1620 cxd56xx: Fix IRQ control in cxd56_dmac.c
ESP32
PR-1908 ESP32: Fix task signal process preemption
NRF52
PR-1928 NRF52: Fix PPI group disable and add group clear
PR-1885 NRF52: Fix SPI driver structures when SPI_EXCHANGE is not set
PR-1799 NRF52: Fix SPI_MASTER entry in kconfig
PR-1787 NRF52: Fix base address for SPIM{1,2,3}
PR-1777 NRF52: Handle case where rx or tx buffer could be 0 but data would still be transferred. Also error if more than max data is requested.
PR-1770 NRF52: Fix bug where SPI cmddata was not properly mapped for SPIM 0,2,3
RISC-V
PR-1909 RISC-V: MIE instead of MPIE register was being used in up_schedule_sigaction for storing interrupt state
SIM
PR-1903 SIM: Fix complication issue for WPCAP in Cygwin build
PR-1888 SIM: Fix EOVERFLOW returned when CONFIG_SIM_M32 is set
STM32
PR-1841 STM32: Remove broken overdriver support
PR-1719 STM32: Lowputc: Ensure USART is disabled before attempting to configuring it
PR-1556 STM32: Fix IO compentation support in STM32F7 and remove incorrect reference in STM32F0/L0/G0
STM32F7
PR-1898 STM32F7: Fixes data loss bug in UART5 with TX DMA
PR-1553 STM32F7: Fix possible interrupt blocking in serial TXDMA ISR
Miscellaneous
PR-1912 Fix up_interrupt_contex() in case of SMP - Make sure the operation is atomic in case of SMP
Driver Support
Bug Fixes
PR-1896 spi_xx25xx EEPROM: return the number of bytes written instead of 0 or error
PR-1891 serial: Don't mangle PID when ISIG is changed
PR-1856 pipe: In case of empty pipe with no writers, return EOF instead of EAGAIN
PR-1796 vfs: Fix memory leak calling pseudorename
PR-1794 vfs: Fix issue where opendir would remove the trailing whitespace or /
PR-1793 vfs: Make sure that rename of mount point uses pseudorename. Previously mv on a mountpoint would return err 88.
PR-1836 stmpe811: Fix incorrect GPIO interrupt register logic
PR-1741 mmcsd_sdio: Properly arm the write completion detection
PR-1737 vfs: reuse file_dup2 direction in file_dup to prevent segfault issue
New Driver Support
PR-1797 leds: WS2812 LED controller (aka Adafruit NeoPixel)
PR-1851 kbd: Add support for SolderParty BlackBerry Q10 Keyboard
PR-1618 BQ27426 fuel gauge
PR-1276 Add support for the ST7735 TFT Controller
Drivers With Significant Improvements
PR-1816 stmpe811: Add SPI support for touch screen controller
PR-1800 vfs: Add FIOCLEX/FIONCLEX ioctl support
PR-1798 mmcsd: Allow setting IDMODE_CLOCK via kconfig
PR-1587 BCH: Delay the sector flush to avoid multiple earse/write operations in sequence write
PR-1577 rwbuffer: Avoid allocating memory for the temporary erase buffer by the FTL driver
PR-1466 Altair Modem: Add board specific logic, Fix issue that SPI4 RX frequency violated AC Spec, Fix priority of SPI transfer task is too low, Modify timeout value for RX ready
Board Support
Significant Improvements
PR-1618 metro-m4: Add support for: SmartFS initialization, AT24 EEPROM, GPIO dev, BQ27426 gague initialization
New Board Support
PR-1664 NRF52: Add support for NRF52832 MakerDiary MDK board
PR-1633 NRF52: Add support for Sparkfun NRF52832 Breakout Board
Boards With Significant Improvements
PR-1644: stm32f746g-disco: Move serial console from USART6 to USART1 which is attached to the USB virtual COM port.
File System
...
1607 mm: Implement malloc_usable_size
PR-1606 sched/pthread: Implement pthread_attr_detachstate
PR-1600 Implement epol_pwait and EPOLLONESHOT flag
PR-1597 sched: Support passing non empty argument to init task
PR-1596 libc: Replace all sem_xxx with _SEM_XXX. This insures the correct semaphore interface is used by userspace and the kernel.
PR-1517 sched/wdog: Chang the default value of MAX_WDOGPARMS from 4 to 2 as wd_start is two every where in the code base. Also bump CONFIG_MAX_WDOGPARAMS from 1 to 2 in defconfigs to support pthread_condclockwait()
PR-1486 libc: Implement ftw and nftw functions
PR-1567 libc: Implement proposed POSIX _clockwait variants of _timedwait functions
PR-1411 libxx: Integrate latest uclibcxx 0.2.5
Bug Fixes
PR-1911 init_section was not being emitted resulting in C++ static constructors not being called.
PR-1889 Fix build error for ::setbuf if CONFIG_STDIO_DISABLE_BUFFERING is set
PR-1595 epoll_wait() must loop until "maxevents" to fille output evs array
PR-1519 libc: Replace index/rindex from macro to function to protect against side effects with conflicting local variables
PR-1514 Remove usage for user-space memalign() from kernel/driver code. Instead use the proper kernel memory interface.
PR-1512 / PR-1510 / PR-1507 Remove usage for user-space malloc()/zalloc()/free() from kernel/driver code. Instead use the proper kernel memory interface.
PR-1496 libc: Change ctype macro to normal function to resolve macro evaluation side effects
Major Changes to the Build System
New Features
PR-1786 Support building external code into the OS
PR-1396 Make C/C++ search path common so all boards support uClibc++/libc++ automatically
Bug Fixes
PR-1713 Fix export target: libboard was missing KERNEL flag.
PR-1470 Fix Make.dep not updated by .config changes
PR-1345 Enhance export target: make BIN directory configurable, export post build script, use LDNAME instead of LDSCRIPT
PR-1332 Include incdir.c in the export target
Architectural Support
New Architecture Support
PR-1847 ARM: Initial support for ARMV6M to support CortexM0+
PR-1397: EOSS3: Initial support for the QuickLogic EOS S3 SoC
Architectures With Significant Improvements
cxd56xx
PR-1753 cxd56xx: Use spinlock in gpioint to improve SMP performance
PR-1650 cxd56xx: Use spinlock in rtc to improve SMP performance
PR-1621 cxd56xx: Use spinlock in serial to improve SMP performance
PR-1569 cxd56xx: Add SMP support to cxd56_farapi.c
PR-1689 cxd56xx: Use spinlock in uart to improve SMP performance
ESP32
PR-1422 ESP32: Add SPI driver (Master & Slave)
PR-1435 ESP32: Add I2C driver
PR-1491 ESP32: Add SPI Flash driver
PR-1525 ESP32: Add Ethernet driver
PR-1610 ESP32: Improve SPI transmision (DMA, IOMUX, software CS)
PR-1630 ESP32: Add support for HW RNG
PR-1830 ESP32: Add Power Management of Force-Sleep
PR-1859 ESP32: Add hist timer and improve the oneshot timer logic
PR-1754 ESP32: Add support for external SPIFLASH
PR-1613 ESP32: Add function for switching CPU from 80MHz to 240MHz
PR-1712 ESP32: Add support for external MMCSD card over SPI
IMXRT
PR-1868 IMXRT: Add ADC driver
Kinetis
PR-1624 Kinetis: USBHOST improvements to avoid race condition durring freeing for queue head structure by using Async Advance Doorbell.
PR-1516 Kinetis K28: Add support for USB High Speed Host
NRF52
PR-1418 NRF52: Add Timer and RTC drivers
PR-1432 NRF52: Add timer lowerhalf
PR-1635 NRF52: Add support for RTC event handling
PR-1636 NRF52: Add support for PPI peripheral
PR-1681 NRF52: Add support for GPIOTE task mode
PR-1726 NRF52: Extend systimer support
PR-1773 NRF52: Add ADC and PWM support
PR-1915 NRF52: Add serial termios support (no flow control)
PR-1907 NRF52: Add basic error handing for i2c in polling mode to support i2ctool. Still not handled in DMA mode.
PR-1839 NRF52: Add missing SPI callback register hooks to support drivers like mmcsd
PR-1646 NRF52: Better differentiation between NRF52840 and NRF52832
PR-1685 NRF52: Add ARM system reset support. Add UID support.
PR-1674 NRF52: Add LFCLK/HFCLK support for selecting oscillator sources.
RISCV
PR-1858 RISCV: Add missing CSR macros listed in RISC-V spec V1.10.
RX65N
PR-1622 RX65N: Add I2C(RIIC) support
PR-1894 RX65N: Add USB device support
PR-1899 RX65N: Add DTC driver
PR-1910 RX65N: Add SPI driver support
SAMD5E5
PR-1515 SAMD5E5: Add Watchdog timer support
PR-1574 SAMD5E5: Add USB host support
PR-1594 SAMD5E5: Freerun timer, oneshot timer and tickless support
PR-1816 SAMD5E5: Add MTD progmem support and NVM USER PAGE IOTCLs
SAMA5D2
PR-1412 SAMA5D27: Implement system reset to support nsh reboot command
PR-1393 SAMA5D2x: Implement SDMMC peripheral support
SIM
PR-1914 SIM: SIGUSR1 handling now uses NuttX interrupt logic
PR-1767 SIM: Allow access to tty interfaces for better termios support
PR-1655 SIM: Add support for Linux HCI Socket as a NuttX BLE adapter. Full NuttX BLE stack can be run against any Linux Bluetooth adapter in sim.
PR-1558 SIM: Add support for Stack Smashing Protector.
PR-1392 SIM: Make uClibc++ and libcxx work on sim platform
STM32
PR-1865 STM32F4: Add support for STM32F412CE fixing I2C2/I2C3 and USART1 alt
PR-1506 STM32: Add support for single wire UART push/pull mode
Bug Fixes
AVR
PR-1410 avr: Implement missing double_t type, CONFIG_STACK_ALIGNMENT, linker emulation flags
CXD56xx
PR-1930 cxd56xx: Fix handle_irqreq() in cxd56_cpupause.c
PR-1789 CXD56xx: Fix deadlock issue in up_txinit() in SMP mode.
PR-1620 cxd56xx: Fix IRQ control in cxd56_dmac.c
ESP32
PR-1908 ESP32: Fix task signal process preemption
IMXRT
PR-1527 IMXRT: Fix kconfig so that IMXRT_ENET_NRXBUFFERS can be set
NRF52
PR-1928 NRF52: Fix PPI group disable and add group clear
PR-1885 NRF52: Fix SPI driver structures when SPI_EXCHANGE is not set
PR-1799 NRF52: Fix SPI_MASTER entry in kconfig
PR-1787 NRF52: Fix base address for SPIM{1,2,3}
PR-1777 NRF52: Handle case where rx or tx buffer could be 0 but data would still be transferred. Also error if more than max data is requested.
PR-1770 NRF52: Fix bug where SPI cmddata was not properly mapped for SPIM 0,2,3
RISC-V
PR-1909 RISC-V: MIE instead of MPIE register was being used in up_schedule_sigaction for storing interrupt state
SIM
PR-1903 SIM: Fix complication issue for WPCAP in Cygwin build
PR-1888 SIM: Fix EOVERFLOW returned when CONFIG_SIM_M32 is set
PR-1709 SIM: Fix up_cpu_start initialization for macOS with SMP enabled
STM32
PR-1841 STM32: Remove broken overdriver support
PR-1719 STM32: Lowputc: Ensure USART is disabled before attempting to configuring it
PR-1714 STM32H7: Fix I2C driver interrupt storm
PR-1556 STM32: Fix IO compentation support in STM32F7 and remove incorrect reference in STM32F0/L0/G0
PR-1529 STM32: Fix intialization bug in ADC that prevented adc_reset() from working correctly
STM32F7
PR-1898 STM32F7: Fixes data loss bug in UART5 with TX DMA
PR-1553 STM32F7: Fix possible interrupt blocking in serial TXDMA ISR
Miscellaneous
PR-1912 Fix up_interrupt_contex() in case of SMP - Make sure the operation is atomic in case of SMP
Driver Support
Bug Fixes
PR-1896 spi_xx25xx EEPROM: return the number of bytes written instead of 0 or error
PR-1891 serial: Don't mangle PID when ISIG is changed
PR-1856 pipe: In case of empty pipe with no writers, return EOF instead of EAGAIN
PR-1836 stmpe811: Fix incorrect GPIO interrupt register logic
PR-1741 mmcsd_sdio: Properly arm the write completion detection
New Driver Support
PR-1797 leds: WS2812 LED controller (aka Adafruit NeoPixel)
PR-1851 kbd: Add support for SolderParty BlackBerry Q10 Keyboard
PR-1618 BQ27426 fuel gauge
PR-1276 Add support for the ST7735 TFT Controller
Drivers With Significant Improvements
PR-1816 stmpe811: Add SPI support for touch screen controller
PR-1800 vfs: Add FIOCLEX/FIONCLEX ioctl support
PR-1798 mmcsd: Allow setting IDMODE_CLOCK via kconfig
PR-1587 BCH: Delay the sector flush to avoid multiple earse/write operations in sequence write
PR-1577 rwbuffer: Avoid allocating memory for the temporary erase buffer by the FTL driver
PR-1466 Altair Modem: Add board specific logic, Fix issue that SPI4 RX frequency violated AC Spec, Fix priority of SPI transfer task is too low, Modify timeout value for RX ready
PR-1471 ramlog: Add option to overwrite buffer
Board Support
Significant Improvements
PR-1618 metro-m4: Add support for: SmartFS initialization, AT24 EEPROM, GPIO dev, BQ27426 gague initialization
PR-1727 b-g474e-dpow1: Add support for FLASH bootloader
PR-1683 cxd56xx: Add wifi_smp configuration
PR-1668 SIM: Add new configuration for SMP
PR-1464 cxd56xx: Add new GNSS functions, support for lower PWM frequency, CONFIG_CPUFREQ_RELEASE_LOCK, high speed ADC, HPADC input gain configuration, eMMC device, frame buffer support
New Board Support
PR-1664 NRF52: Add support for NRF52832 MakerDiary MDK board
PR-1633 NRF52: Add support for Sparkfun NRF52832 Breakout Board
PR-1728 SAMA5D27: Add support for Giant Board
PR-1397: EOSS3: Initial support for the QuickLogic EOS S3 SoC QuickFeather board
Boards With Significant Improvements
PR-1644: stm32f746g-disco: Move serial console from USART6 to USART1 which is attached to the USB virtual COM port.
PR-1405: stm32f4discovery: Add ELF support to wifi configuration
PR-1402: imxrt1060: Add buttons support to iMXRT1060
File System
Bug Fixes
PR-1796 vfs: Fix memory leak calling pseudorename
PR-1794 vfs: Fix issue where opendir would remove the trailing whitespace or /
PR-1793 vfs: Make sure that rename of mount point uses pseudorename. Previously mv on a mountpoint would return err 88.
PR-1737 vfs: reuse file_dup2 direction in file_dup to prevent segfault issue
PR-1490 Insure that filesystems can all support paths that end with '/'
Significant Improvements
PR-1554 CROMFS: Add support for hard links
PR-1499 FAT: Add support for UTF8 long filename
PR-1479 vfs: Add file descriptor based events support eventfd()
Networking
Bug Fixes
Significant Improvements
...