diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html index 83ecadd8fc0..6f6bee00a11 100644 --- a/Documentation/NuttX.html +++ b/Documentation/NuttX.html @@ -104,7 +104,7 @@
Last Updated: November 21, 2019
+Last Updated: April 16, 2020
Goals. - NuttX is a real timed embedded operating system (RTOS). + NuttX is a real time embedded operating system (RTOS). Its goals are:
|
Zilog eZ80Acclaim! Microcontroller. - There are three eZ80Acclaim! ports: + There are four eZ80Acclaim! ports:
All three boards are based on the eZ80F091 part and all use the Zilog ZDS-II @@ -6921,6 +6997,14 @@ BFD_ASSERT (*plt_offset != (bfd_vma) -1); A USB keyboard adapter provides for standard keyboard input. Data storage and interchange is accomplished by a SPI-based micro-SD card. ++ NuttX-9.0: + Support for the Z20X board was added. The port includes: + - Initial support to have a functional nsh. + - Support for SPI and W25 FLASH. + - A bootloader capable of writing code to the W25 FLASH and load it to the + SRAM to be executed. + |
diff --git a/ReleaseNotes b/ReleaseNotes
index 6d58ee7c43e..fa18ff72460 100644
--- a/ReleaseNotes
+++ b/ReleaseNotes
@@ -26618,3 +26618,151 @@ information):
fixes the violation of the portable POSIX OS interface, but also
permits use of ROM disks in PROTECTED and KERNEL modes. From
Gregory Nutt.
+
+NuttX-9.0.0 Release Notes
+-------------------------
+
+This is the first release of NuttX as Apache NuttX (Incubating) and represents our first major milestone as a Podling of the Apache Software Foundation's Incubator. This release is the culmination of nearly 6 months of hard work and includes several new architectures and drivers, and numerous improvements and bug fixes to the core RTOS, drivers, and networking subsystems.
+
+ * Major Changes to Core OS
+ * Bugfixes
+ - 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
+
+ * 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
+ * New architecture support
+ - 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)
+ * Architectures with significant improvements
+ - 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
+ - SAMV71: 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.
+ * Driver Support
+ * New drivers
+ - 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
+ * Drivers with significant improvements
+ - 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.
+ * 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
+ * Improvements
+ - 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
+ * Bugfixes
+ - 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