You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by gn...@apache.org on 2020/04/20 02:02:59 UTC

[incubator-nuttx] 04/04: Update release notes in preparation for the 9.0.0 release.

This is an automated email from the ASF dual-hosted git repository.

gnutt pushed a commit to branch releases/9.0
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git

commit cb16dfbc304a14d1365f85f7a18cc86d3d9bd46d
Author: Ouss4 <ab...@gmail.com>
AuthorDate: Wed Apr 15 18:14:27 2020 +0100

    Update release notes in preparation for the 9.0.0 release.
---
 Documentation/NuttX.html | 116 ++++++++++++++++++++++++++++++++-----
 ReleaseNotes             | 148 +++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 248 insertions(+), 16 deletions(-)

diff --git a/Documentation/NuttX.html b/Documentation/NuttX.html
index 166c0ce..32cbdd6 100644
--- a/Documentation/NuttX.html
+++ b/Documentation/NuttX.html
@@ -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>
@@ -2478,6 +2488,11 @@
           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.
         </li>
@@ -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>
@@ -6034,6 +6066,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>
@@ -6112,6 +6149,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>
@@ -6429,6 +6469,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>
@@ -6662,6 +6721,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.
@@ -6779,6 +6842,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>
@@ -6805,6 +6871,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>
 
@@ -6876,12 +6951,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
@@ -6912,6 +6988,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>
diff --git a/ReleaseNotes b/ReleaseNotes
index 6d58ee7..fa18ff7 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