Prep for 6.26 release

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5745 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2013-03-15 18:07:34 +00:00
parent 5b98834f2f
commit 6239b70352
4 changed files with 775 additions and 757 deletions

View File

@ -4096,7 +4096,7 @@
STM32F4. Includes untested additions for the F1 implementation as STM32F4. Includes untested additions for the F1 implementation as
well. From Petteri Aimonen. well. From Petteri Aimonen.
6.26 2013-xx-xx Gregory Nutt <gnutt@nuttx.org> 6.26 2013-03-15 Gregory Nutt <gnutt@nuttx.org>
* drivers/serial/serial.c: Correct some race conditions when checking * drivers/serial/serial.c: Correct some race conditions when checking
for disconnection of a removable serial device. for disconnection of a removable serial device.
@ -4175,7 +4175,7 @@
example "+-" would look weird. From Petteri Aimonen. example "+-" would look weird. From Petteri Aimonen.
* mm/mm_mallinfo.c: Take MM semaphore in mm_mallinfo. From Petteri * mm/mm_mallinfo.c: Take MM semaphore in mm_mallinfo. From Petteri
Aimonen. Aimonen.
* configs/stm32f3discovery/nsh/defconfig: Disable SPI. It is nto * configs/stm32f3discovery/nsh/defconfig: Disable SPI. It is not
used. used.
* drivers/mtd/sst39vf: Add a driver for the SST29VF NOR FLASH parts. * drivers/mtd/sst39vf: Add a driver for the SST29VF NOR FLASH parts.
* sched/os_start.c: Add an additional call-out to support board- * sched/os_start.c: Add an additional call-out to support board-
@ -4233,7 +4233,7 @@
* arch/arm/src/stm32f20xxx_dma.c and stm32f40xxx_dma.c: Fix a typo * arch/arm/src/stm32f20xxx_dma.c and stm32f40xxx_dma.c: Fix a typo
in assigned base register addresses for each DMA channel. From in assigned base register addresses for each DMA channel. From
Yan T. Yan T.
* Several build fixes from Mike Smithe were incorporated. These were * Several build fixes from Mike Smith were incorporated. These were
mostly compilation errors introduced into the system because of the mostly compilation errors introduced into the system because of the
large number of recent changes with broad scope (2013-03-04). large number of recent changes with broad scope (2013-03-04).
* configs/zkit-arm-17969/src/up_can.c: Add CAN support to the * configs/zkit-arm-17969/src/up_can.c: Add CAN support to the
@ -4329,4 +4329,6 @@
heap in the flat build. But not in the kernel build: The base of heap in the flat build. But not in the kernel build: The base of
the heap is elsewhere so the naming was wrong. (2013-03-13). the heap is elsewhere so the naming was wrong. (2013-03-13).
* libc/stdlib/lib_itoa.c: Implementation of itoa() contributed by * libc/stdlib/lib_itoa.c: Implementation of itoa() contributed by
Ryan Sundberg. (2013-03-14). Ryan Sundberg. (2013-03-14).
6.27 2013-xx-xx Gregory Nutt <gnutt@nuttx.org>

File diff suppressed because it is too large Load Diff

View File

@ -3760,3 +3760,243 @@ Bugfixes (see the ChangeLog for details). Some of these are very important:
- Others as detailed in the ChangeLog: HID keyboard, LPC17xx bit - Others as detailed in the ChangeLog: HID keyboard, LPC17xx bit
definitions, strndup(), PL2303, SYSLOG error handling, AT25, definitions, strndup(), PL2303, SYSLOG error handling, AT25,
apps/examples. apps/examples.
NuttX-6.26
^^^^^^^^^^
The 93rd release of NuttX, Version 6.26, was made on March 15, 2013,
and is available for download from the SourceForge website. Note
that release consists of two tarballs: nuttx-6.26.tar.gz and
apps-6.26.tar.gz. Both may be needed (see the top-level nuttx/README.txt
file for build information).
This release corresponds with SVN release number: r5745
Note that all SVN information has been stripped from the tarballs. If you
need the SVN configuration information, you should check out directly from
SVN. Revision r5745 should equivalent to release 6.26 of NuttX:
svn checkout -r5745 svn://svn.code.sf.net/p/nuttx/code/trunk nuttx-code
Or (HTTP):
svn checkout -r5745 http://svn.code.sf.net/p/nuttx/code/trunk nuttx-code
Additional new features and extended functionality:
* OS Initialization:
- Add an additional call-out to support board-specific driver
initialization during the boot-up phase (available with
CONFIG_BOARD_INITIALIZE=y).
* Tasking:
- New interface task_spawn() that is like posix_spawn(), but uses
entry point addresses like task_create().
- Additional data restructuring as a continuation of the task group
changes of NuttX 6.25. These data structures were moved from the
TCB structure into the task group: pthread join data,
atexit/on_exit callbacks, waitpid data structures, and message
queues.
- TCBs for tasks and pthreads are now separate structures. This
saves a little memory since tasks do not have to carry the overhead
for threads and vice versa.
* Kernel Build:
- Extensive changes were made to support the kernel build mode. In
this mode, NuttX is built as a monolithic kernel. NuttX is built
as a separate kernel mode "blob" and the applications are built
as a separate user mode "blob". The kernel runs in kernel mode and
the applications run in user mode (with the MPU restricting user
mode accesses). Access to the kernel from the user blob is only
via system calls (SVCalls).
- Extensive changes were made to the syscall, SVCall, and trapping
logic. Many internal interfaces were renamed.
- The memory manager was extended to support both kernel- and user-
mode allocations. Logic within the kernel needs to use the
correct kernel- or user-space allocator, depending upon the user
of the allocated memory.
- The user-space blob now contains a header built in at the beginning
of the block that provides the same information that was previously
provided by a kludgy, auto-generated header file (user_map.h).
- Basic support implemented for the ARMv7-M family with fragments
also implemetned for the ARMv6-M and MIPS32 families.
- Kernel build supported added for the LPC17xx Open1788 and for
the Atmel SAM3U-EK board. All testing is being performed on the
Open1788 board.
* Signals:
- Delivery of signals to threads within a task group is now compatible
with the way that signals are delivered to threads within a process.
* Drivers:
- Add a driver for the SST29VF NOR FLASH parts.
- USB device trace/debug feature extended to decode device-specific
trace events to make the trace output more readable (from Petteri
Aimonen).
- USB MSC device driver can not support names of differing sizes
in the USB descriptor and the SCSI fields (from Petteri Aimonen).
- Locking added to MMC/SD SPI drivers so that MMC/SD can co-exist on
the same bus as other SPI devices. Frequency is reset each time
that the MMC/SD SPI has the bus locked. (from Petteri Aimonen).
* ARMv6-M (Cortex-M0):
- Added support for the ARM Cortex-M0 family.
* nuvoTon NUC120:
- Added support for the nuvoTon NUC120 MCU (Cortex-M0).
* nuvoTon NUC120 Boards:
- Added basic support for the nuvoTon NuTiny-SDK-NUC120 board (Cortex-M0).
* LPC17xx:
- Added support for the LPC177x and LPC178x families. Most of this is
the work of Rommel Marcelo.
* LPC17xx Boards:
- Added support for Zilogic System's ARM development Kit, ZKIT-ARM-1769.
From Rashid.
- The port for the WaveShare Open1788 board is now functional. Basic
OS test and NuttShell (NSH) configurations are functional. More
driver development and testing is needed (from Rommel Marcelo).
* LPC17xx Drivers:
- Added an SD card MSI driver for the LPC178x. The driver is marginally
functional but requires DMA capability to be reliable.
* STM32
- Support extended to handle the STM32 F3 family (Cortex-M4 with F1-like
peripherals).
* STM32 Boards
- Added support the STMicro STM32F3Discovery board (STM32 F3).
* Stellaris LM3S/LM4F
- Basic support for the LM4F120 family is in place, but untested (mostly
from Jose Pablo Carballo).
* Stellaris LM4F Boards
- Add support for the LM4F120 LaunchPad (untested).
* Networking:
- select() should now allocate a little less memory.
* Memory Management:
- Extended to support multiple heaps. This is used as part of
the kernel build in order to support separater user- and
kernel-mode heaps.
- The stand-alone memory manger test had to be removed. It
was too entangled and made extension of the memory manager
nearly impossible. This is a loss.
* Build System:
- Several configurations converted to use the kconfig-frontends
configuration tool. There are still many more that need to
be converted.
* C Library:
- Move the workqueue logic into the C library. There is now a
special user-space version of the work queue (which will only
be used with a NuttX kernel build).
- Implementation of itoa() contributed by Ryan Sundberg.
* Applications:
- The NSH builtin task logic now uses task_spawn() to start builtin
applications.
- The OS test now includes a test cased to verify task_restart().
Efforts In Progress. The following are features that are partially
implemented but present in this release. Most are expected to be fully
available in NuttX 6.27.
* LM4F120 LaunchPad port. Code is in place, but nothing has been tested.
* WaveShare Open1788 port. This port as actually complete and
functional. However, there is still ongoing development and
testing of drivers.
* Kernel Build. Much progress has been made, but there kernel build is
not yet fully functional due to several user resources that are not yet
properly disentangled from the kernel blob.
* Conversion of old configurations to use the kconfig-frontends
tool is an ongoing effort that will continue for some time.
Bugfixes (see the ChangeLog for details). Some of these are very important:
* Tasking:
- The wrong PID was being signalled with SIGCHILD. It should be
the PID of the task that create the task group, not the ID of
the last thread to leave the task group.
- Added logic so that some internal resources and states are recovered
when tasks are deleted or restarted. Handle cases where there are
outstanding timed events pending when tasks are deleted or restarted.
* ARMv7-M:
- Several fixes to the MPU control logic.
* Drivers:
- Removable serial drivers race conditions fixed.
- MAX11802 timing bug (from Petteri Aimonen).
* STM32 Drivers:
- Handle cases were SPI DMA logic fails if sem_wait is awakened
by a signal. Need to clear error flags to prevent corruption of
subsequent transfers. Also, bit count should not be changed while
the SPI peripheral is enabled (from Petteri Aimonen).
- Fixes to the OTG FS device driver from Petteri Aimonen.
- Fix typos in DMA register header file (from Yan T.)
* Graphics:
- Correction to the hyphen in the SANS 17x22 font (from Petteri
Aimonen).
* Networking:
- Corrected errors in the socket poll/select logic. Additional
state logic was needed to detect if the socket is still connected
before starting the poll wait. (bug reported by Qiang Yu).
* Memory Management:
- mallinfo() should hold the memory manager semaphore (from Petteri
Aimonen.
* Build System:
- Resolved several build errors reported by Mike Smith.
* Applications:
- Fixed an NSH memory leak: Needed to detach after creating each
pthread.
- readline() now returns EOF on any failure (instead of a negated
errno value). This is because the underlying read is based on
logic similar to getc. The value zero (meaning end-of-file)
was being confused with a NUL. So if a NUL was received, the
NSH session would terminate because it thought it was the end of
file.

View File

@ -197,6 +197,11 @@ int vsscanf(FAR char *buf, FAR const char *fmt, va_list ap)
noassign = false; noassign = false;
lflag = false; lflag = false;
/* NOTE that there is a flaw in this loop logic: The fmt string often
* terminates with %n which would have to be processes at the end of the
* buf string. That won't happen here.
*/
while (*fmt && *buf) while (*fmt && *buf)
{ {
/* Skip over white space */ /* Skip over white space */