Update release notes in preparation for the 9.0.0 release.

This commit is contained in:
Ouss4 2020-04-15 18:14:27 +01:00 committed by patacongo
parent af31fd45ae
commit d53566118e
2 changed files with 248 additions and 16 deletions

View File

@ -104,7 +104,7 @@
<tr align="center" bgcolor="#e4e4e4">
<td>
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
<p>Last Updated: November 21, 2019</p>
<p>Last Updated: April 16, 2020</p>
</td>
</tr>
</table>
@ -120,7 +120,7 @@
<p>
<b>Goals</b>.
NuttX is a real timed embedded operating system (RTOS).
NuttX is a real time embedded operating system (RTOS).
Its goals are:
<p>
<center><table width="90%">
@ -1450,11 +1450,13 @@
<h2>Released Versions</h2>
<p>
In addition to the ever-changing GIT repository, there are frozen released versions of NuttX available.
The current release is NuttX 8.2.
NuttX 8.2 is the 133<sup>rd</sup> release of NuttX.
It was released on November 16, 2019, and is available for download from the
<a href="https://bitbucket.org/nuttx/nuttx/downloads/">Bitbucket.org</a> website.
Note that the release consists of two tarballs: <code>nuttx-8.2.tar.gz</code> and <code>apps-8.2.tar.gz</code>.
The current release is NuttX 9.0.
NuttX 9.0 is the 134<sup>rd</sup> release of NuttX.
It was released on April 30, 2020, and is available for download from the
<a href="https://nuttx.apache.org/">nuttx.apache.org</a> website.
Note that the release consists of two tarballs:
<code>apache-nuttx-9.0.x-incubating.tar.gz</code> and
<code>apache-nuttx-apps-9.0.x-incubating.tar.gz</code>.
Both may be needed (see the top-level <code>nuttx/README.txt</code> file for build information).
</p>
@ -1463,17 +1465,23 @@
<ul>
<li><b>nuttx</b>.
<ul><p>
Release notes for NuttX 8.2 are available <a href="https://bitbucket.org/nuttx/nuttx/downloads/">here</a>.
Release notes for all released versions on NuttX are available in the <a href="https://bitbucket.org/nuttx/nuttx/src/master/ReleaseNotes" target="_blank">Bitbucket GIT</a>.
The ChangeLog for all releases of NuttX is available in the ChangeLog file that can viewed in the <a href="https://bitbucket.org/nuttx/nuttx/src/master/ChangeLog" target="_blank">Bitbucket GIT</a>.
Release notes for all released versions on NuttX are available in <a href="https://github.com/apache/incubator-nuttx/blob/master/ReleaseNotes" target="_blank">GitHub</a>.
The ReleaseNotes for the current release is at the bottom of that file.
The ChangeLog for all releases of NuttX is available in the ChangeLog file
that can viewed in <a href="https://github.com/apache/incubator-nuttx/blob/master/ChangeLog" target="_blank">GitHub</a>.
The ChangeLog for the current release is at the bottom of that file.
</p>
</li></ul>
<li><b>apps</b>.
<ul><p>
Release notes for NuttX 8.2 are available <a href="https://bitbucket.org/nuttx/apps/downloads/">here</a>.
Release notes for all released versions on NuttX are available in the <a href="https://bitbucket.org/nuttx/nuttx/src/master/ReleaseNotes" target="_blank">Bitbucket GIT</a>
The ChangeLog for the all releases of <code>apps/</code> is available in the ChangeLog file that can viewed in the <a href="https://bitbucket.org/nuttx/apps/src/master/ChangeLog.txt" target="_blank">Bitbucket GIT</a>.
Release notes for all released versions on NuttX are available in <a
href="https://github.com/apache/incubator-nuttx/blob/master/ReleaseNotes"
target="_blank">GitHub</a>
The ReleaseNotes for the current release is at the bottom of that file.
The ChangeLog for all releases of <code>apps/</code> is available in the
ChangeLog file that can viewed in the <a
href="https://github.com/apache/incubator-nuttx/blob/master/ChangeLog"
target="_blank">GitHub</a>.
The ChangeLog for the current release is at the bottom of that file.
</p>
</li></ul>
@ -1524,7 +1532,7 @@
<li><a href="#armcortexm0">ARM Cortex-M0/M0+</a> (13)</li>
<li><a href="#armcortexm3">ARM Cortex-M3</a> (39)</li>
<li><a href="#armcortexm4">ARM Cortex-M4</a> (59)</li>
<li><a href="#armcortexm7">ARM Cortex-M7</a> (14)</li>
<li><a href="#armcortexm7">ARM Cortex-M7</a> (15)</li>
</ul>
<li>Atmel AVR
<ul>
@ -1575,6 +1583,8 @@
<ul>
<li><a href="#nr5mxx"> NEXT RISC-V NR5Mxx</a> (1)</li>
<li><a href="#gwgap8">GreenWaves GAP8 (1)</a></li>
<li><a href="#k210">Kendryte K210 (1)</a></li>
<li><a href="#artya7">Litex (1)</a></li>
</ul>
</li>
<li>Xtensa LX6:
@ -1585,7 +1595,7 @@
<li>ZiLOG
<ul>
<li><a href="#zilogz16f">ZiLOG ZNEO Z16F</a> (2)</li>
<li><a href="#zilogez80acclaim">ZiLOG eZ80 Acclaim!</a> (1)</li>
<li><a href="#zilogez80acclaim">ZiLOG eZ80 Acclaim!</a> (4)</li>
<li><a href="#zilogz8encore">ZiLOG Z8Encore!</a> (2)</li>
<li><a href="#zilogz180">ZiLOG Z180</a> (1)</li>
<li><a href="#zilogz80">ZiLOG Z80</a> (2)</li>
@ -2477,6 +2487,11 @@
While not ready for prodcution use, the Beaglebone Black port is functional and will be the basis for a more extensive development.
Additional work in progress to extend this port and more capable is anticipated in NuttX-7.29.
</li>
<li>
<b>NuttX-9.0</b>
CAN support was added.
Clock Configuration was added.
</li>
<li>
<b>NuttX-7.31</b>.
An LCD driver was added in NuttX-7.31.
@ -2932,6 +2947,9 @@ nsh>
Current development efforts are focused on porting the NuttX window system (NX)
to work with the Evaluation Kits OLED display.
</p>
<p>
NuttX-9.0 added protected build support to the LM3S6965-ek.
</p>
<p><small>
<b>NOTE</b>: As it is configured now, you MUST have a network connected.
Otherwise, the NSH prompt will not come up because the Ethernet
@ -3338,6 +3356,10 @@ nsh>
<b>NuttX-8.2</b>
Added PWM and TIM drivers for the G0. From Daniel Pereira Volpato.
</li>
<li>
<b>NuttX-9.0</b>
Added I2C support for F0, L0 and G0.
</li>
</p>
</td>
</tr>
@ -5814,6 +5836,10 @@ Mem: 29232 5920 23312 23312
These unverfied drivers include: SPI, I2C, DMA, USB.
Also refer to the NuttX board <a href="https://bitbucket.org/nuttx/nuttx/src/master/boards/arm/samd5e5/metro-m4/README.txt" target="_blank">README</a> file for further information about the current state of the port.
</p>
<p>
Nuttx-9.0 added basic support for Microchip SAME54 Xplained Pro board.
An ethernet driver was also added to the SAME5x familly.
</p>
</td>
</tr>
@ -5907,6 +5933,12 @@ Mem: 29232 5920 23312 23312
From Eduard Niesner contributed a PWM driver.
Added UID access from Valmantas Paliksa.
USB High speed driver was added for STM32F7 series by Ramtin Amin.
</p>
</li>
<li>
<p><b>NuttX-9.0</b>.
Added serial DMA support.
</p>
</li>
</ul>
</td>
@ -6043,6 +6075,11 @@ Mem: 29232 5920 23312 23312
Added support for SDMMC and FLASH progmem. From David Sidrane.
</p>
</li>
<li>
<p><b>NuttX-9.0</b>.
Added QSPI support for the STM32H7.
</p>
</li>
</p>
</td>
</tr>
@ -6121,6 +6158,9 @@ Mem: 29232 5920 23312 23312
<p><b>NuttX-8.2</b>.
An LCD drivers was added in NuttX-8.2 by Fabio Balzano.
</p>
<p><b>NuttX-9.0</b>.
Added USB Device support.
</p>
</li>
</ul>
</td>
@ -6438,6 +6478,25 @@ Mem: 29232 5920 23312 23312
This is a great, stable starting point for anyone interested in fleshing out the x86 port!
Refer to the NuttX <a href="https://bitbucket.org/nuttx/nuttx/src/master/boards/x86/qemu/qemu-i486/README.txt" target="_blank">README</a> file for further information.
</p>
<p>
<b>QEMU/Intel64</b>
An x86_64 flat address port was ported in NuttX-9.0.
It consists of the following feautres:
<ul>
<li> - Runs in x86_64 long mode.</li>
<li> - Configurable SSE/AVX support.</li>
<li>- IRQs are managed by LAPIC(X2APIC) and IOAPIC.</li>
<li>- Used TSC_DEADLINE or APIC timer for systick.</li>
<li>- Pages are now maps the kernel at 4GB~, but changeable.</li>
</ul>
</p>
<p>
This kernel with ostest have been tested with
<ul>
<li>Qemu/KVM on a Xeon 2630v4 machine.</li>
<li>Bochs with broadwell_ult emulation.</li>
</ul>
</p>
</ul>
</td>
</tr>
@ -6671,6 +6730,10 @@ Mem: 29232 5920 23312 23312
<b>NuttX-7.31</b>.
Abdelatif Guettouche contributed DMA support.
</p>
<p>
<b>NuttX-9.0</b>.
Cache operations were implemented.
</p>
</ul>
</p>
Refer to the NuttX board <a href="https://bitbucket.org/nuttx/nuttx/src/master/boards/mips/pic32mz/pic32mz-starterkit/README.txt" target="_blank">README</a> file for further information.
@ -6788,6 +6851,9 @@ BFD_ASSERT (*plt_offset != (bfd_vma) -1);
<ul>
<li><b>NuttX-8.2</b></li>
Basic support for the RX65N family was released by Anjana with support for two boards: The RSK RX65N-2MB and the GR-Rose.
<li><b>NuttX-9.0</b>
RTC driver for the RX65N was added.
</li>
</ul>
</td>
</tr>
@ -6814,6 +6880,15 @@ BFD_ASSERT (*plt_offset != (bfd_vma) -1);
The GAP8 features a RI5CY core called Fabric Controller(FC), and a cluster of 8 RI5CY cores that runs at a bit slower speed.
The GAP8 is an implementation of the opensource PULP platform, a Parallel-Ultra-Low-Power design.
</p>
<p>
<li><a href="#k210">Sipeed Maix bit</a></li>
Initial support for the Sipeed Maix bit board was added in Nuttx-9.0.
</p>
<p>
<a name="artya7"><b>Litex ARTY_A7</b></a>.
Support for the Digilent ARTY_A7 board along with CPU VexRiscV SOC were added
in NuttX-9.0.
</p>
</td>
</tr>
@ -6885,12 +6960,13 @@ BFD_ASSERT (*plt_offset != (bfd_vma) -1);
<td>
<p>
<b>Zilog eZ80Acclaim! Microcontroller</b>.
There are three eZ80Acclaim! ports:
There are four eZ80Acclaim! ports:
</p>
<ul>
<li>The ZiLOG ez80f0910200kitg development kit.
<li>The ZiLOG ez80f0910200zcog-d development kit.
<li>The MakerLisp CPU board.
<li>The Z20x DIY computing system.
</ul>
<p>
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.
</p>
<p>
<b>NuttX-9.0:</b>
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.
</p>
</ul>
</td>
</tr>

View File

@ -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