mirror of
https://github.com/apache/nuttx.git
synced 2026-05-31 23:40:19 +08:00
Preparation for NuttX-6.33 release (maybe tomorrow)
This commit is contained in:
@@ -5710,8 +5710,8 @@
|
|||||||
the interface in this case (2013-10-5).
|
the interface in this case (2013-10-5).
|
||||||
* net/netdev_router.c and net/uip/uip-arp.c: When the target IP address
|
* net/netdev_router.c and net/uip/uip-arp.c: When the target IP address
|
||||||
does not lie on the device's networker when we have a routing table,
|
does not lie on the device's networker when we have a routing table,
|
||||||
looking the the correct router IP address to use in the ARP request.
|
looking the correct router IP address to use in the ARP request.
|
||||||
In that case, we want the MAC address of the router, not of the the
|
In that case, we want the MAC address of the router, not of the
|
||||||
target endpoint (2013-10-5).
|
target endpoint (2013-10-5).
|
||||||
* net/netdev_rxnotify.c and others: Use the new signature of rxnotify
|
* net/netdev_rxnotify.c and others: Use the new signature of rxnotify
|
||||||
caused by the routing table. From Max Holtzberg (2013-10-6).
|
caused by the routing table. From Max Holtzberg (2013-10-6).
|
||||||
@@ -6168,7 +6168,7 @@
|
|||||||
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>
|
6.33 2014-01-30 Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
|
||||||
* arch/arm/include/a1x and src/a1x: Directory structure to support
|
* arch/arm/include/a1x and src/a1x: Directory structure to support
|
||||||
the Allwinner A10. Not much there on the initial check-in
|
the Allwinner A10. Not much there on the initial check-in
|
||||||
@@ -6208,7 +6208,7 @@
|
|||||||
From Ken Pettit (2013-12-12)
|
From Ken Pettit (2013-12-12)
|
||||||
* arch/arm/src/a1x/chip/a1x_timer.h: Timer register bit definitions
|
* arch/arm/src/a1x/chip/a1x_timer.h: Timer register bit definitions
|
||||||
(incomplete on initial check-in) (2013-12-12).
|
(incomplete on initial check-in) (2013-12-12).
|
||||||
* lbc/time/lib_strftime.c: Need null-termination on the the string
|
* lbc/time/lib_strftime.c: Need null-termination on the string
|
||||||
generated by strftime(). From Max Holtzberg (2013-12-12).
|
generated by strftime(). From Max Holtzberg (2013-12-12).
|
||||||
* sched/nanosleep.c and include/time.h: Add nanosleep() (2013-12-12).
|
* sched/nanosleep.c and include/time.h: Add nanosleep() (2013-12-12).
|
||||||
* libc/unistd/lib_sleep.c and lib_usleep.c. Move sleep() and
|
* libc/unistd/lib_sleep.c and lib_usleep.c. Move sleep() and
|
||||||
@@ -6241,7 +6241,7 @@
|
|||||||
* arch/arm/src/armv7-a/arm_head.h: Fix some errors in the cache
|
* arch/arm/src/armv7-a/arm_head.h: Fix some errors in the cache
|
||||||
invalidation logic (only seem to matter for Cortex-A8) (21-3-12-19).
|
invalidation logic (only seem to matter for Cortex-A8) (21-3-12-19).
|
||||||
* Kconfig and all Make.defs files: Add CONFIG_DEBUG_NOOPT. Now
|
* Kconfig and all Make.defs files: Add CONFIG_DEBUG_NOOPT. Now
|
||||||
you can indepenently enable/disable debug symbols and optimization
|
you can independently enable/disable debug symbols and optimization
|
||||||
(2013-12-20).
|
(2013-12-20).
|
||||||
* configs/README.txt and Documentation/NuttxPortingGuide.html:
|
* configs/README.txt and Documentation/NuttxPortingGuide.html:
|
||||||
Remove documentation of NuttX configuration variables. Since
|
Remove documentation of NuttX configuration variables. Since
|
||||||
@@ -6261,7 +6261,7 @@
|
|||||||
* configs/stm3210e-eval/buttons: Converted to use kconfig-frontends
|
* configs/stm3210e-eval/buttons: Converted to use kconfig-frontends
|
||||||
tools (untested) (2013-12-22).
|
tools (untested) (2013-12-22).
|
||||||
* configs/Kconfig, configs/viewtool-stm32f107/include/board-stm32f103vct6.h,
|
* configs/Kconfig, configs/viewtool-stm32f107/include/board-stm32f103vct6.h,
|
||||||
and /board-stm32f107vct6.h: The viewtools board can now be configured
|
and /board-stm32f107vct6.h: The viewtool board can now be configured
|
||||||
to support either the STM32F103VCT6 or the STM32F107VCT6 (2013-12-22).
|
to support either the STM32F103VCT6 or the STM32F107VCT6 (2013-12-22).
|
||||||
* configs/Kconfig, README.txt, viewtool-stm32f107/highpri, Kconfig,
|
* configs/Kconfig, README.txt, viewtool-stm32f107/highpri, Kconfig,
|
||||||
README.txt, and src/stm32_highpri.c: This is the initial framework
|
README.txt, and src/stm32_highpri.c: This is the initial framework
|
||||||
@@ -6280,7 +6280,7 @@
|
|||||||
and the name of the common vector handling logic so that the MCU-
|
and the name of the common vector handling logic so that the MCU-
|
||||||
independent logic and work with these (2013-12-23).
|
independent logic and work with these (2013-12-23).
|
||||||
* configs/viewtool-stm32f107/scripts: Move the RAM vector tables to the
|
* configs/viewtool-stm32f107/scripts: Move the RAM vector tables to the
|
||||||
beginning of SRAM. It seems to require this alignament. Also, we
|
beginning of SRAM. It seems to require this alignment. Also, we
|
||||||
don't need different scripts for the CMNVECTOR case now that the vector
|
don't need different scripts for the CMNVECTOR case now that the vector
|
||||||
table has a common name.
|
table has a common name.
|
||||||
* arch/arm/src: armv-7/up_exception.S and xxx/xxx_vectors.S where
|
* arch/arm/src: armv-7/up_exception.S and xxx/xxx_vectors.S where
|
||||||
@@ -6312,14 +6312,14 @@
|
|||||||
pin definition that would prevent building USB for the connectivity and
|
pin definition that would prevent building USB for the connectivity and
|
||||||
performance lines (2013-12-25).
|
performance lines (2013-12-25).
|
||||||
* stm32l15xxx_pinmap.h: Fix a typo in USB pin definitions (2013-12-25).
|
* stm32l15xxx_pinmap.h: Fix a typo in USB pin definitions (2013-12-25).
|
||||||
* configs/viewtools-stm32f107: Fix building of USB for F103 and F107.
|
* configs/viewtool-stm32f107: Fix building of USB for F103 and F107.
|
||||||
F103 has device only; F107 has OTG FS (2013-12-25).
|
F103 has device only; F107 has OTG FS (2013-12-25).
|
||||||
* arch/arm/src/stm32/stm32f10xxx_rcc.c and chip/stm32f10xxx_rcc.h: Add
|
* arch/arm/src/stm32/stm32f10xxx_rcc.c and chip/stm32f10xxx_rcc.h: Add
|
||||||
clocking support for STM32F107 USB OTG FS (which does not work)
|
clocking support for STM32F107 USB OTG FS (which does not work)
|
||||||
(2013-12-26).
|
(2013-12-26).
|
||||||
* configs/viewtool-stm32f107: Updates to USB for F103 and USB OTG FS
|
* configs/viewtool-stm32f107: Updates to USB for F103 and USB OTG FS
|
||||||
for F107 (2013-12-16).
|
for F107 (2013-12-16).
|
||||||
* arch/arm/src/stm32/chip/stm32f3xxxx_pinmap.h: Fix pin definitioni names
|
* arch/arm/src/stm32/chip/stm32f3xxxx_pinmap.h: Fix pin definition names
|
||||||
for SPI2 MOSI and MISO. Noted by Brian Webb (2013-12-27).
|
for SPI2 MOSI and MISO. Noted by Brian Webb (2013-12-27).
|
||||||
* graphics/nxmu, nxsu, and nxglib and libc/nx, nxmu, and nxglib: Massive
|
* graphics/nxmu, nxsu, and nxglib and libc/nx, nxmu, and nxglib: Massive
|
||||||
reshuffling of files with (hopefully) no logic changes. This
|
reshuffling of files with (hopefully) no logic changes. This
|
||||||
@@ -6360,7 +6360,7 @@
|
|||||||
Thomas Grubler (2014-1-2).
|
Thomas Grubler (2014-1-2).
|
||||||
* tools/configure.c and mkdeps.c: Fixes for Windows build issues
|
* tools/configure.c and mkdeps.c: Fixes for Windows build issues
|
||||||
from Max Holtzberg (2014-1-4).
|
from Max Holtzberg (2014-1-4).
|
||||||
* configs/olimex-stm32-p107/nsh/Make.defs: Add native Windoes build
|
* configs/olimex-stm32-p107/nsh/Make.defs: Add native Windows build
|
||||||
support for the Olimex STM32 P107. From Max Holtzberg (2014-1-4).
|
support for the Olimex STM32 P107. From Max Holtzberg (2014-1-4).
|
||||||
* Makefile.win: Changes for native Windows build: fix creation of
|
* Makefile.win: Changes for native Windows build: fix creation of
|
||||||
a .version file if one does not exist. Make sure that the APPDIR
|
a .version file if one does not exist. Make sure that the APPDIR
|
||||||
@@ -6431,7 +6431,7 @@
|
|||||||
* All of Jason Jiang's TCP write buffering logic is checked in.
|
* All of Jason Jiang's TCP write buffering logic is checked in.
|
||||||
Unfortunately, it does not yet work (2013-1-14).
|
Unfortunately, it does not yet work (2013-1-14).
|
||||||
* configs/px4fmu-v2_upstream: Configuration for testing simple
|
* configs/px4fmu-v2_upstream: Configuration for testing simple
|
||||||
configurations on the the PX4FMU v2. This version is incomplete
|
configurations on the PX4FMU v2. This version is incomplete
|
||||||
for the PX4 application and is not a replacement for the version
|
for the PX4 application and is not a replacement for the version
|
||||||
in the PX4 GIT repository.
|
in the PX4 GIT repository.
|
||||||
* fs/fat/fs_fat32.c: A correction to FAT cluster allocation from
|
* fs/fat/fs_fat32.c: A correction to FAT cluster allocation from
|
||||||
@@ -6440,7 +6440,7 @@
|
|||||||
then the socket-related write buffering information must copied
|
then the socket-related write buffering information must copied
|
||||||
with the other cloned socket data (2014-1-14).
|
with the other cloned socket data (2014-1-14).
|
||||||
* net/net_close.c: If CONFIG_NET_TCP_WRITE_BUFFERS is selected,
|
* net/net_close.c: If CONFIG_NET_TCP_WRITE_BUFFERS is selected,
|
||||||
then it is necessary to free the write buffere callback structure
|
then it is necessary to free the write buffer callback structure
|
||||||
when the socket is closed (2014-1-14).
|
when the socket is closed (2014-1-14).
|
||||||
* fs/fat/fs_fat32.c: Fix some root directory logic that was
|
* fs/fat/fs_fat32.c: Fix some root directory logic that was
|
||||||
conditionally done only for FAT 32. Apparently this needs to
|
conditionally done only for FAT 32. Apparently this needs to
|
||||||
@@ -6450,7 +6450,7 @@
|
|||||||
implementations of up_maskack_irq() for all Cortex-M architectures: Do
|
implementations of up_maskack_irq() for all Cortex-M architectures: Do
|
||||||
not disable and enable the IRQ on each interrupt. Because (1)
|
not disable and enable the IRQ on each interrupt. Because (1)
|
||||||
interrupts are already disabled on interrupt entry, (2) this
|
interrupts are already disabled on interrupt entry, (2) this
|
||||||
interferes with controlling the IRQ interrrupt setting from interrupt
|
interferes with controlling the IRQ interrupt setting from interrupt
|
||||||
handlers, and (3) up_disable_irq() does not work anyway so that this
|
handlers, and (3) up_disable_irq() does not work anyway so that this
|
||||||
has never done anything (2014-1-15).
|
has never done anything (2014-1-15).
|
||||||
* All implementations of up_disable_irq() for all Cortex-M3 and M4
|
* All implementations of up_disable_irq() for all Cortex-M3 and M4
|
||||||
@@ -6461,7 +6461,7 @@
|
|||||||
not work; writing a '0' to the ISER register has no effect. That
|
not work; writing a '0' to the ISER register has no effect. That
|
||||||
means that up_disable_irq() was doing nothing! It turns out that that
|
means that up_disable_irq() was doing nothing! It turns out that that
|
||||||
is not really important because up_disable_irq() is not really used
|
is not really important because up_disable_irq() is not really used
|
||||||
for that purpose. But some spurions STM32 ADC interrupts have been
|
for that purpose. But some spurious STM32 ADC interrupts have been
|
||||||
reported to me and this turned out to be the cause in that case. My
|
reported to me and this turned out to be the cause in that case. My
|
||||||
concern now that up_disable_irq() works is that there may now be
|
concern now that up_disable_irq() works is that there may now be
|
||||||
unmasked bugs that leave devices in the disabled state? Thanks to
|
unmasked bugs that leave devices in the disabled state? Thanks to
|
||||||
@@ -6478,7 +6478,7 @@
|
|||||||
source the Kconfig file from the custom board directory (2014-1-16).
|
source the Kconfig file from the custom board directory (2014-1-16).
|
||||||
* Makefile.unix, Makefile.win, and configs/Kconfig: After thinking a
|
* Makefile.unix, Makefile.win, and configs/Kconfig: After thinking a
|
||||||
little harder, I re-implemented the backed-out custom configuration
|
little harder, I re-implemented the backed-out custom configuration
|
||||||
feature. The new version does not have bad side-effect (1) (but stil
|
feature. The new version does not have bad side-effect (1) (but still
|
||||||
has bad side-effect (2)) (2014-1-16).
|
has bad side-effect (2)) (2014-1-16).
|
||||||
* arch/x86/Kconfig and configs/qemu-i486/nsh/Make.defs and
|
* arch/x86/Kconfig and configs/qemu-i486/nsh/Make.defs and
|
||||||
ostest/Make.defs: Add a configuration option to select the -m32
|
ostest/Make.defs: Add a configuration option to select the -m32
|
||||||
@@ -6486,8 +6486,8 @@
|
|||||||
compiler (2014-1-18).
|
compiler (2014-1-18).
|
||||||
* include/ctype.h: Typo in macro name: iscntrl, not iscontrol (2104-1-17)
|
* include/ctype.h: Typo in macro name: iscntrl, not iscontrol (2104-1-17)
|
||||||
* libc/unistd/lib_getopt.c: If there are no arguments (argc == 1), then
|
* libc/unistd/lib_getopt.c: If there are no arguments (argc == 1), then
|
||||||
getopt() make like the optind variable in an undefined state (2014-1-20).
|
getopt() will leave the optind variable in an undefined state (2014-1-20).
|
||||||
* configs/olimex-stm32-p107: Failes to build is SPI3 for UEXT is not
|
* configs/olimex-stm32-p107: Fails to build if SPI3 for UEXT is not
|
||||||
remapped. From Max Holtzberg (2014-1-21).
|
remapped. From Max Holtzberg (2014-1-21).
|
||||||
* Several network related files: Changes from Max Holtzberg to improve
|
* Several network related files: Changes from Max Holtzberg to improve
|
||||||
how network status is reported. New controls to manage carrier
|
how network status is reported. New controls to manage carrier
|
||||||
@@ -6501,7 +6501,7 @@
|
|||||||
* /arch/arm/src/Makefile: dependency directory list is now computed
|
* /arch/arm/src/Makefile: dependency directory list is now computed
|
||||||
from the VPATH. From Richard Cochran (2014-1-23).
|
from the VPATH. From Richard Cochran (2014-1-23).
|
||||||
* arch/arm/src/efm32 and include/efm32: Basic support for the EFM3
|
* arch/arm/src/efm32 and include/efm32: Basic support for the EFM3
|
||||||
processor family from Richarc Cochran (2014-1-23).
|
processor family from Richard Cochran (2014-1-23).
|
||||||
* configs/efm32-dk3650: This is Energy Micro's development kit for
|
* configs/efm32-dk3650: This is Energy Micro's development kit for
|
||||||
the Leopard Gecko MCU, which is an ARM Cortex-M3 device. From Richard
|
the Leopard Gecko MCU, which is an ARM Cortex-M3 device. From Richard
|
||||||
Cochran (2014-1-23).
|
Cochran (2014-1-23).
|
||||||
@@ -6533,3 +6533,5 @@
|
|||||||
original, efficient logic violated the ARM C ABI. It was okay when
|
original, efficient logic violated the ARM C ABI. It was okay when
|
||||||
called from boot logic, but not when called from C logic. This fixes
|
called from boot logic, but not when called from C logic. This fixes
|
||||||
bugginess reported on 2014-1-28. (2014-1-29).
|
bugginess reported on 2014-1-28. (2014-1-29).
|
||||||
|
|
||||||
|
6.34 2014-xx-xx Gregory Nutt <gnutt@nuttx.org>
|
||||||
|
|||||||
+307
@@ -5519,3 +5519,310 @@ Bugfixes (see the ChangeLog for details). Some of these are very important:
|
|||||||
correctly.
|
correctly.
|
||||||
- apps/system/composite/composite_main.c: The wrong handle was getting
|
- apps/system/composite/composite_main.c: The wrong handle was getting
|
||||||
nullified. From David Sidrane.
|
nullified. From David Sidrane.
|
||||||
|
|
||||||
|
NuttX-6.32
|
||||||
|
----------
|
||||||
|
|
||||||
|
The 100th release of NuttX, Version 6.33, was made on January 30, 2014,
|
||||||
|
and is available for download from the SourceForge website. Note
|
||||||
|
that release consists of two tarballs: nuttx-6.33.tar.gz and
|
||||||
|
apps-6.33.tar.gz. Both may be needed (see the top-level nuttx/README.txt
|
||||||
|
file for build information).
|
||||||
|
|
||||||
|
Additional new features and extended functionality:
|
||||||
|
|
||||||
|
* Core OS Interfaces
|
||||||
|
|
||||||
|
- nanosleep() added. sleep() and usleep() are not longer core OS
|
||||||
|
interfaces. These have been moved into the library and re-implemented
|
||||||
|
as simple wrappers around nanosleep().
|
||||||
|
|
||||||
|
* File Systems
|
||||||
|
|
||||||
|
- procfs restructure by Ken Pettit. Added files for MTD status.
|
||||||
|
- procfs extended to show uptime and task group status.
|
||||||
|
- procfs now shows stack information.
|
||||||
|
|
||||||
|
* Networking
|
||||||
|
|
||||||
|
- Add support for the SO_LINGER socket option. Extended from logic
|
||||||
|
provided by Jason Jiang. Enabled with CONFIG_NET_SOLINGER.
|
||||||
|
- TCP write buffering support added. From Jason Jiang.
|
||||||
|
- Changes from Max Holtzberg to improve how network status is
|
||||||
|
reported. New controls to manage carrier detect.
|
||||||
|
|
||||||
|
* Graphics
|
||||||
|
|
||||||
|
- Massive reshuffling of files with little or no logic changes. This
|
||||||
|
reshuffling was necessary to build graphics applications with the
|
||||||
|
kernel builds where the graphics application lie in user space and
|
||||||
|
the core graphic server likes in kernel space. Moved much logic out
|
||||||
|
of nuttx/graphics to a new user library, libnx.
|
||||||
|
|
||||||
|
* Cortex-A5/A8/A9
|
||||||
|
|
||||||
|
- Existing Cortex-A5 support updated to include Cortex-A8/9.
|
||||||
|
- Add the syscall.h header file needed for the Cortex-A architecture.
|
||||||
|
- Start-up logic now supports execution from FLASH with .data and
|
||||||
|
.bss in SDRAM. This was not possible prior to this because .bss
|
||||||
|
and .data were initialized before SDRAM was configured.
|
||||||
|
|
||||||
|
* Allwinner A10:
|
||||||
|
|
||||||
|
- Basic support for the Allwinner (A10 Cortex-A8) is in place.
|
||||||
|
|
||||||
|
* Allwinner A10 boards
|
||||||
|
|
||||||
|
- Support for the pcDuino v1 board has been added. This support
|
||||||
|
is not yet very mature and still lacks many drivers. It is a
|
||||||
|
good starting point, however, if anyone wants to develop A10
|
||||||
|
support.
|
||||||
|
|
||||||
|
* Atmel SAMA5D3X
|
||||||
|
|
||||||
|
- Start-up logic now supports execution from FLASH with .data and
|
||||||
|
.bss in SDRAM. This was not possible prior to this because .bss
|
||||||
|
and .data were initialized before SDRAM was configured.
|
||||||
|
|
||||||
|
* Atmel SAMA5D3X Boards
|
||||||
|
|
||||||
|
- Partial logic in place to support the OV2640 camera. Still needs
|
||||||
|
quite a bit of additional logic to be useful.
|
||||||
|
|
||||||
|
* ARMv7-M
|
||||||
|
|
||||||
|
- Add support for high priority, nested interrupts. This change
|
||||||
|
effects not only core ARMv-7M logic, but all ARMv7-M MCU logic:
|
||||||
|
LM3S, LM4F, LPC17xx, LPC43xx, SAM3, SAM4, and STM32. See
|
||||||
|
http://www.nuttx.org/doku.php?id=wiki:nxinternal:highperfints
|
||||||
|
|
||||||
|
* STMicro STM32
|
||||||
|
|
||||||
|
- Add clocking support for STM32F107 USB OTG FS (which does not yet
|
||||||
|
work)
|
||||||
|
- Single-wire UART support for the F1 series from Thomas Grubler.
|
||||||
|
|
||||||
|
* STMicro STM32 Boards
|
||||||
|
|
||||||
|
- The Viewtool board can now be configured to support either the
|
||||||
|
STM32F103VCT6 or the STM32F107VCT6.
|
||||||
|
- The Viewtool STM32F107VCT6 now supports networking with the
|
||||||
|
DP83848C module installed.
|
||||||
|
- Add support for Viewtool SSD1289-based LCD on the Viewtool
|
||||||
|
STM32F103VCT6 board (untested)
|
||||||
|
- Add support for the XPT2046 touchscreen controller on the Viewtool
|
||||||
|
LCD module connected to the Viewtool STM32F103 board.
|
||||||
|
- Added kernel mode build support for the STM3240G-EVAL board. Added
|
||||||
|
a new kernel mode NxWM build configuration
|
||||||
|
- C++ static constructor logic from the nuttx/configs/stm3240g-eval/
|
||||||
|
directory to the apps/platform/stm3240g-eval/up_cxxinitialize.c
|
||||||
|
where is belongs so that it is available in user-space in the kernel
|
||||||
|
mode build.
|
||||||
|
- Add native Windows build support for the Olimex STM32 P107. From
|
||||||
|
Max Holtzberg
|
||||||
|
- Support for the STM32VL-Discovery board. Contributed by Alan
|
||||||
|
Carvalho de Assis
|
||||||
|
- Added a configuration for testing simple configurations on the
|
||||||
|
PX4FMU v2.
|
||||||
|
|
||||||
|
* ZiLOG ZNEO Boards
|
||||||
|
|
||||||
|
- Add an NSH configuration for the Z16F2800100ZCOG ZNEO board.
|
||||||
|
- Added support for the Toyaga 16Z ZNEO board. The 16Z board is
|
||||||
|
based on the ZiLOG ZNEOZ16F2811AL20EG part. See
|
||||||
|
https://github.com/toyaga/16z for further information
|
||||||
|
- Developed a patch to work around a compiler error that is revealed
|
||||||
|
when building the NSH configuration.
|
||||||
|
|
||||||
|
* Architecture-Independent Drivers
|
||||||
|
|
||||||
|
- OV2640 Camera Driver.
|
||||||
|
- Support for the Sharp Memory LCD from Librae.
|
||||||
|
|
||||||
|
* Library
|
||||||
|
|
||||||
|
- Pattern matching logic extended to handle set of characters and
|
||||||
|
ranges of character values. From Ken Pettit.
|
||||||
|
- sleep() and usleep() move library. These are not longer core OS
|
||||||
|
interfaces; they are simple wrappers for the nanosleep().
|
||||||
|
- Add an implementation of gets_s().
|
||||||
|
- Extend fopen() to include support for C11 exclusive open ("x")
|
||||||
|
open mode.
|
||||||
|
- Add an implementation of stpcpy()
|
||||||
|
- strtol(), strtoll, strtoul(), strtoull(), and strtod() from
|
||||||
|
libc/string to libc/stdlib where they belong.
|
||||||
|
|
||||||
|
* Header Files
|
||||||
|
|
||||||
|
- Add rsize_t to include/sys/types.h
|
||||||
|
- Add the C11 thread.h header file
|
||||||
|
|
||||||
|
* Configuration/Build System
|
||||||
|
|
||||||
|
- Top level Makefile now supports qconfig and/or gconfig targets that
|
||||||
|
may be used for configuration. These may be used if you build
|
||||||
|
kconfig-frontends with support for kconfig-qconf and/or
|
||||||
|
kconfig-gconf.
|
||||||
|
- Add CONFIG_DEBUG_NOOPT. Now you can independently enable/disable
|
||||||
|
debug symbols and optimization
|
||||||
|
- File system related header files moved to include/nuttx/fs
|
||||||
|
- Video related header files moved to include/nuttx/video
|
||||||
|
- Changes for native Windows build: fix creation of a .version file
|
||||||
|
if one does not exist. Make sure that the APPDIR environment
|
||||||
|
variable is set before configuring. From Max Holtzberg.
|
||||||
|
- Board configuration sub-directory can now be specified. The default
|
||||||
|
need not be used. This is only useful when CONFIG_ARCH_BOARD_CUSTOM
|
||||||
|
is selected and there is no meaningful default sub-directory.
|
||||||
|
- Many functions renamed to better conform with the naming standard:
|
||||||
|
up_buttoninit() renamed to board_button_initialize(), up_buttons()
|
||||||
|
renamed to board_buttons(), up_irqbutton() renamed to
|
||||||
|
board_button_irq(), up_ledinit() renamed to board_led_intialize(),
|
||||||
|
up_ledon() renamed to board_led_on(), and up_ledoff() renamed to
|
||||||
|
board_led_off(). All prototypes removed from board.h header files.
|
||||||
|
Now ONLY prototypes in include/nuttx/arch.h.
|
||||||
|
|
||||||
|
* Applications
|
||||||
|
|
||||||
|
- NSH: Refactor. Separate NSH command handling and command execution
|
||||||
|
from NSH line parsing.
|
||||||
|
- NSH: Will now support multiple commands on a command line, each
|
||||||
|
separated with a semi-colon.
|
||||||
|
- NSH: Add support of commands enclosed in back quotes as command
|
||||||
|
arguments.
|
||||||
|
- NSH: Can now handle arguments that are concatenations of constant
|
||||||
|
strings, command return data, application return data, and
|
||||||
|
environment variables.
|
||||||
|
- NSH: Add true and false commands.
|
||||||
|
- NSH: Add support for while-do-done and until-do-done loops. These
|
||||||
|
only work when executing a script file because they depend on the
|
||||||
|
ability to seek in the file to implement the looping behaviors.
|
||||||
|
Can be conditionally compiled out to reduce footprint.
|
||||||
|
- NSH: Loosen up if-then-else-fi syntax to allow a command to be on
|
||||||
|
the same line as the then or else tokens like:
|
||||||
|
"if true; then echo true; else echo false; fi". More like bash.
|
||||||
|
- NSH: Add a break command that can be executed with a loop to
|
||||||
|
terminate the loop immediately.
|
||||||
|
|
||||||
|
- system/inifile: A simple .INI file parser.
|
||||||
|
- system/vi: Add support for a tiny, VI work-alike editor. This is
|
||||||
|
a minimal full screen editor that words with a terminal emulator
|
||||||
|
that using VT100 commands.
|
||||||
|
|
||||||
|
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 53% of the configurations have been converted
|
||||||
|
to use the kconfig-frontends tools.
|
||||||
|
|
||||||
|
Bugfixes (see the ChangeLog for details). Some of these are very important:
|
||||||
|
|
||||||
|
* Core OS
|
||||||
|
|
||||||
|
- Added missing sem_timedwait() system call.
|
||||||
|
|
||||||
|
* Networking
|
||||||
|
|
||||||
|
- Prevent tcp_connect callback from being double freed. From Max
|
||||||
|
Holtzberg
|
||||||
|
- uiplib: Support new definitions and state passing for network
|
||||||
|
device status. From Maz Holtzberg.
|
||||||
|
|
||||||
|
* File Systems
|
||||||
|
|
||||||
|
- FAT: (1) A correction to FAT cluster allocation, and (2) Fix to some
|
||||||
|
root directory logic that was conditionally done only for FAT 32.
|
||||||
|
Apparently this needs to done for all FAT types. Both from Andrew
|
||||||
|
"Tridge" Tridgell via Lorenz Meier.
|
||||||
|
|
||||||
|
* Binary Formats
|
||||||
|
|
||||||
|
- Fix a small memory leak when attempting to load a program from a file.
|
||||||
|
|
||||||
|
* Cortex-A8/9
|
||||||
|
|
||||||
|
- Fix some errors in the cache invalidation logic (only seem to matter
|
||||||
|
for Cortex-A8).
|
||||||
|
- Add more nop's after enabling the MMU. The cortex-a8 seems to need
|
||||||
|
these
|
||||||
|
|
||||||
|
* Graphics
|
||||||
|
|
||||||
|
- Fix a typo that caused a compilation error when
|
||||||
|
CONFIG_NXCONSOLE_BPP < 8. From Librae
|
||||||
|
|
||||||
|
* ARMv7-M
|
||||||
|
|
||||||
|
- Correct alignment of RAM vector table.
|
||||||
|
- Interrupt handling: Do not disable and enable the IRQ on each
|
||||||
|
entry, (2) this interferes with controlling the IRQ interrupt
|
||||||
|
setting from interrupt handlers, and (3) up_disable_irq() does
|
||||||
|
not work anyway so that this has never done anything.
|
||||||
|
- Fix all implementations of up_disable_irq() for all Cortex-M3 and
|
||||||
|
M4 architectures: To enable an interrupt on the Cortex-M3/4 CPU,
|
||||||
|
you need to set a bit in the ISER register. To disable the
|
||||||
|
interrupt, you need to set a bit in the ICER register. Existing
|
||||||
|
logic was trying to disable interrupts by clearing the bit in the
|
||||||
|
ISER register. That will not work; writing a '0' to the ISER
|
||||||
|
register has no effect. That means that up_disable_irq() was
|
||||||
|
doing nothing! It turns out that that is not really important
|
||||||
|
because up_disable_irq() is not really used for that purpose. But
|
||||||
|
some spurions STM32 ADC interrupts have been reported to me and this
|
||||||
|
turned out to be the cause in that case. Thanks to Manuel Stühn for
|
||||||
|
the tip.
|
||||||
|
|
||||||
|
* STMicro STM32
|
||||||
|
|
||||||
|
- Fix configuration and pin definitions that would prevent building
|
||||||
|
USB for the connectivity and performance lines.
|
||||||
|
- STM32L15xx: Fix a typo in USB pin definitions
|
||||||
|
- Fix pin definition names for SPI2 MOSI and MISO. Noted by Brian Webb
|
||||||
|
- Various fixes for STM32F103ZE SPI3 pin mapping definitions. From
|
||||||
|
Steve Redler IV
|
||||||
|
|
||||||
|
* STMicro STM32 Boards
|
||||||
|
|
||||||
|
- Olimex STM32-P107: Failed to build if SPI3 for UEXT is not remapped.
|
||||||
|
From Max Holtzberg
|
||||||
|
|
||||||
|
* x86 Boards
|
||||||
|
|
||||||
|
- Add a configuration option to select the -m32 compiler option when
|
||||||
|
building for a 32-bit target on a native 64-bit compiler. So far,
|
||||||
|
only used for the qemu/i486 configuration.
|
||||||
|
- Patch from Matt Campbell to fix 'Error: .size expression for idle_stack
|
||||||
|
does not evaluate to a constant".
|
||||||
|
|
||||||
|
* Library
|
||||||
|
|
||||||
|
- strftime(): Needs null termination on the generated string. From
|
||||||
|
Max Holtzberg.
|
||||||
|
- Typo in ctype.h macro name: iscntrl(), not iscontrol().
|
||||||
|
- If there are no arguments (argc == 1), then getopt() will leave the
|
||||||
|
optind variable in an undefined state (2014-1-20).
|
||||||
|
- ARMv7-M memcpy(): Assembler changes with the gcc-47 distribution
|
||||||
|
from ARM mean that we need to be explicit about branch sizes; one
|
||||||
|
or more of the wide branch opcodes results in bad table branching.
|
||||||
|
From Mike Smith.
|
||||||
|
|
||||||
|
* Configuration/Build System
|
||||||
|
|
||||||
|
- Fixes for some tools/ for Windows build issues from Max Holtzberg.
|
||||||
|
- Config.mk: 'cypath' must be called if we are using a Windows native
|
||||||
|
toolchain with the Cygwin 'make' to convert paths to proper
|
||||||
|
Windows paths. From Richard Cochran.
|
||||||
|
- ARM Makefile: Dependency directory list is now computed from the
|
||||||
|
VPATH. From Richard Cochran.
|
||||||
|
- builtin/Makefile: Fixes for native Windows build from Max Holtzberg.
|
||||||
|
- Refactor some configuration dependencies: NSH networking features
|
||||||
|
should depend on netutil selections; netutil selections, in turn,
|
||||||
|
should depend on networking selections.
|
||||||
|
|
||||||
|
* Applications
|
||||||
|
|
||||||
|
- NSH: Modified the df -h logic to eliminate truncating numbers in
|
||||||
|
conversion (like 7900 -> 7M). From Ken Pettit.
|
||||||
|
|||||||
Reference in New Issue
Block a user