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:55 UTC

[incubator-nuttx] branch releases/9.0 updated (db52820 -> cb16dfb)

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

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


    from db52820  kinetis: Fix typos
     new 666d1d6  Fix typo in boards/arm/cxd56xx/drivers/camera/Make.defs
     new 8d3f953  tools/: Update version generation tools to account for the patch number.
     new 4817a71  TODO:  Remove simulator SMP bug
     new cb16dfb  Update release notes in preparation for the 9.0.0 release.

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 Documentation/NuttX.html                    | 116 +++++++++++++++++++---
 ReleaseNotes                                | 148 ++++++++++++++++++++++++++++
 TODO                                        |  67 +------------
 boards/arm/cxd56xx/drivers/camera/Make.defs |   2 +-
 tools/Makefile.unix                         |   2 +-
 tools/Makefile.win                          |   4 +-
 tools/README.txt                            |  18 ++--
 tools/mkconfigvars.sh                       |   6 +-
 tools/mkversion.c                           |   6 +-
 tools/version.sh                            |  31 ++++--
 tools/zipme.sh                              |   6 +-
 11 files changed, 297 insertions(+), 109 deletions(-)


[incubator-nuttx] 01/04: Fix typo in boards/arm/cxd56xx/drivers/camera/Make.defs

Posted by gn...@apache.org.
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 666d1d612fec31f8597289d083ea10b2476249ec
Author: Xiang Xiao <xi...@xiaomi.com>
AuthorDate: Sat Apr 18 20:08:38 2020 +0800

    Fix typo in boards/arm/cxd56xx/drivers/camera/Make.defs
    
    Signed-off-by: Xiang Xiao <xi...@xiaomi.com>
---
 boards/arm/cxd56xx/drivers/camera/Make.defs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/boards/arm/cxd56xx/drivers/camera/Make.defs b/boards/arm/cxd56xx/drivers/camera/Make.defs
index 8281784..dffad76 100644
--- a/boards/arm/cxd56xx/drivers/camera/Make.defs
+++ b/boards/arm/cxd56xx/drivers/camera/Make.defs
@@ -18,7 +18,7 @@
 #
 ############################################################################
 
-ifeq ($(VIDEO_ISX012),y)
+ifeq ($(CONFIG_VIDEO_ISX012),y)
   CSRCS += isx012.c
 endif
 


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

Posted by gn...@apache.org.
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


[incubator-nuttx] 02/04: tools/: Update version generation tools to account for the patch number.

Posted by gn...@apache.org.
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 8d3f953a31b90469b273642ae497d3cac4f348ee
Author: Ouss4 <ab...@gmail.com>
AuthorDate: Sat Apr 18 19:47:04 2020 +0100

    tools/: Update version generation tools to account for the patch number.
---
 tools/Makefile.unix   |  2 +-
 tools/Makefile.win    |  4 +++-
 tools/README.txt      | 18 +++++++++---------
 tools/mkconfigvars.sh |  6 +++---
 tools/mkversion.c     |  6 ++++--
 tools/version.sh      | 31 +++++++++++++++++++++++--------
 tools/zipme.sh        |  6 +++---
 7 files changed, 46 insertions(+), 27 deletions(-)

diff --git a/tools/Makefile.unix b/tools/Makefile.unix
index 550493a..f71e91a 100644
--- a/tools/Makefile.unix
+++ b/tools/Makefile.unix
@@ -50,7 +50,7 @@ ifneq ($(GIT_DIR),y)
 
 # In case the version file does not exist
 
-CONFIG_VERSION_STRING ?= "0.0"
+CONFIG_VERSION_STRING ?= "0.0.0"
 CONFIG_VERSION_BUILD ?= "0"
 
 VERSION_ARG = -v $(CONFIG_VERSION_STRING) -b $(CONFIG_VERSION_BUILD)
diff --git a/tools/Makefile.win b/tools/Makefile.win
index a9eaee1..12f6d05 100644
--- a/tools/Makefile.win
+++ b/tools/Makefile.win
@@ -44,9 +44,10 @@ include $(TOPDIR)\tools\Config.mk
 
 # In case .version file does not exist
 
-CONFIG_VERSION_STRING ?= "0.0"
+CONFIG_VERSION_STRING ?= "0.0.0"
 CONFIG_VERSION_MAJOR ?= 0
 CONFIG_VERSION_MINOR ?= 0
+CONFIG_VERSION_PATCH ?= 0
 CONFIG_VERSION_BUILD ?= "0"
 
 # Control build verbosity
@@ -255,6 +256,7 @@ $(TOPDIR)\.version:
 	$(Q) echo CONFIG_VERSION_STRING="0" > .version
 	$(Q) echo CONFIG_VERSION_MAJOR=0 >> .version
 	$(Q) echo CONFIG_VERSION_MINOR=0 >> .version
+	$(Q) echo CONFIG_VERSION_PATCH=0 >> .version
 	$(Q) echo CONFIG_VERSION_BUILD="0" >> .version
 
 include\nuttx\version.h: $(TOPDIR)\.version tools\mkversion$(HOSTEXEEXT)
diff --git a/tools/README.txt b/tools/README.txt
index dc43240..42c71fd 100644
--- a/tools/README.txt
+++ b/tools/README.txt
@@ -207,11 +207,11 @@ mkconfigvars.sh
   $ tools/mkconfigvars.sh -h
   tools/mkconfigvars.sh is a tool for generation of configuration variable documentation
 
-  USAGE: tools/mkconfigvars.sh [-d|h] [-v <major.minor>]
+  USAGE: tools/mkconfigvars.sh [-d|h] [-v <major.minor.patch>]
 
   Where:
-    -v <major.minor>
-       The NuttX version number expressed as a major and minor number separated
+    -v <major.minor.patch>
+       The NuttX version number expressed as a major, minor and patch number separated
        by a period
     -d
        Enable script debug
@@ -1129,11 +1129,11 @@ zipme.sh
   Any VCS files or directories are excluded from the final tarballs.
 
   $ ./tools/zipme.sh -h
-    USAGE="USAGE: ./tools/zipme.sh [-d|h|v|s] [-b <build]> [-e <exclude>] [-k <key-id>] <major.minor>"
+    USAGE="USAGE: ./tools/zipme.sh [-d|h|v|s] [-b <build]> [-e <exclude>] [-k <key-id>] <major.minor.patch>"
   Examples:
-      ./tools/zipme.sh -s 9.0
-        Create version 9.0 tarballs and sign them.
-      ./tools/zipme.sh -s -k XXXXXX 9.0
+      ./tools/zipme.sh -s 9.0.0
+        Create version 9.0.0 tarballs and sign them.
+      ./tools/zipme.sh -s -k XXXXXX 9.0.0
         Same as above but use the key-id XXXXXX to sign the tarballs
-      ./tools/zipme.sh -e "*.swp tmp" 9.0 
-        Create the tarballs but exclude any *.swp file and the "tmp" directory.
+      ./tools/zipme.sh -e "*.swp tmp" 9.0.0
+        Create the tarballs but exclude any .swp file and the "tmp" directory.
diff --git a/tools/mkconfigvars.sh b/tools/mkconfigvars.sh
index c01a2e4..c22176a 100755
--- a/tools/mkconfigvars.sh
+++ b/tools/mkconfigvars.sh
@@ -32,7 +32,7 @@
 # POSSIBILITY OF SUCH DAMAGE.
 #
 
-USAGE="USAGE: $0 [-d|h] [-v <major.minor>]"
+USAGE="USAGE: $0 [-d|h] [-v <major.minor.patch>]"
 ADVICE="Try '$0 -h' for more information"
 
 unset VERSION
@@ -52,8 +52,8 @@ while [ ! -z "$1" ]; do
     echo $USAGE
     echo ""
     echo "Where:"
-    echo "  -v <major.minor>"
-    echo "     The NuttX version number expressed as a major and minor number separated"
+    echo "  -v <major.minor.patch>"
+    echo "     The NuttX version number expressed as a major, minor and patch number separated"
     echo "     by a period"
     echo "  -d"
     echo "     Enable script debug"
diff --git a/tools/mkversion.c b/tools/mkversion.c
index 879545f..34291e3 100644
--- a/tools/mkversion.c
+++ b/tools/mkversion.c
@@ -88,7 +88,7 @@ int main(int argc, char **argv, char **envp)
       exit(2);
     }
 
-  stream= fopen(filepath, "r");
+  stream = fopen(filepath, "r");
   if (!stream)
     {
       fprintf(stderr, "open %s failed: %s\n", filepath, strerror(errno));
@@ -99,7 +99,9 @@ int main(int argc, char **argv, char **envp)
   printf("#ifndef __INCLUDE_NUTTX_VERSION_H\n");
   printf("#define __INCLUDE_NUTTX_VERSION_H\n\n");
   generate_definitions(stream);
-  printf("\n#define CONFIG_VERSION ((CONFIG_VERSION_MAJOR << 8) | (CONFIG_VERSION_MINOR))\n\n");
+  printf("\n#define CONFIG_VERSION ((CONFIG_VERSION_MAJOR << 16) |\\\n"
+         "                        (CONFIG_VERSION_MINOR << 8) |\\\n"
+         "                        (CONFIG_VERSION_PATCH))\n\n");
   printf("#endif /* __INCLUDE_NUTTX_VERSION_H */\n");
   fclose(stream);
 
diff --git a/tools/version.sh b/tools/version.sh
index 64b2b1a..d5574d3 100755
--- a/tools/version.sh
+++ b/tools/version.sh
@@ -36,7 +36,7 @@ WD=`pwd`
 
 # Get command line parameters
 
-USAGE="USAGE: $0 [-d|-h] [-b <build>] [-v <major.minor>] <outfile-path>"
+USAGE="USAGE: $0 [-d|-h] [-b <build>] [-v <major.minor.patch>] <outfile-path>"
 ADVICE="Try '$0 -h' for more information"
 
 unset VERSION
@@ -69,9 +69,9 @@ while [ ! -z "$1" ]; do
     echo "    Enable script debug"
     echo "  -h"
     echo "    show this help message and exit"
-    echo "  -v <major.minor>"
-    echo "    The NuttX version number expressed as a major and minor number separated"
-    echo "    by a period"
+    echo "  -v <major.minor.patch>"
+    echo "    The NuttX version number expressed as a major, minor and patch"
+    echo "    number seperated by a period"
     echo "   <outfile-path>"
     echo "    The full path to the version file to be created"
     exit 0
@@ -87,6 +87,12 @@ OUTFILE=$1
 
 if [ -z ${VERSION} ] ; then
   VERSION=`git tag --sort=taggerdate | tail -1 | cut -d'-' -f2`
+
+  # Earlier tags used the format "major.minor", append a "0" for a patch.
+
+  if [[ ${VERSION} =~ ^([0-9]+[\.][0-9]+)$ ]] ; then
+    VERSION=${VERSION}.0
+  fi
 fi
 
 # Make sure we know what is going on
@@ -102,19 +108,27 @@ if [ -z ${OUTFILE} ] ; then
   echo "Missing path to the output file"
   echo $USAGE
   echo $ADVICE
-  exit 1
+  exit 2
 fi
 
-# Get the major and minor version numbers
+# Get the major, minor and patch version numbers
 
 MAJOR=`echo ${VERSION} | cut -d'.' -f1`
 if [ "X${MAJOR}" = "X${VERSION}" ]; then
   echo "Missing minor version number"
   echo $USAGE
   echo $ADVICE
-  exit 2
+  exit 3
 fi
+
 MINOR=`echo ${VERSION} | cut -d'.' -f2`
+if [ "X${MAJOR}.${MINOR}" = "X${VERSION}" ]; then
+  echo "Missing patch version number"
+  echo $USAGE
+  echo $ADVICE
+  exit 4
+fi
+PATCH=`echo ${VERSION} | cut -d'.' -f3`
 
 # Get GIT information (if not provided on the command line)
 
@@ -122,7 +136,7 @@ if [ -z "${BUILD}" ]; then
   BUILD=`git log --oneline -1 | cut -d' ' -f1 2>/dev/null`
   if [ -z "${BUILD}" ]; then
     echo "GIT version information is not available"
-    exit 3
+    exit 5
   fi
   if [ -n "`git diff-index --name-only HEAD | head -1`" ]; then
     BUILD=${BUILD}-dirty
@@ -137,4 +151,5 @@ echo "" >>${OUTFILE}
 echo "CONFIG_VERSION_STRING=\"${VERSION}\"" >>${OUTFILE}
 echo "CONFIG_VERSION_MAJOR=${MAJOR}" >>${OUTFILE}
 echo "CONFIG_VERSION_MINOR=${MINOR}" >>${OUTFILE}
+echo "CONFIG_VERSION_PATCH=${PATCH}" >>${OUTFILE}
 echo "CONFIG_VERSION_BUILD=\"${BUILD}\"" >>${OUTFILE}
diff --git a/tools/zipme.sh b/tools/zipme.sh
index 0b8c05b..b46cacc 100755
--- a/tools/zipme.sh
+++ b/tools/zipme.sh
@@ -50,7 +50,7 @@ EXCLPAT="
 "
 # Get command line parameters
 
-USAGE="USAGE: $0 [-d|h|v|s] [-b <build]> [-e <exclude>] [-k <key-id>] <major.minor>"
+USAGE="USAGE: $0 [-d|h|v|s] [-b <build]> [-e <exclude>] [-k <key-id>] <major.minor.patch>"
 ADVICE="Try '$0 -h' for more information"
 
 unset VERSION
@@ -104,8 +104,8 @@ while [ ! -z "$1" ]; do
     echo "    PGP sign the final tarballs and create digests."
     echo "   -k"
     echo "    PGP key ID.  If not provided the default ID will be used."
-    echo "  <major.minor>"
-    echo "     The NuttX version number expressed as a major and minor number separated"
+    echo "  <major.minor.patch>"
+    echo "     The NuttX version number expressed as a major, minor and patch number separated"
     echo "     by a period"
     exit 0
     ;;


[incubator-nuttx] 03/04: TODO: Remove simulator SMP bug

Posted by gn...@apache.org.
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 4817a71d40c127193b12ba8c58299d06cd445ed4
Author: Gregory Nutt <gn...@nuttx.org>
AuthorDate: Sat Apr 18 13:43:36 2020 -0600

    TODO:  Remove simulator SMP bug
    
    My understanding is the Xiao Xiang has corrected this problem so it should no longer be carried as a bug
---
 TODO | 67 ++-----------------------------------------------------------------
 1 file changed, 2 insertions(+), 65 deletions(-)

diff --git a/TODO b/TODO
index 03b2b7f..5daf843 100644
--- a/TODO
+++ b/TODO
@@ -1,4 +1,4 @@
-NuttX TODO List (Last updated January 3, 2019)
+NuttX TODO List (Last updated April 18, 2020)
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 This file summarizes known NuttX bugs, limitations, inconsistencies with
@@ -27,7 +27,7 @@ nuttx/:
  (12)  File system/Generic drivers (fs/, drivers/)
  (10)  Graphics Subsystem (graphics/)
   (1)  Build system / Toolchains
-  (3)  Linux/Cygwin simulation (arch/sim)
+  (2)  Linux/Cygwin simulation (arch/sim)
   (5)  ARM (arch/arm/)
 
 apps/ and other Add-Ons:
@@ -2556,69 +2556,6 @@ o Linux/Cygwin simulation (arch/sim)
   Status:      Open
   Priority:    Low
 
-  Title:       SMP SIMULATION ISSUES
-  Description: The configuration has basic support SMP testing.  The simulation
-               supports the emulation of multiple CPUs by creating multiple
-               pthreads, each run a copy of the simulation in the same process
-               address space.
-
-               At present, the SMP simulation is not fully functional:  It does
-               operate on the simulated CPU threads for a few context switches
-               then fails during a setjmp() operation.  I suspect that this is
-               not an issue with the NuttX SMP logic but more likely some chaos
-               in the pthread controls. I have seen similar such strange behavior
-               other times that I have tried to use setjmp/longmp from a signal
-               handler! Like when I tried to implement simulated interrupts
-               using signals.
-
-               Apparently, if longjmp is invoked from the context of a signal
-               handler, the result is undefined:
-               http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1318.htm
-
-               You can enable SMP for ostest configuration by enabling:
-
-                 -# CONFIG_EXPERIMENTAL is not set
-                 +CONFIG_EXPERIMENTAL=y
-
-                 +CONFIG_SPINLOCK=y
-                 +CONFIG_SMP=y
-                 +CONFIG_SMP_NCPUS=2
-                 +CONFIG_SMP_IDLETHREAD_STACKSIZE=2048
-
-               You also must enable near-realtime-performance otherwise even long
-               timeouts will expire before a CPU thread even has a chance to
-               execute.
-
-                 -# CONFIG_SIM_WALLTIME is not set
-                 +CONFIG_SIM_WALLTIME=y
-
-               And you can enable some additional debug output with:
-
-                 -# CONFIG_DEBUG_SCHED is not set
-                 +CONFIG_DEBUG_SCHED=y
-
-                 -# CONFIG_SCHED_INSTRUMENTATION is not set
-                 +CONFIG_SCHED_INSTRUMENTATION=y
-
-               The NSH configuration can also be forced to run SMP, but
-               suffers from the same quirky behavior.  I can be made
-               reliable if you modify arch/sim/src/up_idle.c so that
-               the IDLE loop only runs for CPU0.  Otherwise, often
-               simuart_post() will be called from CPU1 and it will try
-               to restart NSH on CPU0 and, again, the same quirkiness
-               occurs.
-
-               But for example, this command:
-
-                 nsh> sleep 1 &
-
-               will execute the sleep command on CPU1 which has worked
-               every time that I have tried it (which is not too many
-               times).
-
-  Status:      Open
-  Priority:    Low, SMP is important, but SMP on the simulator is not
-
 o ARM (arch/arm/)
   ^^^^^^^^^^^^^^^