Prep for the NuttX-6.32 Release

This commit is contained in:
Gregory Nutt 2013-12-07 11:04:08 -06:00
parent 7b6b2bbd7c
commit 604361ac6b
3 changed files with 425 additions and 69 deletions

View File

@ -3343,7 +3343,7 @@
(submitted by Max Holtzberg). (submitted by Max Holtzberg).
* configs/stm3240g-eval/xmlrpc: An example configuration for the * configs/stm3240g-eval/xmlrpc: An example configuration for the
Embeddable Lightweight XML-RPC Server at apps/examples/xmlrpc. Embeddable Lightweight XML-RPC Server at apps/examples/xmlrpc.
See http://www.drdobbs.com/web-development/\ See http://www.drdobbs.com/web-development/
an-embeddable-lightweight-xml-rpc-server/184405364 for more info. an-embeddable-lightweight-xml-rpc-server/184405364 for more info.
Contributed by Max Holtzberg. Contributed by Max Holtzberg.
* configs/*/nxwm/defconfig and sched/task_exithook.c: Fixes for * configs/*/nxwm/defconfig and sched/task_exithook.c: Fixes for
@ -5174,7 +5174,7 @@
(2013-7-23). (2013-7-23).
* arch/arm/src/armv7-a/arm_restorefpu.S, arm_savefpu.S, arm_doirq.c, * arch/arm/src/armv7-a/arm_restorefpu.S, arm_savefpu.S, arm_doirq.c,
arm_fullcontextrestore.S, arm_saveusercontext.S: Add hardware arm_fullcontextrestore.S, arm_saveusercontext.S: Add hardware
floating point register save/restore logic for the Cortex-A5\ floating point register save/restore logic for the Cortex-A5
(2013-7-23). (2013-7-23).
* arch/Kconfig: Attempt at generic external memory configuration is not * arch/Kconfig: Attempt at generic external memory configuration is not
flexible enough, especially for the SAMA5. Move external memory flexible enough, especially for the SAMA5. Move external memory
@ -5907,7 +5907,7 @@
* nuttx/drivers/audio/vs1053.c and nuttx/include/nuttx/audio/audio.h: * nuttx/drivers/audio/vs1053.c and nuttx/include/nuttx/audio/audio.h:
Add logic to verify the audio sub-format. From Ken Pettit (2013-10-28). Add logic to verify the audio sub-format. From Ken Pettit (2013-10-28).
6.32 2013-xx-xx Gregory Nutt <gnutt@nuttx.org> 6.32 2013-12-07 Gregory Nutt <gnutt@nuttx.org>
* configs/spark: Spark configuration updated by David Sidrane * configs/spark: Spark configuration updated by David Sidrane
(2013-10-30). (2013-10-30).
@ -5926,7 +5926,7 @@
error. From David Sidrane (2013-10-31). error. From David Sidrane (2013-10-31).
* drivers/mtd/mtd_config.c and include/nuttx/configdata.h: Add a container * drivers/mtd/mtd_config.c and include/nuttx/configdata.h: Add a container
for an MTD device that can be used to provide a simple, lightweight for an MTD device that can be used to provide a simple, lightweight
interface to configation data storage that resides on some storage interface to configuration data storage that resides on some storage
media that is wrapped as an MTD device. From Ken Pettit (2013-11-1). media that is wrapped as an MTD device. From Ken Pettit (2013-11-1).
* configs/mikroe-stm32f4: Now uses /dev/config for configuration data * configs/mikroe-stm32f4: Now uses /dev/config for configuration data
storage. From Ken Pettit (2013-11-1). storage. From Ken Pettit (2013-11-1).
@ -5980,7 +5980,7 @@
* configs/sama5d3x-ek: Add support for the PWM test for the * configs/sama5d3x-ek: Add support for the PWM test for the
SAMA5D3x-EK board (2013-11-6). SAMA5D3x-EK board (2013-11-6).
* arch/arm/src/sama5/sam_pwm.c and .h: SAMA5 PWM driver is now * arch/arm/src/sama5/sam_pwm.c and .h: SAMA5 PWM driver is now
function (2013-11-7). functional (2013-11-7).
* include/nuttx/audio/i2s.h: First cut at an I2S interface * include/nuttx/audio/i2s.h: First cut at an I2S interface
definition. This initial definition is sparse will will definition. This initial definition is sparse will will
probably evolve significantly (2011-11-7). probably evolve significantly (2011-11-7).
@ -5993,7 +5993,7 @@
* configs/stm32f429i-disco: Support for the STM32F429I-Discovery * configs/stm32f429i-disco: Support for the STM32F429I-Discovery
board from Ken Pettit (2013-11-7). board from Ken Pettit (2013-11-7).
* arch/arm/src/stm32/stm32_usbdev.c: The long outstanding bug * arch/arm/src/stm32/stm32_usbdev.c: The long outstanding bug
involviing the handling of OUT SETUP commands has been fixed in involving the handling of OUT SETUP commands has been fixed in
the STM32 F1 USB device driver by David Sidrane (2013-11-7). the STM32 F1 USB device driver by David Sidrane (2013-11-7).
* configs/spark/composite/cdc-acm.inf: Windows CDC/ACM driver * configs/spark/composite/cdc-acm.inf: Windows CDC/ACM driver
provided by David Sidrane (2013-11-7). provided by David Sidrane (2013-11-7).
@ -6028,10 +6028,10 @@
* arch/arm/src/sama5/sam_ssc.c and Kconfig: Add configurable support * arch/arm/src/sama5/sam_ssc.c and Kconfig: Add configurable support
for SSC loopback mode (2013-11-10). for SSC loopback mode (2013-11-10).
* include/nuttx/audio/i2s.h, arch/arm/src/sama5/sam_ssc.c, and * include/nuttx/audio/i2s.h, arch/arm/src/sama5/sam_ssc.c, and
drivers/audio/i2schar.c: Improvied I2S interface design: Simplified drivers/audio/i2schar.c: Improved I2S interface design: Simplified
audio buffer queuing (2013-11-10). audio buffer queuing (2013-11-10).
* arch/arm/src/sam34 and arch/arm/include/sam34: Basic support for * arch/arm/src/sam34 and arch/arm/include/sam34: Basic support for
the Atmal SAM4E family. From Mitko (2013-11-11). the Atmel SAM4E family. From Mitko (2013-11-11).
* libc/audio/lib_buffer.c: Remove unused apb_prepare() function * libc/audio/lib_buffer.c: Remove unused apb_prepare() function
(2013-11-11). (2013-11-11).
* arch/arm/src/stm32: Added header files and driver framework for the * arch/arm/src/stm32: Added header files and driver framework for the
@ -6062,10 +6062,10 @@
that will provide raw access to NAND (2013-11-15). that will provide raw access to NAND (2013-11-15).
* configs/sama5d3x-ek/src/sam_nandflash.c: Provides board-specific * configs/sama5d3x-ek/src/sam_nandflash.c: Provides board-specific
memory controller initialize for NAND flash (2013-11-15). memory controller initialize for NAND flash (2013-11-15).
* include/nuttx/mtd/mtd.h: Move include/nutt/mtd.h to * include/nuttx/mtd/mtd.h: Move include/nuttx/mtd.h to
include/nuttx/mtd/mtd.h where it will, hopefully, soon be joined by include/nuttx/mtd/mtd.h where it will, hopefully, soon be joined by
other MTD-related header files (2013-11-15). other MTD-related header files (2013-11-15).
* drivers/mtd/mtd_onfi.c and include/nuttx/mtd/onfi.h: Add sharedi * drivers/mtd/mtd_onfi.c and include/nuttx/mtd/onfi.h: Add shared
NAND routines for use with ONFI compatible NAND FLASH devices NAND routines for use with ONFI compatible NAND FLASH devices
(2013-11-15). (2013-11-15).
* configs/ea3131/src/up_usbhost.c: Board-specific USB host support * configs/ea3131/src/up_usbhost.c: Board-specific USB host support
@ -6104,8 +6104,8 @@
Ken Pettit (2013-11-23) Ken Pettit (2013-11-23)
* tools/mkctags.sh: A script for creating ctags from Ken Pettit * tools/mkctags.sh: A script for creating ctags from Ken Pettit
(2013-11-23) (2013-11-23)
* configs/sama5d3x-ek/src/sam_nand.c: Add support for auto-mounting * configs/sama5d3x-ek/src/sam_nand.c: Add support for "auto-mounting"
NAND MTD block or NXFFS devices (2013-11-25). NAND MTD block driver or NXFFS file system (2013-11-25).
* include/mtd/mtd.h: Packed the geometry structure so that it can * include/mtd/mtd.h: Packed the geometry structure so that it can
support larger erase block sizes without increasing the size of support larger erase block sizes without increasing the size of
the geometry structure (2013-11-27). the geometry structure (2013-11-27).
@ -6126,22 +6126,22 @@
* fs/fs_inode.c: The inode semaphore must be re-entrant. Here is the * fs/fs_inode.c: The inode semaphore must be re-entrant. Here is the
re-entering path that I found: (1) USB host connects to FLASH drive re-entering path that I found: (1) USB host connects to FLASH drive
and creates /dev/sda, (2) /dev/sda is mounted, (3) FLASH drive is and creates /dev/sda, (2) /dev/sda is mounted, (3) FLASH drive is
removed but /dev/sda is not destroyed because there is still a\ removed but /dev/sda is not destroyed because there is still a
reference on the device because of the mount, (4) umount() is called, reference on the device because of the mount, (4) umount() is called,
taking the inode semaphore, now the driver tries to destroy the block taking the inode semaphore, now the driver tries to destroy the block
driver by calling unregister_blockdriver(). But (5) driver by calling unregister_blockdriver(). But (5)
unregister_blockdriver() also takes the inode semaphore causing a unregister_blockdriver() also takes the inode semaphore causing a
deadlock if the inode semaphore is not re-entry. (2013-11-28). deadlock if the inode semaphore is not re-entrant. (2013-11-28).
* configs/viewtool-stm32f107: Add board support for the ViewTool * configs/viewtool-stm32f107: Add board support for the ViewTool
STM32F103/F107 board with the STM32F107VCT6 installed. Initial STM32F103/F107 board with the STM32F107VCT6 installed. Initial
check-in is the unverfied board-support framework only check-in is the unverified board-support framework only
(2013-11-30). (2013-11-30).
* configs/viewtool-stm32f107/src/stm32_buttons.c and stm32_leds.c: * configs/viewtool-stm32f107/src/stm32_buttons.c and stm32_leds.c:
Add support for LEDs an buttons on the ViewTools STM32F107 board Add support for LEDs an buttons on the ViewTools STM32F107 board
(2013-11-30). (2013-11-30).
* fs/nxffs/nxffs_initialize.c: First of probably several changes for * fs/nxffs/nxffs_initialize.c: First of probably several changes for
NAND FLASH. NAND can report read errors because of bad ECC. Logic NAND FLASH. NAND can report read errors because of bad ECC. Logic
in NXFFS must account for it and not just throw in th towel every in NXFFS must account for it and not just throw in the towel every
time a read fails (2013-11-30). time a read fails (2013-11-30).
* drivers/mtd/mtd_nand* and arch/arm/src/sama5/sam_nand.c: NAND * drivers/mtd/mtd_nand* and arch/arm/src/sama5/sam_nand.c: NAND
accesses now work (at least with software ECC and now DMA). Still accesses now work (at least with software ECC and now DMA). Still
@ -6163,8 +6163,9 @@
* arch/arm/src/lm/lm_start.c: Don't initialize .data if not running * arch/arm/src/lm/lm_start.c: Don't initialize .data if not running
from FLASH (2013-12-05). from FLASH (2013-12-05).
* fs/fat/fs_configfat.c: Fix a typo in the FAT16 formatting logic. * fs/fat/fs_configfat.c: Fix a typo in the FAT16 formatting logic.
Was this ever able to format a FAT16 disk? (2013-12-05). Was this ever able to format a FAT16 volume? (2013-12-05).
* drivers/mtd/mtd_nand.c: Check if block number is within range at * drivers/mtd/mtd_nand.c: Check if block number is within range at
the top of the loop not the bottom. Otherwise, we will do a bogus the top of the loop not the bottom. Otherwise, we will do a bogus
transfer with the out-of-range block before we test it (2013-12-05). transfer with the out-of-range block before we test it (2013-12-05).
6.33 2014-xx-xx Gregory Nutt <gnutt@nuttx.org>

View File

@ -8,7 +8,7 @@
<tr align="center" bgcolor="#e4e4e4"> <tr align="center" bgcolor="#e4e4e4">
<td> <td>
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1> <h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
<p>Last Updated: October 28, 2013</p> <p>Last Updated: December 7, 2013</p>
</td> </td>
</tr> </tr>
</table> </table>
@ -466,6 +466,13 @@
<li>BINFS pseudo-filesystem support.</li> <li>BINFS pseudo-filesystem support.</li>
</p> </p>
</tr> </tr>
<tr>
<td><br></td>
<td>
<p>
<li><code>procfs/</code> pseudo-filesystem support.</li>
</p>
</tr>
<tr> <tr>
<td><br></td> <td><br></td>
<td> <td>
@ -529,7 +536,7 @@
<td> <td>
<p> <p>
<li> <li>
Network, USB (host), USB (device), serial, CAN, ADC, DAC, PWM, Quadrature Encoder, Wireless, and watchdog timer driver architectures. Network, USB (host), USB (device), serial, I2C, I2S, NAND, CAN, ADC, DAC, PWM, Quadrature Encoder, Wireless, and watchdog timer driver architectures.
</li> </li>
</p> </p>
</td> </td>
@ -735,6 +742,13 @@
<li><i>MTD</i>-inspired interface for <i>M</i>emory <i>T</i>echnology <i>D</i>evices.</li> <li><i>MTD</i>-inspired interface for <i>M</i>emory <i>T</i>echnology <i>D</i>evices.</li>
</p> </p>
</tr> </tr>
<tr>
<td><br></td>
<td>
<p>
<li>NAND support.</li>
</p>
</tr>
<tr> <tr>
<td><br></td> <td><br></td>
<td> <td>
@ -1116,16 +1130,15 @@
<h2>Released Versions</h2> <h2>Released Versions</h2>
<p> <p>
In addition to the ever-changing GIT repository, there are frozen released versions of NuttX available. In addition to the ever-changing GIT repository, there are frozen released versions of NuttX available.
The current release is NuttX 6.31. The current release is NuttX 6.32.
NuttX 6.31 is the 98<sup>th</sup> release of NuttX. NuttX 6.32 is the 99<sup>th</sup> release of NuttX.
It was released on October 28, 2013, and is available for download from the It was released on December 7, 2013, and is available for download from the
<a href="http://sourceforge.net/projects/nuttx/files/">SourceForge</a> website. <a href="http://sourceforge.net/projects/nuttx/files/">SourceForge</a> website.
Note that the release consists of two tarballs: <code>nuttx-6.31.tar.gz</code> and <code>apps-6.31.tar.gz</code>. Note that the release consists of two tarballs: <code>nuttx-6.32.tar.gz</code> and <code>apps-6.32.tar.gz</code>.
Both may be needed (see the top-level <code>nuttx/README.txt</code> file for build information). Both may be needed (see the top-level <code>nuttx/README.txt</code> file for build information).
Release notes for NuttX 6.31 are avaialble <a href="http://sourceforge.net/projects/nuttx/files/nuttx/nuttx-6.31/">here</a>. Release notes for NuttX 6.32 are available <a href="http://sourceforge.net/projects/nuttx/files/nuttx/nuttx-6.32/">here</a>.
The change log associated with the release is available <a href="ChangeLog.txt">here</a>. The change log associated with the release is available <a href="ChangeLog.txt">here</a>.
Unreleased changes after this release are available in GIT. Unreleased changes after this release are available in GIT (see below).
These unreleased changes are also listed <a href="#pendingchanges">here</a>.
</p> </p>
<h2><a name="pendingchanges"><b>Unreleased Changes</b>:</a></h2> <h2><a name="pendingchanges"><b>Unreleased Changes</b>:</a></h2>
@ -1181,10 +1194,10 @@
<ul> <ul>
<li><a href="#arm7tdmi">ARM7TDMI</b></a> (5)</li> <li><a href="#arm7tdmi">ARM7TDMI</b></a> (5)</li>
<li><a href="#arm920t">ARM920T</a> (1) </li> <li><a href="#arm920t">ARM920T</a> (1) </li>
<li><a href="#arm926ejs">ARM926EJS</a> (3) </li> <li><a href="#arm926ejs">ARM926EJS</a> (4) </li>
<li><a href="#armcortexa5">ARM Cortex-A5</a> (1) </li> <li><a href="#armcortexa5">ARM Cortex-A5</a> (1) </li>
<li><a href="#armcortexm0">ARM Cortex-M0/M0+</a> (2)</li> <li><a href="#armcortexm0">ARM Cortex-M0/M0+</a> (2)</li>
<li><a href="#armcortexm3">ARM Cortex-M3</a> (21)</li> <li><a href="#armcortexm3">ARM Cortex-M3</a> (24)</li>
<li><a href="#armcortexm4">ARM Cortex-M4</a> (10)</li> <li><a href="#armcortexm4">ARM Cortex-M4</a> (10)</li>
</ul> </ul>
<li>Atmel AVR <li>Atmel AVR
@ -1250,6 +1263,7 @@
<li><a href="#at91sam3x">Atmel SAM3X</a> <small>(ARM Cortex-M3)</small></li> <li><a href="#at91sam3x">Atmel SAM3X</a> <small>(ARM Cortex-M3)</small></li>
<li><a href="#at91sam4l">Atmel SAM4L</a> <small>(ARM Cortex-M4)</small></li> <li><a href="#at91sam4l">Atmel SAM4L</a> <small>(ARM Cortex-M4)</small></li>
<li><a href="#at91sam4s">Atmel SAM4S</a> <small>(ARM Cortex-M4)</small></li> <li><a href="#at91sam4s">Atmel SAM4S</a> <small>(ARM Cortex-M4)</small></li>
<li><a href="#at91sam4e">Atmel SAM4E</a> <small>(ARM Cortex-M4)</small></li>
<li><a href="#at91sama5d3">Atmel SAMA5D3</a> <small>(ARM Cortex-A5)</small></li> <li><a href="#at91sama5d3">Atmel SAMA5D3</a> <small>(ARM Cortex-A5)</small></li>
</ul> </ul>
</li> </li>
@ -1316,6 +1330,7 @@
<li><a href="#stm32303x">STMicro STM32F303x <small>(STM32 F3 family, ARM Cortex-M4)</small></b>.</a></li> <li><a href="#stm32303x">STMicro STM32F303x <small>(STM32 F3 family, ARM Cortex-M4)</small></b>.</a></li>
<li><a href="#stm32f407x">STMicro STM32F407x</a> <small>(STM32 F4 family, ARM Cortex-M4)</small></li> <li><a href="#stm32f407x">STMicro STM32F407x</a> <small>(STM32 F4 family, ARM Cortex-M4)</small></li>
<li><a href="#stm32f427x">STMicro STM32 F427/437</a> <small>(STM32 F4 family, ARM Cortex-M4)</small></li> <li><a href="#stm32f427x">STMicro STM32 F427/437</a> <small>(STM32 F4 family, ARM Cortex-M4)</small></li>
<li><a href="#stm32f429x">STMicro STM32 F429</a> <small>(STM32 F4 family, ARM Cortex-M4)</small></li>
</ul> </ul>
</li> </li>
</td> </td>
@ -1592,21 +1607,23 @@
<tr> <tr>
<td><br></td> <td><br></td>
<td> <td>
<p>
<a name="nxplpc3131"><b>NXP LPC3131</b>.</a> <a name="nxplpc3131"><b>NXP LPC3131</b>.</a>
The port for the NXP <a href="http://ics.nxp.com/products/lpc3000/lpc313x.lpc314x.lpc315x/">LPC3131</a> on the <a href="http://www.embeddedartists.com/products/kits/lpc3131_kit.php">Embedded Artists EA3131</a> Two boards based on the NXP LPC3131 are supported:
development board was first released in NuttX-5.1 with a GNU arm-nuttx-elf or arm-eabi toolchain* under Linux or Cygwin </p>
(but was not functional until NuttX-5.2). <ul>
<li>
<p>
First, a port for the NXP <a href="http://ics.nxp.com/products/lpc3000/lpc313x.lpc314x.lpc315x/">LPC3131</a> on the <a href="http://www.embeddedartists.com/products/kits/lpc3131_kit.php">Embedded Artists EA3131</a> development board was first released in NuttX-5.1 (but was not functional until NuttX-5.2).
</p> </p>
<ul> <ul>
<p> <p>
<b>STATUS:</b> <b>STATUS:</b>
The basic EA3131 port is complete and verified in NuttX-5.2 The basic EA3131 port is complete and verified in NuttX-5.2.
This basic port includes basic boot-up, serial console, and timer interrupts. This basic port includes basic boot-up, serial console, and timer interrupts.
This port was extended in NuttX 5.3 with a USB high speed driver contributed by David Hewson. This port was extended in NuttX 5.3 with a USB high speed driver contributed by David Hewson.
David also contributed I2C and SPI drivers plus several important LPC313x USB bug fixes David also contributed I2C and SPI drivers plus several important LPC313x USB bug fixes that appear in the NuttX 5.6 release.
that appear in the NuttX 5.6 release. This port has been verified using the NuttX OS test, USB serial and mass storage tests and includes a working implementation of the NuttShell (<a href="NuttShell.html">NSH</a>).
This port has been verified using the NuttX OS test, USB serial and mass storage
tests and includes a working implementation of the NuttShell (<a href="NuttShell.html">NSH</a>).
</p> </p>
<p> <p>
Support for <a href="NuttXDemandPaging.html">on-demand paging</a> has been developed for the EA3131. Support for <a href="NuttXDemandPaging.html">on-demand paging</a> has been developed for the EA3131.
@ -1614,9 +1631,27 @@
However, as of this writing, I have not had the opportunity to verify this new feature. However, as of this writing, I have not had the opportunity to verify this new feature.
</p> </p>
<p> <p>
Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/ea3131/README.txt">README</a> file for further information. Refer to the Embedded Artists EA3131 board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/ea3131/README.txt">README</a> file for further information.
</p> </p>
</ul> </ul>
</li>
<li>
<p>
A second port to the NXP <a href="http://ics.nxp.com/products/lpc3000/lpc313x.lpc314x.lpc315x/">LPC3131</a> on the <a href="https://www.olimex.com/Products/ARM/NXP/LPC-H3131/">Olimex LPC-H3131</a> development board was added in NuttX-6.32.
</p>
<ul>
<p>
<b>STATUS:</b>
The basic H3131 port is complete and verified in NuttX-6.3.
It is similar to the EA3131 port except: (1) I have not yet gotten the SDRAM to work, and (2) this board was used to develop and verify the USB 2.0, low-/full-/high-speed EHCI host controller driver.
NOTE: That driver should work on the EA3131 as well. However, the EA3131 uses a PCA9532 PWM part to controller the port power so the it would not quite be a simple drop-in.
</p>
<p>
Refer to the Olimex LPC-H3131 board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/olimex-lpc-h3131/README.txt">README</a> file for further information.
</p>
</ul>
</li>
</ul>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -1760,16 +1795,32 @@
An LCD controller (LCDC) frame buffer driver, and An LCD controller (LCDC) frame buffer driver, and
</li> </li>
<li> <li>
A CAN driver (however, testing of the CAN has been delayed because of cabling issues). A CAN driver (Testing of the CAN has been delayed because of cabling issues).
</li> </li>
</ul> </ul>
<p> <p>
Additional board configurations were added to test and demonstrate these new drivers including new graphics and NxWM configurations. Additional board configurations were added to test and demonstrate these new drivers including new graphics and NxWM configurations.
These are expected in NuttX-6.32.
</p> </p>
<p>
These drivers were added in NuttX-6.32:
</p>
<ul>
<li>
A PWM driver with DMA support
</li>
<li>
An SSC-based I2S driver
</li>
<li>
Support for Programmable clock outputs
</li>
<li>
NAND support including support for the PMECC hardware ECC and for DMA transfers.
</li>
</ul>
<p> <p>
Develop continues. Develop continues.
Work is underway to provide a Image Sensor Interface (ISI) camera interface, a PWM driver, and NAND FLASH support. Work is underway to provide a Image Sensor Interface (ISI) camera interface.
</p> </p>
<p> <p>
Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/sama5d3x-ek/README.txt">README</a> file for further information. Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/sama5d3x-ek/README.txt">README</a> file for further information.
@ -1861,7 +1912,8 @@ nsh>
There is a working OS test configuration that verifies the correct port of NuttX to the part and a working NuttShell (<a href="NuttShell.html">NSH</a>) configuration that might be the basis for an application development. There is a working OS test configuration that verifies the correct port of NuttX to the part and a working NuttShell (<a href="NuttShell.html">NSH</a>) configuration that might be the basis for an application development.
As of NuttX-6.28 more device driver development would be needed to make this a complete port, particularly to support USB OTG. As of NuttX-6.28 more device driver development would be needed to make this a complete port, particularly to support USB OTG.
A TSI and a SPI driver were added in NuttX-6.29. A TSI and a SPI driver were added in NuttX-6.29.
Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/freedom-kl25z/README.txt">README</a> file for further information. Alan contributed a PWM driver in NuttX-6.32.
Refer to the Freedom KL25Z board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/freedom-kl25z/README.txt">README</a> file for further information.
</p> </p>
</ul> </ul>
</td> </td>
@ -2092,7 +2144,6 @@ nsh>
Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/stm32f100rc_generic/README.txt">README</a> file for further information. Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/stm32f100rc_generic/README.txt">README</a> file for further information.
</p> </p>
</tr> </tr>
<li><a href="#stm32f103cx">STMicro STM32F103C48</a> <small>(STM32 F1 &quot;Low- and Medium-Density Line&quot;Family, ARM Cortex-M3)</small></li>
<tr> <tr>
<td><br></td> <td><br></td>
<td><hr></td> <td><hr></td>
@ -2174,11 +2225,12 @@ nsh>
<b>Spark (and <i>emulated Spark</i>)</b>. <b>Spark (and <i>emulated Spark</i>)</b>.
The Spark boards are based on the STM32F103CBT6 chip and feature wireless networking using the TI CC3000 WLAN module. The Spark boards are based on the STM32F103CBT6 chip and feature wireless networking using the TI CC3000 WLAN module.
See the <a href="http://www.spark.io">Spark</a> web site for hardware information; See the <a href="http://www.spark.io">Spark</a> web site for hardware information;
see the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/spark/README.txt">README</a> file for further information about the NuttX port.
Most of this work is the result of the effort of David Sidrane.
</p>
<p>
The <i>emulated Spark</i> is a base board for the Maple Mini board (see above) developed by David Sidrane that supports Spark development while we all way breathlessly for or Spark boards. The <i>emulated Spark</i> is a base board for the Maple Mini board (see above) developed by David Sidrane that supports Spark development while we all way breathlessly for or Spark boards.
see the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/spark/README.txt">README</a> file for further information about the NuttX port.
<p>
</p>
Intially Spark support was introduced in NuttX 6.31 and completed in NuttX 6.32.
Most of this work is the result of the effort of David Sidrane.
</p> </p>
</li> </li>
</ol> </ol>
@ -2236,7 +2288,7 @@ nsh>
<li> <li>
<p> <p>
<b>Spark</b>. <b>Spark</b>.
David Sidrane has the <i>emulated</i> Spark board up-and-running with a functional CC3000 network, SST25 FAT file system, an NSH shell, and a composite USB CDC/ACM and USBMSC devices. This configuration is was first available NuttX 6-31. David Sidrane has the <i>emulated</i> Spark board up-and-running with a functional CC3000 network, SST25 FAT file system, an NSH shell, and a composite USB CDC/ACM and USBMSC devices. This configuration is was first available NuttX 6.31 and completed in NuttX 6.32.
That is really quite a lot of high end functionality on an STM32 that only has 20KB of RAM! I am impressed! That is really quite a lot of high end functionality on an STM32 that only has 20KB of RAM! I am impressed!
</p> </p>
</li> </li>
@ -2263,7 +2315,8 @@ nsh>
<a name="stm32f107x"><b>STMicro STM32F107x (STM32 F1 &quot;Connectivity Line&quot; family)</b>.</a> <a name="stm32f107x"><b>STMicro STM32F107x (STM32 F1 &quot;Connectivity Line&quot; family)</b>.</a>
Chip support for the STM32 F1 &quot;Connectivity Line&quot; family has been present in NuttX for some time and users have reported that they have successful brought up NuttX on there proprietary boards using this logic. Chip support for the STM32 F1 &quot;Connectivity Line&quot; family has been present in NuttX for some time and users have reported that they have successful brought up NuttX on there proprietary boards using this logic.
</p> </p>
<p> <ul>
<li><p>
<b>Olimex STM32-P107</b> <b>Olimex STM32-P107</b>
Support for the <a href="https://www.olimex.com/dev/stm32-p107.html">Olimex STM32-P107</a> was contributed by Max Holtzberg and first appeared in NuttX-6.21. That port features the STMicro STM32F107VC MCU. Support for the <a href="https://www.olimex.com/dev/stm32-p107.html">Olimex STM32-P107</a> was contributed by Max Holtzberg and first appeared in NuttX-6.21. That port features the STMicro STM32F107VC MCU.
<ul> <ul>
@ -2272,11 +2325,10 @@ nsh>
Networking is functional. Networking is functional.
Support for an external ENCX24J600 network was added in NuttX 6.30. Support for an external ENCX24J600 network was added in NuttX 6.30.
</ul> </ul>
</p> </p></li>
<p> <li><p>
<b>Shenzhou IV</b> <b>Shenzhou IV</b>
Work is underway as of this writing to port NuttX to the Shenzhou IV development board (See <a href="http://www.armjishu.com">www.armjishu.com</a>) featuring the STMicro STM32F107VCT MCU. A port of NuttX to the Shenzhou IV development board (See <a href="http://www.armjishu.com">www.armjishu.com</a>) featuring the STMicro STM32F107VCT MCU was added in NuttX-6.22.
If all goes according to plan, this port should be verified and available in NuttX-6.22.
<ul> <ul>
<p> <p>
<b>STATUS:</b> <b>STATUS:</b>
@ -2288,7 +2340,19 @@ nsh>
Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/shenzhou/README.txt">README</a> file for further information. Refer to the NuttX board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/shenzhou/README.txt">README</a> file for further information.
</p> </p>
</ul> </ul>
</p></li>
<li><p>
<b>ViewTool STM32F103/F107</b>
Support for the <a href="https://http://www.viewtool.com/">Viewtool STM32F103/F107</a> board was added in NuttX-6.32. That port features the STMicro STM32F107VCT6 MCU.
<ul>
<p>
<b>STATUS:</b>
A basic NuttShell (NSH) configuration is available.
Because of commonality with other STM32 F107 boards, this basic configuration could easily to extended to support things like USB or networking.
Refer to the SViewtool STM32F103/F107 <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/viewtool-stm32f107/README.txt">README</a> file for further information.
</p> </p>
</ul>
</p></li>
</td> </td>
</tr> </tr>
<tr> <tr>
@ -2755,7 +2819,7 @@ nsh>
<td> <td>
<p> <p>
<a name="stm32f427x"><b>STMicro STM32 F427/437</b>.</a> <a name="stm32f427x"><b>STMicro STM32 F427/437</b>.</a>
General architectural support was provided for the F427/437 family in NuttX 4.27. General architectural support was provided for the F427/437 family in NuttX 6.27.
Specific support includes the STM32F427I, STM32F427Z, and STM32F427V chips. Specific support includes the STM32F427I, STM32F427Z, and STM32F427V chips.
This is <i>architecture-only</i> support, meaning that support for the boards with these chips is available, but not support for any publically available boards is included.. This is <i>architecture-only</i> support, meaning that support for the boards with these chips is available, but not support for any publically available boards is included..
This support was contributed by Mike Smith. This support was contributed by Mike Smith.
@ -2769,6 +2833,22 @@ nsh>
<td><br></td> <td><br></td>
<td><hr></td> <td><hr></td>
</tr> </tr>
<tr>
<td><br></td>
<td>
<p>
<a name="stm32f429x"><b>STMicro STM32 F429</b>.</a>
Support for STMicro STM32F429I-Discovery development board featuring the STM32F429ZIT6 MCU was contributed in NuttX-6.32 by Ken Pettit.
The F429 port adds support for the STM32F439 LCDC and OTG HS (in FS mode).
The STM32F429ZIT6 is a 180MHz Cortex-M4 operation with 2Mbit Flash memory and 256kbytes.
Refer to the STM32F429I-Discovery board <a href="http://sourceforge.net/p/nuttx/git/ci/master/tree/nuttx/configs/stm32f429i-disco/README.txt">README</a> file for further information.
</p>
</td>
</tr>
<tr>
<td><br></td>
<td><hr></td>
</tr>
<tr> <tr>
<td><br></td> <td><br></td>
<td> <td>
@ -2804,7 +2884,7 @@ nsh>
<li> <li>
The LPC43xx USB0 peripheral appears to be the same as the USB OTG peripheral for the LPC31xx. The LPC43xx USB0 peripheral appears to be the same as the USB OTG peripheral for the LPC31xx.
The LPC31xx USB0 device-side driver has been copied from the LPC31xx port but also integration into the LPC43xx (clocking and pin configuration). The LPC31xx USB0 device-side driver has been copied from the LPC31xx port but also integration into the LPC43xx (clocking and pin configuration).
It should be possible to complete poriting of this LPC31xx driver with a small porting effort. It should be possible to complete porting of this LPC31xx driver with a small porting effort.
</li> </li>
<li> <li>
The Ethernet block looks to be based on the same IP as the STM32 Ethernet and, as a result, it should be possible to leverage the NuttX STM32 Ethernet driver with a little more effort. The Ethernet block looks to be based on the same IP as the STM32 Ethernet and, as a result, it should be possible to leverage the NuttX STM32 Ethernet driver with a little more effort.
@ -2932,6 +3012,21 @@ Mem: 29232 5920 23312 23312
<td><br></td> <td><br></td>
<td><hr></td> <td><hr></td>
</tr> </tr>
<tr>
<td><br></td>
<td>
<p>
<a name="at91sam4e"><b>Atmel SAM4E</b>.</a>
General architectural support was provided for the SAM4E family in NuttX 6.32.
This is <i>architecture-only</i> support, meaning that support for the boards with these chips is available, but not support for any publicly available boards is included..
This support was contributed by Mitko.
</p>
</td>
</tr>
<tr>
<td><br></td>
<td><hr></td>
</tr>
<tr> <tr>
<td><br></td> <td><br></td>
<td> <td>

View File

@ -5259,3 +5259,263 @@ Bugfixes (see the ChangeLog for details). Some of these are very important:
Sidrane. Sidrane.
- apps/examples/can: Correct an error in a debug statement. From - apps/examples/can: Correct an error in a debug statement. From
Martin Lederhilger. Martin Lederhilger.
NuttX-6.32
----------
The 99th release of NuttX, Version 6.32, was made on December 7, 2013,
and is available for download from the SourceForge website. Note
that release consists of two tarballs: nuttx-6.32.tar.gz and
apps-6.32.tar.gz. Both may be needed (see the top-level nuttx/README.txt
file for build information).
Additional new features and extended functionality:
* General:
- Extension and standardization of stack debug logic. Now includes
coloration of the IDLE and interrupt stacks as well as the heap.
Suggested by David Sidrane.
* Audio Subsystem and Audio Drivers:
- I2S interface definition. Integrates with audio sub-system.
- VS1053 worker thread stack size is now configurable and assigned a
name via pthread_setname_np(). From Ken Pettit.
* Networking / Network Drivers
- Updates and adaptations to support for TI CC3000 wireless module
from David Sidrane. These updates include multi-threading support
and interface and header file changes to integrate more seamlessly
with NuttX applications.
* File Systems:
- procfs: Add support for a tiny procfs file system. The initial
offering is little more that a proof of concept but may be developed
further in subsequent releases.
- NXFFS: An initial attempt was made to integrate NXFFS with the NAND
MTD driver. Changes were made to handle bad blocks. However, I
later realized that NXFFS cannot handle NAND because the way that
is re-writes blocks is incompatible with the NAND ECC handling.
These changes were backed-out so as not to introduce turmoil, but
can be re-enabled if needed via configuration option.
- NXFFS: Make the start up scan of the media a configuration option.
It just takes to long and is not really necessary! Those rare cases
where the scan was helpful can be fixed using flash_eraseall().
* General Drivers:
- I2S: A simple character driver was added to support I2S accesses.
This driver in its current state is intended only to support I2C
testing and would not be appropriate to used for any real driver
application.
* MTD Drivers
- Add a container for an MTD device that can be used to provide a
simple, lightweight interface to configuration data storage that
resides on some storage media that is wrapped as an MTD device.
From Ken Pettit.
- New interface definition for lower half NAND drivers.
- MTD Nand: Add MTD NAND driver that will support ONFI devices,
non-ONFI devices (via table lookup), bad block checking, software
ECC (Hamming), and will interact with the lower-half, hardware-
specific, NAND driver. Based on BSD-compatible Atmel sample code.
- MTD geometry structure is now packed so that it can support larger
erase block sizes needed by NAND without increasing the size of
the geometry structure.
- SST25: Add another SST25 SerialFlash driver, sst25xx.c. This one
differs from sst25.c in that it supports larger SST25 parts: In
the larger parts support page write instead of byte/word writes
like the smaller parts. From Ken Pettit.
* USB Drivers
- STM32 F1 USB Device: Add support for decoded USB trace strings.
From David Sidrane.
* ARM
- Add more ARM9 cache management functions to flush and invalidate
D-Cache for DMA support.
* Atmel AT91 SAMA5D3x Drivers:
- Many new drivers including CAN, PWM, SSC/I2S
- PCK: Add support for programmable clock outputs.
- NAND: Driver with hardware ECC and DMA support
* Atmel AT91 SAMA5D3x Boards:
- SAMA5D3x-EK: Add support for the apps/examples/i2schar test.
- SAMA5D3x-EK: Provides board-specific memory controller initialize
for NAND flash.
- SAMA5D3x-EK: Add support for "auto-mounting" NAND MTD block driver
or NXFFS file system.
* Atmel AT91 SAM3/4 Boards:
- Basic support for the Atmel SAM4E family. From Mitko.
* STMicro STM32:
- Added support for the STM32F429. From Ken Pettit.
- Added support for GPIOK and GPIOJ. From Ken Pettit.
* STMicro STM32 Drivers
- STM32 F4 OTG FS/HS Device: OTG FS device and host drivers extended
so that they can support either the OTG FS peripheral or the OTG HS
peripheral (in FS mode). This was done as a quick way to get USB
support on the STM32F429 which has only OTG HS. From Ken Pettit.
- Added header files and driver framework for the STM32F429 LTDC
framebuffer driver. From Ken Pettit.
* STMicro STM32 Boards:
- Support for the Spark board was completely by Davide Sidrane. The
Spark configuration includes integrated CC3000 wireless support, FAT
file system on the SerialFlash and a composite device that can be
used both to export the FAT file system and to provide a serial
interface.
- The Mikroe-stm32f4 now uses /dev/config for configuration data
storage. From Ken Pettit.
- Added support for the STM32F429I-Discovery board from Ken Pettit.
- Added board support for the ViewTool STM32F103/F107 board with the
STM32F107VCT6 installed.
* NXP LPC31xx Drivers:
- USB ECHI HCD: Add a driver for the low-/full-/high-speed variant
of the EHCI host controller.
* NXP LPC31xx Boards:
- Board-specific USB host support for the Emedded Artists EA3131 board.
(Missing PCA9532 controls).
- Add support for the Olimex LPC-H3131 board. Including USB host
support (which does not depend on the PCA8532 interface).
* Kinetis KL Drivers:
- PWM driver for the Freescale Kinetis KL family from Alan Carvalho
de Assis.
* Kinetis KL Boards
- Freedom-KL25Z: Add PWM support from Alan Carvalho de Assis.
* TI Stellaris LM3S
- Don't initialize .data in start-up logic if not running from FLASH.
* Applications:
- apps/platform: A new home for platform-specific application code.
- Define a common interface that can be used to manage platform-
specific configuration data. From Ken Pettit.
- apps/examples/configdata: A unit test for the MTD configuration
data driver from Ken Pettit.
- Aapps/platform/mikroe-stm32f4: dd platform-specific storage of
configuration data for the Mikroe-stm32f4. From Ken Pettit.
- apps/examples/cc3000: Fine tuning of memory usage from David Sidrane.
- apps/system/nxplayer: Play thread stack size is now configurable.
All NxPlayer threads now have names assigned via pthread_setname_np().
From Ken Pettit.
- apps/examples/i2schar: The I2S test based on the I2S character
driver.
- apps/examples/hidkbd/hidkbd_main.c: Now calls a function named
arch_usbhost_initialize() that must be provided by the platform-
specific code.
- NSH:
- hexdump: Add skip= and count= options to the hexdump command. From Ken Pettit.
- Allow USB trace without a USB console. From David Sidrane.
- Mount command updates from Ken Pettit.
- Add an option to the mkfatfs command to specify FAT12, FAT16, or FAT32.
* Tools
- tools/mkctags.sh: A script for creating ctags from Ken Pettit.
Efforts In Progress. The following are features that are partially
implemented but present in this release. They are not likely be be
completed soon.
* kconfig-fronted Configuration:
- Conversion of old configurations to use the kconfig-frontends
tool is an ongoing effort that will continue for some time.
At this time, only 50% of the configurations have been converted
to use the kconfig-frontends tools.
Bugfixes (see the ChangeLog for details). Some of these are very important:
* File Systems
- FAT: In one error return case, the error return value was not being
set, making the failure look like success. From David Sidrane.
- mount: SMART FS must be included in the conditional compilation for
the set of file systems that require block drivers. From Daniel
Palmer.
- SmartFS: Fixed a minor bug with SMART partition number reporting
that would only be seen if both partition support and multi-root
directory support are enabled at the same time. From Ken Pettit.
- Deadlock: The inode semaphore must be re-entrant. Here is the re-
entrant path that I found: (1) USB host connects to FLASH drive and
creates /dev/sda, (2) /dev/sda is mounted, (3) FLASH drive is
removed but /dev/sda is not destroyed because there is still a
reference on the device because of the mount, (4) umount() is
called, taking the inode semaphore, now the driver tries to destroy
the block driver by calling unregister_blockdriver(). But (5)
unregister_blockdriver() also takes the inode semaphore causing a
deadlock if the inode semaphore is not re-entrant.
- FAT: Fix a typo in the FAT16 formatting logic. Was this ever able to
format a FAT16 volume?
* MTD Drivers
- MTD Partitions: Fix erase block vs page block confusion. From Ken
Pettit
- SST25 Serial Flash: Improved write performance by fixing a bug that
prevented operation in the faster write mode. From David Sidrane.
* USB Drivers:
- USB MSC Device: pthread_join() does not work if called from a
different task group than the pthread. This is correct behavior,
but still a problem. The correct solution would be configure the
USB MSC thread to a task, however, this workaround from David
Sidrane plugs the hole for now.
- USB CDC/ACM, USB MSC, and Composite Device Classes: Un-initialization
logic caused re-use of a stale pointer. Changed to a two pass
un-initialization for the case of the composite driver: Memory
resources are not freed until the second un-initialization pass.
From David Sidrane.
* STMicro STM32 Drivers:
- STM32 F1 USB Device: Fix some errors that cause crashes when the USB
was disconnected. From David Sidrane.
- STM32 F1 USB Device: Correct EP0 state handling logic when buffers
larger than the EP0 packet size are sent. From David Sidrane.
- STM32 F1 USB Device: The long outstanding bug involving the handling
of OUT SETUP commands has been fixed in the STM32 F1 USB device
driver by David Sidrane.
- Kconfig: Add missing setup of CAN TSEG1 and TSEG2 values. From
Martin Lederhilger.
* Tools
- tools/mkconfig.c: SMART FS must be included in the conditional
compilation for the set of writable file systems. Noted by Daniel
Palmer.
* Applications:
- apps/platform/Makefile: Was not dealing with the bin sub-directory
correctly.
- apps/system/composite/composite_main.c: The wrong handle was getting
nullified. From David Sidrane.