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:
parent
5b98834f2f
commit
6239b70352
10
ChangeLog
10
ChangeLog
@ -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
240
ReleaseNotes
240
ReleaseNotes
@ -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.
|
||||||
|
@ -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 */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user