Apache NuttX-9.0.0正式发布

Posted 嵌入式OSLearningCenter

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache NuttX-9.0.0正式发布相关的知识,希望对你有一定的参考价值。

    这是NuttX RTOS加入Apache软件基金会(Apache Software Foundation-简称为ASF,是专门为支持开源软件项目而办的一个非盈利性组织)后发布的第一个具有里程碑意义的版本感谢NuttX RTOS开发人员近6个月来的努力付出,新推出的版本加入对几个新处理器架构和驱动程序的支持,以及对OS内核、驱动程序和网络子系统的大量改进和BUG修复。

https://downloads.apache.org/incubator/nuttx/9.0.0/

新发布的NuttX-9.0.0的主要改进包括以下内容:

  • Major Changes to Core OS

    • nxsem_wait_uninterruptible() now returns if the task is canceled.

    • Fix a bug in pthread_condwait() that was improperly re-initializing the mutex.

    • In sched_setpriority(), fix functions called inside a DEBUGASSERT that were eliminated when assertions are disable

    • Bugfixes

  • Compatibility Concerns

    • The configuration option CONFIG_CAN_PASS_STRUCT is now removed. Previously, it was used (at the cost of breaking standards support) to support older versions of the SDCC compiler that couldn’t pass structs/unions as functions’ parameters. A newer version of the compiler has resolved the issue.

  • Major Changes to Build System

    • Add a post-build function that allows extending the build with CPU/board-specific logic.

    • Add build tools to simplify ZDS-II tool usage.

    • mkexport.sh: Deal with ARCHSCRIPT containing multiple files.

    • Various nxstyle improvements.

  • Architectural Support

    • ESP32 loadable modules support

    • i.MX RT: FLEXIO clock config logic.

    • Fix the clock configuration for the i.MX RT family

    • i.MX RT: Add ability to run from OCRAM

    • SAMA5D27 peripheral support - USB Host working

    • z20x: Add W25 bootloader

    • i.MX RT: Add USB Device support

    • STM32, STM32F7, STM32H7 add SPI DMATHRESHOLD

    • Improve the simulator timer

    • 64-bit modules on macOS simulator

    • z20x: Add XTP2046 SPI support; add timer support

    • RX65N RTC Driver added

    • NXP Freedom K28F Board SD-Card support

    • STM32H7: support SDRAM via FMC peripheral

    • LM3S6965-ek: Add PROTECTED build support

    • STM32H7: Added IWDG and WWDG, power management (sleep/stop/standby), WKUP pin configuration

    • SAMV71S: Add read UID implementation and move flash functions to RAM

    • i.MX RT: Fix interrupts storm (serial & I2C)

    • Various fixes and cosmetic changes to the CxD56xx architecture

    • Fix SiFive FE310 related code (comments, improve serial irq handling, initial int status)

    • Implement QSPI for STM32H7

    • Improvements for the nRF52 port: I2C, SPI, GPIO support

    • Updates for LPC17xx/40xx serial

    • Adds basic support for Microchip SAM E54 Xplained Pro board

    • Adds an Ethernet driver for the SAME5x family (based on the SAMA5 GMAC driver)

    • Add CDC ECM Ethernet over USB 2.0 High Speed (tested on SAMA5D36-Xplained board)

    • Simulator: Reimplement simulator uart on top of serial driver framework

    • NXP S32K1XX peripheral clock fixes

    • Fix syscall stack alignment on armv7-m

    • Fix flash_erase(page) when page >= 256 for STM32L4 family

    • Add partial support for the NETLINK poll() operation.

    • Add serial DMA support for STM32F7

    • Add AM335x Clock Configuration

    • Add I2C support for AM335x

    • Add configuration to fine tune LPI2C Timeout for iMXRT

    • Add CAN support to AM335x

    • Add I2C support to STM32F0/L0/G0

    • Kinetis LPC SDCard improvements

    • Replace the busy polling with work_queue in the ethernet driver of simulator

    • Fix Xtensa’s SMP support to follow same logic from other SMP archs

    • PIC32MZ: SPI transfers can be configured to use DMA.

    • PIC32MZ: Implement cache operations.

    • Add support for RISCV-64

    • Add support for x86_64 (tested on QEMU)

    • Add support for ELF64

    • Add a port to the NUCLEO-F429ZI board

    • Add support for the STM32H747I-DISCO board

    • Add Z20X board support and bootloader to upload code from the W25 flash to SRAM

    • Add initial support for Litex with softcore CPU VexRiscV SoC

    • Add support for the Digilent ARTY_A7 board to test the Litex port

    • Added initial support for Sipeed Maix Bit board with Kendryte K210 processor

    • New architectural support: ez80f92

    • Flat address x86_64 port of Nuttx

    • Support to run NuttX on ESP32 QEMU

    • Initial support for Sipeed Maix Bit board with Kendryte K210 processor

    • Add initial support for Kendryte K210 processor in SMP mode

    • NXP S32K11x (Cortex-M0+) and S32K14x (Cortext-M4F): Add support for NXP automotive boards.

    • XMC 4700 (Cortex-M4F)

    • New architecture support

    • Architectures with significant improvements

  • Driver Support

    • Update all the drivers to check return value of nxsem_wait_uninterruptible().

    • MCP9844 shutdown mode support

    • fcntl: add O_CLOEXEC flag, add O_CLOEXEC/FD_CLOEXEC support

    • CDC-ECM Ethernet over USB 2.0 HS

    • smartfs improvements: Handling of duplicate sectors, support fsck to check and repair the smartfs file system, and recover SPI Flash from initial error state.

    • Various fixes for USBDEV driver: Remove unnecessary reset logic, fix descriptor type mismatch when dual speed is enabled, fix invalid/unsupported command processing, and fix string ID calculation.

    • Handle size zero in umm_malloc.c and umm_realloc.c, which causes a system freeze in kernel mode.

    • Fixed compilation issue with poll fds notification.

    • Report POLLHUP and POLLERR in ‘revents’ regardless the requested ‘events’ set.

    • New driver for the ADS7828 I2C analog to digital converter

    • driver/ioexpander: New driver for PCA9538 I2C I/O expander

    • New driver type for battery monitor ICs.

    • Driver for the BQ769x0 battery monitor IC.

    • Add Support for Quectel EC20 4G LTE Module USB CDC/ACM

    • Add QSPI-based Winbond NOR FLASH driver

    • New drivers

    • Drivers with significant improvements

  • Networking

    • Telnet: Fix/Refine CTRL+C to work on telnet

    • TCP: Fix of faulty TCP sequence increments

    • netdb: Fix netdb to query IPv4 and IPv6 addresses regardless the server address type

    • Netlink sockets may be set to non-blocking

    • Improve TUN and SLIP, refine Control+C Handling in Telnet

    • Sockets: Add socket MSG_DONTWAIT support

    • Network Loopback Driver: Add a configuration option to control packet size

    • Network IOCTLs: Add FIONBIO network IOCTL support

    • NFS: Support IPv4 and TCP

    • Sockets: Add IP and TCP socket options needed by iperf3

    • Netlink: Add support for asynchronous Netlink responses

    • TCP: Monitor TCP_POLL/TCP_NEWDATA/TCP_BACKLOG per the request like UDP counterpart

    • TCP: Minor design improvement to TCP delayed ACKs

    • DNS IPv4/IPv6 Dual Host Support: When IPv4/IPv6 Dual Stack is enabled, queries both types of addresses regardless of whether the DNS server is accessed via IPv4 or IPv6. As a result, getaddrinfo() may return a mixed (IPv4/IPv6) address list.

  • Applications

    • Correct format when printing ARP tablet entries

    • Ensure /bin/ping and ping work at the same time

    • Correct backward conditional logic in dhcpd_leaseexpired()

    • Fix several problems on ftpd

    • Fix dhcpd issue reported on Issue #17

    • Fix sendmail example to run on a local SMTP server

    • Fix buffer overflow on netlib

    • Fix compile errors in loopback mode of the tcpblaster

    • Fix stack corruption in ELF task test

    • Fix errors in NoBlockRecv and BlockRecv tests of usrsocktest

    • Fix ipforward IP Header issue for IPv4

    • Fix wrongly swapped parity options of CU program

    • Fix slcd to avoid using priv->fd before initializing it

    • Fix (tcp, udp)blaster to build on macOS

    • Correct the buffer type of base64 program

    • Extend netutils and netinit to work with only Netlink sockets enabled

    • Add getprime program to check multi-thread performance

    • Improve zmodem send performance

    • Add simple HTS221, LSM303 and LSM6DSL examples

    • Improve to gs2200m wiki performance

    • Improve telnet server and enable it to listen on both IPv4 and IPv6

    • Improve ntpclient logic

    • Improve wapi to save configuration to file system

    • Improve wapi to skip associate if ssid is invalid

    • Improve cmd_nfsmount to use IPv4 and IPv6

    • Improve ostest for SMP and non-SMP configurations

    • Improve UDP to avoid using standard symbols

    • Improve dhcpd to include configurable timeout and retry count

    • Improvements

    • Bugfixes

    很高兴能够在新发布的版本看到自己贡献的代码,也希望有更多的爱好者可以参与到这个项目来。

以上是关于Apache NuttX-9.0.0正式发布的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot MAVEN编译报错Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.0:(代码片

Apache Pulsar 2.7.1 版本正式发布!

普开数据节后播报:Apache Hadoop 3.1.0 正式发布

Apache NetBeans 10.0 正式发布:支持 JDK 11

[里程碑]1.0.0版本正式发布——Apache ServiceComb(incubating)

Apache Kafka 1.0.0正式发布!