diff --git a/ChangeLog b/ChangeLog index dc3b3c7321..45b1b4af3c 100755 --- a/ChangeLog +++ b/ChangeLog @@ -11004,7 +11004,7 @@ sets the queued indication and the logic that does the actual queuing must be atomic (2015-09-20). -7.13 2015-xx-xx Gregory Nutt +7.13 2015-12-05 Gregory Nutt * libc/stdlib/lib_bsearch.c and include/stdlib.h: Add the bsearch() function from NetBSD (2015-10-02). @@ -11020,7 +11020,7 @@ * stm32 F4: Fix some TIM12 pin mappings. From Max Kriegleder (2015-10-9). * fs/tmpfs: TMPFS file system is code complete and bascially functional - although it has not been heavilay tested (2015-10-9). + although it has not been heavily tested (2015-10-9). * drivers/input/button_upper.c and include/nuttx/input/buttons.h: Add a driver to support application access to board buttons (2015-10-12). * drivers/input/button_lower.c: Add a generic lower half button driver. @@ -11097,7 +11097,7 @@ include/nuttx/wireless/cc3000/security.h to include/nuttx/crypto/aes.h (2015-11-16). * drivers/mtd/at24xx.c: Add support for multiple AT24xx EEPROM parts, - each with unique I2C addresses, but otherwise idential (2015-11-17). + each with unique I2C addresses, but otherwise identical (2015-11-17). * drivers/timers/ds3231.c: Add support for the DS3231 I2C RTC. Untested on the initial commit (2015-11-17). * arch/arm/src/stm32/stm32_tim_lowerhalf.c: Add a compatible lower-half @@ -11122,7 +11122,7 @@ * drivers/mtd/smart.c: Fixed SmartFS wear level error that occurs when the logical sector size is too small to save all wear level status bytes in a single sector. Logical sectors 1 and 2 were simply not - being allocated and then the read_sector and write_sector routinesi + being allocated and then the read_sector and write_sector routines were failing. From Ken Pettit (2015-11-18). * drivers/timers/ds3231.c: Untested support for DS1302 and DS3232. Also definitions for the DS3234, but that is an unsupported SPI RTC @@ -11153,9 +11153,9 @@ RPortrait, and RLandscript should work correly now. They were displayed mirrored. From Marco Krahl (2015-11-25). * drivers/mtd/mtd/mtd_procfs/c and include/nuttx/mtd/mtd.h: Add an - interface to un-regiser an MTD procfs entry. From Ken Pettit + interface to un-register an MTD procfs entry. From Ken Pettit (2015-11-25). - * drivers/mtd/filemtd.c: New new MTD conversion layer that will + * drivers/mtd/filemtd.c: A new MTD conversion layer that will convert a regular file (or driver file) to an MTD device. This is useful for testing on the simulation using the hostfs. From Ken Pettit (2015-11-25). @@ -11164,7 +11164,7 @@ Rather, these functions are now available as IOCTL commands to the loop driver (2015-11-25). * include/nuttx/net/netdev.h and several Ethernet drivers in arch/: - Most network drivers to not support statistics. Those that do only + Most network drivers do not support statistics. Those that do only support them when DEBUG is enabled. Each driver collects an architecture specific set of statistics and there is no mechanism in place to view those statistics. Thus, the driver feature was mostly @@ -11206,5 +11206,7 @@ SAMV7 (2015-12-03). * arch/arm/src/samv7: Add PCK6 as an optional source for the timer/ counter clock (2015-12-04). - * configs/samv7-xult/: If Tickless mode is selected then enable PCK6i - as a timer/counter clock source + * configs/samv7-xult/: If Tickless mode is selected then enable PCK6 + as a timer/counter clock source (2015-12-04). + +7.14 2015-xx-xx Gregory Nutt diff --git a/Documentation b/Documentation index 7d0cbe27b2..c344ebc453 160000 --- a/Documentation +++ b/Documentation @@ -1 +1 @@ -Subproject commit 7d0cbe27b2a41690f6c16dfda4ba03fdfa71726f +Subproject commit c344ebc4538d51ff0acc22122e42dbd8614f261c diff --git a/ReleaseNotes b/ReleaseNotes index 60634816ac..b68cdb7fa4 100644 --- a/ReleaseNotes +++ b/ReleaseNotes @@ -9913,3 +9913,281 @@ detailed bugfix information): - Macros PR_BEGIN_EXTERN_C and PR_END_EXTERN_C were not defined in all contexts. Replace with explicit expansion in all cases. From Stefan Kolb. + +NuttX-7.13 Release Notes +------------------------ + +The 113th release of NuttX, Version 7.13, was made on December 5, 2015, +and is available for download from the Bitbucket.org website. Note +that release consists of two tarballs: nuttx-7.13.tar.gz and +apps-7.13.tar.gz. These are available from: + + https://bitbucket.org/patacongo/nuttx/downloads + https://bitbucket.org/nuttx/apps/downloads + +Both may be needed (see the top-level nuttx/README.txt file for build +information). + +Additional new features and extended functionality: + + * Core OS: + + - External RTC: Added OS support for external RTC chips. + - boardctl(): Add a command to the boardctl() interface to obtain a + board unique ID. + + * File Systems: + + - TMPFS: Add support for a new TMPFS, RAM file system. The TMPFS + file system does not require any significant amount of memory + itself. It will grow dynamically as files are added and shrink back + when files are deleted. A very low overhead way to retain temporary + files. + - VFS: The VFS was extended to support standard file operations on + block drivers (open, close, read, write, etc.). The open() interface + accomplishes this by creating a temporary characer driver to mediate + the character oriented accesses to tje block driver. + - HOSTFS: Added a HOSTFS file system for use with the simulator. The + HOSTFS file system mounts in the simulated Nuttx context by provides + proxied access to the file system on the host PC. This is useful for + providing file system content and nonvolatile storage of files in the + simulation environment. From Ken Pettit. + - MTD/PROCFS: Add an interface to un-register an MTD procfs entry. + From Ken Pettit. + - filemtd: A new MTD conversion layer that will convert a regular file + (or driver file) to an MTD device. This is useful for testing on the + simulation using the HOSTFS. From Ken Pettit. + - PROCFS: Extended to include networking entries in the procfs. Device + status, device statistics, and network statistics are now available + from the PROCFS. + - PROCFS: The PROCFS file system can now be configured so that it + supports runtime registration of PROCFS entries with + CONFIG_FS_PROCFS_REGISTER=y. + + * Graphics/Graphic Drivers: + + - ST7565 Driver: Extend to include support for the ERC12864-3. From + Pierre-noel Bouteville. + + * Common Device Drivers: + + - User buttons: Added a character driver to support application access + to board buttons. Supports notification of button activity via + signals. + - User LEDs: Added a character driver to support application access + to on-board LEDs. + - Zero Cross: Added a Zero Cross device driver support. From Alan + Carvalho de Assis. + - MAX6675: Added support to Thermocouple-to-Digital converter MAX6675. + From Alan Carvalho de Assis. + - BCH: Block-to-character (BCH) driver should forward ioctl() calls + to the contained block driver. + - S25FL1xx: Added a S25FL1xx QuadSPI FLASH driver. + - On-Chip FLASH: Added an upper half MTD device that can use the + interfaces defined in included/nuttx/progmem.h to provide a + standard MTD driver. + - Serial: Implemented high level DMA infrastructure for serial + devices. From Max Neklyudov. + - AT24XX: Add support for multiple AT24xx EEPROM parts, each with + unique I2C addresses, but otherwise identical. + - External RTC: Added drivers for external I2C RTC chips: DS3102, + DS1307, DS3231, DS3232, and NXP PCF85263. + - W25: Added support for byte write mode to the W25 FLASH driver. From + Ken Pettit. + - dev/loop: Added a loop character device. losetup() and loteardown() + should not be called directory from applications. Rather, these + functions are now available as IOCTL commands to the loop driver. + - dev/smart: Added support for a /dev/smart loop device. From Ken + Pettit. + + * Networking: + + - Driver Statistics: Most network drivers do not support statistics. + Those that do only supported them when DEBUG is enabled. Each + driver collected an architecture specific set of statistics and + there was no common mechanism to view those statistics. Thus, + the driver feature was mostly useless. This release standardizes + the driver statistics and puts the definition in the common network + device structure defined in netdev.h where they can be accessed by + network applications. All Ethernet drivers that collect statistics + have been adapted to use these common statistics. + + * Simulation Platform: + + - W25 FLASH: Added support for W25 FLASH simulation. From Ken Pettit. + - HOSTFS: Added support for the HOSTFS file system (see "File Systems", + above). + + * Atmel SAMV7: + + - SAME70: Added support for the SAME70 family of chips. + - Tickless: SAMV7 now supports the tickless mode of operation. + + * Atmel SAMV7 Drivers: + + - MPU: Added MPU and protected build support. + - QSPI: Added a QuadSPI FLASH driver. This driver operates in the + memory-mapped, Serial Memory Mode (SMM). + - FLASH: Added support to write on-chip FLASH. + - Timer/Counter: TC driver ported to SAMV7 from the SAMA5. Free-running + and one-short timer logic also ported. + - PCK: Brought programmable clock (PCK) logic from SAMA5 into SAMV7. + - Timer/Counter: Support PCK6 as an optional source for the timer/ + counter clock. + + * Atmel SAMV7 Boards: + + - SAME70-Xplained: Add NSH and networking configurations for the + SAME70 Xplained board. Includes verified support for serial console, + LEDs, buttons, SDRAM, HSMCI SD card, and networking. + - SAMV7-XULT and SAME70-Xplained: If Tickless mode is selected then + enable PCK6 as a timer/counter clock source + + * STMicro STM32: + + - CCM PROCFS: Is no longer a part of the 'base' procfs entries and can + now only be supported via run time registration with + CONFIG_FS_PROCFS_REGISTER=y. + + * STMicro STM32 Drivers: + + - Timers: Add a compatible lower-half timer driver for use with the + common timer upper-half driver. From Wail Khemir. + + * STMicro STM32 Boards: + + - STM32F4-Discovery: Add low level support for the Zero Cross driver + for the STM32F4-Discovery. From Alan Carvalho de Assis. + - STM32F4-Discovery: Add board config to support for the MAX6675. From + Alan Carvalho de Assis. + + * C Library/Header Files: + + - bsearch(): Added the bsearch() function from NetBSD. + - freopen(): Added support for freopen(). + - strftime(): Added day-of-week support (when avaialable). + + * Tools: + + - nxstyle: Add crappy style checking tool nxstyle.c. See thee tools/ + README file for more info. + + * Applications: NSH + + - mksmartfs command: Add configuration option to supported multiple + rootdirectories. From Ken Pettit. + - Add support for 'basename' and 'dirname' commands. + - set command: Like bash, NSH set command now strips off any leading + or trailing whitespace. + - mount command: The mount commands now accepts mount options + (currently needed only for the hostfs file system). From Ken + Pettit. + - losetup command: NSH no longer calls losetup() and loteardown + directly. Now it opens /dev/loop and accomplishes these things + using ioctl() calls. + - ifconfig command: If CONFIG_NETDEV_STATISTICS=y, then print the + network driver statistics in the ifconfig. + - ifconfig, ifup, and ifdown: These commands now uses /proc/net/ + to view network device configuration and status and /proc/net/stat + to show network statistics. A consequence of this is that you + cannot view this network information if the procfs is not enabled + and mounted at /proc. + - losmart command: Added a new NSH losmart command. losmart setups + up a loop device for the smart MTD driver similar to losetup but + with different syntax. From Ken Pettit. + - ps command: The 'ps' command now uses /proc// to obtain task + status information. A consequence of this is that you cannot use + the 'ps' command if the procfs is not enabled and mounted at /proc. + + * Applications: apps/system: + + - apps/system/hexed: Port the hexed command line hexadeciamal editor + to Nuttx. See http://apps.venomdev.net/hexed/. + + * Applications: apps/fsutils: + + - apps/fsutils/smartfs: Move into apps/fsutils from kernel, now uses + only open and ioctl. From Ken Pettit. + + * Applications: apps/examples: + + - apps/examples/fstest: Add a generic file system test. This is + essentially the same as examples/smart, but has all of the SmartFS + specific logic ripped out. This was created for testing the new + TMPFS. + - apps/examples/zerocross: Add a Zero Cross application example. From + Alan Carvalho de Assis. + - apps/examples/media: Add a simple test for access of media via a + block driver or MTD driver. + +Bugfixes. Only the most critical bugfixes are listed here (see the +ChangeLog for the complete list of bugfixes and for additional, more +detailed bugfix information): + + * Core OS: + + - Fixed an error in clock_timespec_subtract(). Found by Lok. + - pthreads: CRITICAL BUGFIX: Logic was wiping out the indication that + of the type of a pthread. Hence, it could be confused as a task. + Found because this was causing a crash when /proc/nnn/cmdline was + printed. + + * File System/Block Drivers: + + - SMART MTD: Fix some Smart wear-leveling bugs. Fixed SmartFS wear + level error that occurs when the logical sector size is too small to + save all wear level status bytes in a single sector. Logical + sectors 1 and 2 were simply not being allocated and then the + read_sector and write_sector routines were failing. From Ken + Pettit. + + * Graphics/Graphic Drivers: + + - ILI9432: Fixed errors in orientation. Portrait, RPortrait, and + Landscript should work correly now. They were displayed mirrored. + From Marco Krahl. + + * Common Drivers: + + - CAN: Fix a problem in the CAN upper-half driver that occurs only + for CAN hardware that support a H/W FIFO of outgoing CAN messages. + In this case, there can be a hang condition if both the H/W and + S/W FIFOs are both full. In that case, there may be no event to + awaken the upper half driver. Add a new (conditional) CAN upper + half interface called can_txready() that can be used by the lower + half driver to avoid this hang condition. + - MS58xx: Fix some issues with initialization and with CRC + calculation. From Karim Keddam. + - W25: Fixed W25 FLASH driver page read/write logic. From Ken Pettit. + + * Atmel SAMV7 Drivers: + + - USART1 pin configuration: Reconfigure System I/O when using USART1. + From Frank Benkert. + - MCAN: Added a call to can_txready() to the MCAN driver. + + * STMicro STM32 Drivers: + + - stm32 F4: Fix some TIM12 pin mappings. From Max Kriegleder. + + * STMicro STM32 Boards: + + - STM32F429i-Disco: Calculated partition boundries based on page + block sizes but mtd_partition() is expecting calculations based on + erase block size. From Alan Carvalho de Assis. + + * C Library/Header Files: + + - sys/types.h: When building on a 64-bit machine, the size of size_t + should be 64-bits. In general, I believe that sizeof(size_t) should + be the same as sizeof(uinptr_t). mmsize_t should always be 32-bits + in any event. The last change to stddef has been backed out. With + these changes, the simulator builds without errors or warnings an a + 64-bit machine. + + * Applications: apps/nshlib: + + - The I/O buffer, g_iobuffer, should not be a global buffer. That + will not work in an environment where there are multiple NSH + sessions. The I/O buffer must, instead, be a part part of the + session-specific data defined in nsh_console.h.