13361 lines
767 KiB
Plaintext
Executable File
13361 lines
767 KiB
Plaintext
Executable File
0.1.0 2007-03-09 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Initial Release
|
||
* Support for Linux user mode simulation and TI
|
||
TMS320C5471 (Arm7) provided
|
||
|
||
0.1.1 2007-03-14 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Corrected an error in interrupt level context switching
|
||
for C5471
|
||
* Added fgets() and gets() logic; verified c5471 console read.
|
||
* Corrected error in reading from the C5471 serial port:
|
||
Improper use of semaphore can cause deadlock.
|
||
* Fixed an error in the memory cleanup: The idle task
|
||
cannot take semaphores (because it must always be ready
|
||
to run).
|
||
* Tasks can now accept a configurable maximum number of
|
||
input parameters (argc)
|
||
* _task_init() was divided into separate functions that
|
||
require fewer parameters. This was necessary to keep
|
||
the stack usage down for the 8051/2 (which has only
|
||
256 bytes of stack).
|
||
* Attempts to use C5471 console from interrupt handlers
|
||
can cause errors. Added a special path for this case.
|
||
* Refuse calls to sem_wait and sem_trywait from interrupt
|
||
handlers. This was happening because interrupt handlers
|
||
were calling printf-like functions.
|
||
* Added strtok() and strtok_r()
|
||
* Added a simple shell called nsh (see examples/nsh).
|
||
* Platform support for 8052 is complete but not stable
|
||
when the timer interrupt is enabled. Seems to be an
|
||
issue when SP enters indirect address space.
|
||
* Documentation updates
|
||
|
||
0.1.2 2007-03-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Add dirent.h, opendir(), readdir(), closedir(), etc.
|
||
* Add strerror()
|
||
* Added 'ls' command to nsh
|
||
* Added C5471 watchdog driver
|
||
* Fixed another bug where free() is called from IDLE task.
|
||
Can't do this; the caller must be able to wait for access
|
||
to memory.
|
||
* Fixed bugs associated with debug output:
|
||
Cannot do dbg() in middle of context switch logic.
|
||
because it may require use of semaphores and cause
|
||
additional context switches. lldbg() is safe.
|
||
* Interrupt must be disabled throughout all context switches.
|
||
* Separated C5471 serial driver; a shareable part is
|
||
in drivers/. ; the C5471 specific part is in arch/C5471.
|
||
serial.h defines the interface.
|
||
* Fixed mq_receive() and mq_send(): bad memcpy()
|
||
* Fixed C5471 signal deliver logic: use of dbg() and
|
||
other actions by use signal handler can alter errno.
|
||
need to protect errno during signal handling.
|
||
* Fixed uninitialized variable in filesystem that could
|
||
cause various problems
|
||
* Added a test for roundrobin scheduler.
|
||
|
||
0.2.1 2007-03-22 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Fix error in handing signed decimal in vsprintf().
|
||
* Major restructuring of header files to get closer to
|
||
POSIX compliance.
|
||
* Eliminate compilation warnings that crept into recent check-ins
|
||
* Add kill()
|
||
* Added support for POSIX timers
|
||
* Some Documentation updates
|
||
* Added support for the Neuros OSD / DM320
|
||
|
||
0.2.2 2007-03-26 Gregory Nutt <gnutt@nuttx.org>
|
||
* Created the configs/ directory; separated board configuration
|
||
from processor architecture logic
|
||
* Add memory leak detection test to examples/ostest
|
||
* Corrected memory leak in OS pthread join logic
|
||
* Corrected memory leaks in examples/ostest due to failures
|
||
to join or detach from pthreads.
|
||
* Added pthread_once(), pthread_kill(), pthread_sigmask()
|
||
* Added pthread_barrierattr_*() APIs
|
||
* Added pthread_barrier_init(), pthread_barrier_destroy(), and
|
||
pthread_barrier_wait();
|
||
* Added pthread barrier test
|
||
* Added protection so that errno cannot be modified from
|
||
interrupt handling.
|
||
* sched_setparam(), sched_setscheduler() now correctly set
|
||
errno; pthread_setscheduler() now returns the correct errno.
|
||
* Added pthread_setschedprio().
|
||
* Added directories to hold board-specific header files
|
||
* Added directories to hold board-specific drivers
|
||
|
||
0.2.3 2007-03-29 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* mq_receive and mq_send now return errno's appropriately
|
||
* mq_receive and mq_send are now correctly awakened by signals.
|
||
* Fixed an unmatched sched_lock/unlock pair in task_delete().
|
||
* sched_lock must be called in _exit() because operation of
|
||
task_delete() can cause pending tasks to be merged and a
|
||
context switch to occur.
|
||
* Added mq_timedreceive() and mq_timedsend()
|
||
* signal mask is now inherited by both child tasks and threads.
|
||
* Improved sharebility of stdout among pthreads (only). Nothing
|
||
was broken, but by moving the mutual exclusion logic to a
|
||
higher level, the printf output is more readable.
|
||
* Fixed a bug in file system cleanup: A list was being deleted
|
||
before the buffers contained in the list.
|
||
* Fixed a bug in the wait-for-message-queue-not-empty logic.
|
||
* Added a test of timed mqueue operations; detected and corrected
|
||
some mqueue errors.
|
||
* Identified and corrected a race condition associated with
|
||
pthread_join. In the failure condition, memory was being
|
||
deallocated while still in use.
|
||
|
||
0.2.4 2007-04-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Verified c5471 build under Cygwin on WinXP
|
||
* Makesystem changes to better support different SoCs.
|
||
* Made arch/c5471/include and arch/dm320/include identical in
|
||
preparation for merging into arch/arm
|
||
* Logic from arch/c5471 and arch/dm320 combined into arch/arm.
|
||
arch/c5471 and arch/dm320 are deprecated and will be removed
|
||
when the new c5471 and dm320 logic is verified.
|
||
|
||
0.2.5 2007-05-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Corrected some build/configuration issues introduced with the
|
||
last release.
|
||
* Added support for the NXP 214x processor on the mcu123.com lpc214x
|
||
development board (untested)
|
||
* Added support for block devices.
|
||
* Simulated target now exports a VFAT filesystem
|
||
* Begin support for VFAT filesystem (missing functionality)
|
||
* Added mount() and umount()
|
||
* Fix bug in memcmp return value
|
||
* Fix errors in timeslice calculation (several places)
|
||
* Added missing irqrestore() in timer_deleteall().
|
||
* close() was not closing the underlying device.
|
||
* Added fsync()
|
||
* Added strspn() and strcspn()
|
||
|
||
0.2.6 2007-05-26 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Added unlink(), mkdir(), rmdir(), and rename()
|
||
* Fixed several serious FAT errors with oflags handling (&& instead of &)
|
||
* Added FAT support for unlink(), mkdir(), rmdir(), and rename
|
||
* Added FAT support for opendir(), closedir(), readdir(), seekdir(),
|
||
telldir(), rewindir().
|
||
* Fixed ARM compilation errors introduced in 0.2.5 (that is what I get
|
||
for only testing on the simulation).
|
||
|
||
0.2.7 2007-06-09 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Added stat() to fs layer and to FAT
|
||
* Fixed reference counting errors associated with mounted filesystems
|
||
* Added fat_getattrib() and fat_setattrib()
|
||
* Added statfs() to fs layer and to FAT
|
||
* Correct file name extension in tools/zipme.sh
|
||
* Fix error in dependencies in 8051/2 Makefile
|
||
* sched/Makefile: Don't build sleep() or usleep() if signals are disabled
|
||
* sched/sched_setparam.c: Remove redundant disabling of interrupts
|
||
* sched/usleep.c: Fixed nsec calculation
|
||
* lib/lib_strcspn.c: Function incorrectly named strspn().
|
||
* examples/ostest/main.c: Errors in SDCC version of a memcpy() call
|
||
* examples/ostest/sighand.c: Don't call fflush() if streams are disabled
|
||
* include/limits.h, include/time.h, sched/clock_internal.h: A support for
|
||
using selectable system timer frequency.
|
||
* Fixed error in mountpoint related conditional compilation introduced
|
||
in 0.2.5
|
||
* Restructured some Makefiles to better handle enabling and disabling
|
||
NuttX features without having so much conditional compilation in the
|
||
source files.
|
||
* tools/mkconfig.c: No longer depends on asprintf() and _GNU_SOURCE and
|
||
so should now build in non-GNU, non-GLIBC environments.
|
||
* include/nuttx/compiler.h: Fix for using SDCC with the Z80.
|
||
* include/assert.h & arch/pjrc-8051/src/up_assert.c: SDCC does support
|
||
__FILE__and __LINE__ (not tested)
|
||
* examples/ostest/barrier.c: Don't call usleep() when signals are
|
||
disabled.
|
||
|
||
0.2.8 2007-07-02 Gregory Nutt <gnutt@nuttx.org>
|
||
* tools/Makefile.mkconfig: Under Cygwin, executable has a different name
|
||
* tools/mkdeps.sh & arch/arm/src/Makefile: Corrected a problem makeing dependencies
|
||
* tools/zipme.sh: Force directory name to be nuttx-xx.yy.zz
|
||
* fs/fs_opendir.c: Correct errors in semaphore usage that can cause deadlock.
|
||
* lib/lib_getopt.c: Added getopt() support
|
||
* examples/nsh/: NSH now supports cat, mount, umount, and mkdir. ls supports
|
||
-l -s, and -R
|
||
* Added basic OS support to manage environment variables: environment
|
||
storage, cloning on task creation, sharing on pthread creation, destruction
|
||
on thread/task exit.
|
||
* Add environment variables APIs: environ, getenv, putenv, clearenv, setenv,
|
||
unsetenv
|
||
* Correct an error in realloc() when the block is extended "down" in memory.
|
||
In this case, the old memory contents need to be copied to the new location
|
||
and an allocated bit was not being set.
|
||
* examples/ostest/: Added an environment variable test.
|
||
* examples/nsh/: Break into several files.
|
||
* lib/: Added strrchr, basename, dirname
|
||
* examples/nsh/: Add cp, rm, rmdir, set, unset commands. echo will now print
|
||
environment variables.
|
||
|
||
0.3.0 2007-11-06 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Imported uIP into the tree (see
|
||
http://www.sics.se/~adam/uip/index.php/Main_Page)
|
||
* Adding socket(), bind(), connect()
|
||
* Added snprintf()
|
||
* Added send() and sendto(); integrate write() and close() with socket descriptors.
|
||
* Added recv() and recvfrom().
|
||
* Added getsockopt() and setsockopt()
|
||
* Documentation updated to address socket interfaces.
|
||
* Implemented receive timeouts via setsockopt(SO_RCVTIMEO).
|
||
* Provide support for multiple network devices
|
||
* Implement socket ioctl() calls to set addresses
|
||
* Added listen() and accept()
|
||
* Added DM90x0 Ethernet driver
|
||
* ARP timer is now built into the network layer
|
||
* Basic client functionality verified: TCP socket(), bind(), connect(), recv(), send().
|
||
|
||
0.3.1 2007-11-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Separated net/uip/uip.c into several functions in several files.
|
||
* Corrected a TCP problem where packets were dropped because there was no
|
||
recv() in place but the packet was being ACKed. There are still TCP
|
||
recv buffering issues, but this is part of a larger buffering issue.
|
||
* Basic server functionality verified: TCP listen(), accept()
|
||
* Fix DM90x0 driver problem that caused TX overruns
|
||
* Add strncmp()
|
||
* Added TCP/IP read-ahead buffer to minimize failed ACKs and packet loss.
|
||
|
||
0.3.2 2007-11-23 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Add strcat() and strncat()
|
||
* Integrated uIP micro webserver
|
||
* Corrected a serious bug in TCP queue management
|
||
* Fix leak in socket close logic
|
||
* Add TX notification to driver so that it can respond faster to
|
||
the availability of TX data.
|
||
* Moved urgent data info into device structure.
|
||
* TCP and ICMP protocols can now be disabled.
|
||
* Added UDP test in examples/udp
|
||
* Verified/debugged UDP socket(), bind(), sendto() and recvfrom() logic
|
||
using examples/udp
|
||
* recvfrom() and accept() now correctly return the remote address.
|
||
* Fixed computation error in ntohl().
|
||
|
||
0.3.3 2007-11-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Removed unused uIP files
|
||
* sched/, mm/, and net/ subsystem debug can not be selectively enabled/disabled
|
||
* Correct socket close logic: needs to disconnect TCP socket on close
|
||
* uIP webserver now seems to be fully functional
|
||
* fs/ and lib/ subystem debug can not be selectively enabled/disabled
|
||
* Added vsnprintf
|
||
* Integrated uIP telnetd
|
||
* Add missing logic to read-ahead buffer logic
|
||
* examples/nettest uses larger buffers
|
||
* Improved ACK handling in send() to better handler deferred acknowledgements
|
||
and polling intervals. Greatly improves send performance.
|
||
|
||
0.3.4 2007-12-10 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Added and partially verified DHCP server logic (netutils/dhcpd)
|
||
* Fix BROADCAST=y compilation problems
|
||
* Fix UDP recvfrom timeout bug
|
||
* Correct processing of input UDP broadcast packets.
|
||
* Verfied basic DHCP client functionality (netutils/dhcpc)
|
||
* Implemented send() timeout logic
|
||
* Added and verified a TELNETD front end to NSH (examples/nsh)
|
||
* Add a skeleton Ethernet device driver (drivers/net/skeleton.c)
|
||
* Added C5471 Ethernet device driver (arch/arm/src/c5471/c5471_ethernet.c)
|
||
* Found and fixed several problems in uIP when compiled for ARM with optimization.
|
||
|
||
0.3.5 2007-12-18 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Added inet_ntoa() and ether_ntoa()
|
||
* Added netdev_foreach() to support traversal of registered network devices
|
||
* Added support for 'ifconfig' command to NSH (examples/nsh)
|
||
* Moved MAC and Ethernet definitions to net/ethernet.h
|
||
* Fix sim and DM90x0 compilation errors introduced in 0.3.4
|
||
* Fixed errors in C5471 configuration files for examples/uip
|
||
* Modified DHCPC (netutils/dhcpc) so that it should work in environments where
|
||
there are more than one DHCPD server.
|
||
* NSH ifconfig command now shows uIP status as well (examples/nsh)
|
||
|
||
0.3.6 2008-01-06 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Changes for use with SDCC compiler
|
||
* Added a simulated z80 target
|
||
* Fix deadlock errors when using stdio but with no buffering
|
||
* Add support for Pascal P-Code interpreter
|
||
|
||
0.3.6.1 2008-01-07 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* The initial 0.3.6 release including an error that prevented
|
||
building successfully if the Pascal add-on was
|
||
was not present.
|
||
|
||
0.3.7 2008-01-31 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Added support for the Zilog Z16F using the Zilog Z16F2800100ZCOG
|
||
Development Kit.
|
||
* Add support toolchains that do not support making of dependencies
|
||
* Fix Cygwin build with spaces in directory names
|
||
* Name make system changes to deal with non-GNU toolchains (i.e., Zilog)
|
||
* Add support for Windows native toolchains that cannot follow Cygwin soft links
|
||
* Modified serial driver interface to handle hardware with non-16550A-like
|
||
interrupt architecture (like the Z16F)
|
||
* Added a "dumb" serial console driver to simplify OS bringup
|
||
* Corrected a bug that caused the errno value of one task to be clobbered
|
||
when a different task exits. Affects all architectures.
|
||
|
||
0.3.8 2008-02-10 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Added a test case to verify the Pascal P-Code interpreter
|
||
* Added /dev/zero
|
||
* 'errno' is now defined to be *get_errno_ptr() with no name conflicts
|
||
* Added lseek() and fseek()
|
||
* Integrated Pascal interpreter test case on the simulation platform. Needs
|
||
pascal-0.1.1.
|
||
* Add Pascal test case on the z16f platform. Needs pascal-0.1.2 (does not
|
||
yet work due to some tool issues).
|
||
* C buffered I/O fixes:
|
||
- Fix fflush() return value,
|
||
- Add correct fflush behavior when the FILE argument is null.
|
||
- Add logic to a correctly handle read/write access on the same FILE
|
||
- fseek() flushes read/write data when before moving the file pointer
|
||
- When read data is flushed, reposition the file pointer to account for
|
||
buffered, but unread data
|
||
* Pascal P-Code files are now standardized to big-endian for portability
|
||
* Fix a build problem with z80 and SDCC 2.7.0 (format of a map file changed)
|
||
(see bug 1887170)
|
||
* Pascal P-Code runtime now compiles with the SDCC toolchain.
|
||
* Added a generic CAN driver. This driver is untested as of this writing.
|
||
* Corrected DM320 UART configuration problem
|
||
|
||
0.3.9 2008-03-09 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Began adding support for the ZiLOG Z8Encore! microcontroller for the Z8Encore000ZCO
|
||
development board and the Z8F6403 part.
|
||
* Fix broken 'clean' target on z80sim configurations
|
||
* Re-structure arch/z80 to provide support for all ZiLOG 8-bit microcontrollers (ez8
|
||
in particular for now).
|
||
* Add support for TRS80-Model 3 based on the xtrs emulation (http://www.tim-mann.org/xtrs.html)
|
||
Per patch from Jacques Pelletier.
|
||
* In all shell scripts, change #!/bin/sh to #!/bin/bash to resolve problems in
|
||
Ubuntu where /bin/sh is a link to dash.
|
||
* Z8Encore! port verified on ZDS-II instruction set/chip simulator.
|
||
|
||
0.3.10 2008-05-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Add support for the ZiLOG EZ80Acclaim microcontrooler (EZ80F91 chip).
|
||
* Add configuration for the ZiLOG z8f64200100kit development kit, Z8F6423 part.
|
||
* Add configuration for the ZiLOG ez80f0910200kitg development kit, EZ80F091 part.
|
||
* Correct critical list handling errors in task shutdown logic: One in timer
|
||
deletion logic (timer_delete.c) and one in stream logic (lib_init.c) reported
|
||
by kwonsk.
|
||
|
||
0.3.11 2008-06-01 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Add support for recursive mutexes.
|
||
* Eliminate a memory leak: contained watchdog instance was not being
|
||
deleted with a POSIX timer was deleted reported by kwonsk.
|
||
* Eliminate a deadlock condition in opendir() reported by kwonsk.
|
||
* Fix several FAT filesystem problems reported by kwonsk (Changes not yet
|
||
verified).
|
||
* Host simulator no longer uses Linux system calls directly; Now works with Cygwin.
|
||
* Fix an error that occurs when a POSIX timer is deleted by the timer signal handler.
|
||
* Add logic to allow the examples/ostest to be run repetitively as an endurance test.
|
||
* Add a ramdisk block driver
|
||
|
||
0.3.12 2008-08-10 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Improved solution to POSIX timer lifetime controls bug fixed in 0.3.11.
|
||
* Add test for recursive mutexes
|
||
* Correct bug in recursive mutex logic
|
||
* Add mkfifo()
|
||
* Add pipe() and test for both pipes and fifos
|
||
* Attempts to open a FIFO will now block until there is at least one writer
|
||
* Add test/Fixed errors in FIFO reader/writer interlocks
|
||
* Removed limitation: task_create() was only dup'ing 3 file descriptors (now
|
||
dups all open file descriptors).
|
||
* Added a test for redirection of stdio through pipes
|
||
* Fixed error in dup and dup2: Must call open/close methods in fs/driver so that
|
||
driver can correctly maintain open reference counts.
|
||
* Same issue on closing file descriptors in exit()
|
||
* Fixed in error in stdio flush logic. Needed ssize_t vs size_t for error
|
||
check.
|
||
* Moved all FAT related files from fs to fs/fat
|
||
* Implemented mkfatfs(), a non-standard API to create a FAT filesystem on a
|
||
block device (not yet tested).
|
||
* Added a test for mkfatfs() on a RAM disk in examples/mount and verified
|
||
basic mkfatfs functionality for FAT12.
|
||
|
||
0.3.13 2008-09-01 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* NSH: Added mkfatfs, mkfifo, sleep, usleep and nice commands
|
||
* Fixed problem with console input in Cygwin-based simulator; NSH now works
|
||
with simulator.
|
||
* NSH will now execute commands in background
|
||
* sched_get_priority_max/min returned error on SCHED_RR
|
||
* Removed duplicate getenv() implementation in /lib
|
||
* Correct detection of End-of-File in fgets
|
||
* NSH: Implemented sh and crude script handler
|
||
* Fix prototype of read() and write(). Need to use ssize_t and size_t, not
|
||
int and unsigned int.
|
||
* NSH now supports redirection of command output
|
||
* NSH can now use both telnet and serial front ends together
|
||
* NSH: $variable can be used for any command value
|
||
* Fixed an error in opendir() that could cause an assertion to fail
|
||
inappropriately.
|
||
* Correct an error in the FAT that caused files opened for writing with
|
||
O_APPEND to fail. The file was not being properly positioned to the
|
||
end of the file in that case.
|
||
* NSH now supports last exit status $?
|
||
* NSH now supports if-then[-else]-fi construct
|
||
* NSH now supports comments beginning with '#'
|
||
* NSH now supports commands to inspect and modify memory
|
||
* NSH cat command now supports multiple files on command line
|
||
* Add chdir() and getcwd()
|
||
* Fix error in getopt() when called with argc==1
|
||
* Fix error in stat() when used on the root directory
|
||
* NSH: Add cd and pwd commands and current working directory to all NSH
|
||
commands that refer to paths.
|
||
* Fix errors and warnings introduced into Linux sim build because of recent
|
||
Cygwin-based sim changes
|
||
* NSH: Add mem command to display heap usage
|
||
* Added telnet NSH configuration for Neuros OSD.
|
||
* Basic integration of concurrent telnet/serial NSH functional on Neuros
|
||
OSD.
|
||
* Fixed a critical bug that affects the way that environment variables are
|
||
shared amongst pthreads.
|
||
* uIP port enhance to support multi-threaded, concurrent socket access. So,
|
||
for example, one thread can be reading from a socket while another is
|
||
writing to the socket.
|
||
|
||
0.3.14 2008-09-08 Gregory Nutt <gnutt@nuttx.org>
|
||
* FAT FS now uses position variable in struct file. This simplifies operations
|
||
like ftell().
|
||
* fseek() needs to discard bytes buffered by ungetc().
|
||
* Corrected ftell() return value.
|
||
* Added fsetpos() and fgetpos().
|
||
* NSH: Now supports 'test' and '[' commands
|
||
* Correct error in send() timeout logic.
|
||
* Correct error in multi-threaded socket handling in send() and sendto().
|
||
Outgoing data could overwrite incoming data.
|
||
* Add support to uIP for application access to ICMP protocol stacks; Add
|
||
ping request logic.
|
||
* NSH: Add ping command
|
||
* Correct IP checksum calculation in ICMP and UDP message send logic.
|
||
* NSH: Created an HTML document and a more detailed README file describing NSH.
|
||
* Added basic TFTP client logic (netutils/tftpc).
|
||
* NSH: Add get and put commands to support TFTP get and put operations.
|
||
* NSH: Added a mkrd command that will create a RAMDISK that can be formatted
|
||
and mounted.
|
||
* Corrected a critical bug that prevent recvfrom from receiving packets from
|
||
any remote UDP port.
|
||
* NSH: Add hexadecimal dump command (xd)
|
||
* Fixed several critical bugs with regard to fat reading and writing and FAT12
|
||
accesses. Basically the FAT FS only worked with my tiny test files and test
|
||
cases. A lot of stronger FAT tested is needed!!
|
||
* Fixed another FAT bug in implementation of FAT lseek; this prohibit correct
|
||
random access to large files.
|
||
|
||
0.3.15 2008-09-20 Gregory Nutt <gnutt@nuttx.org>
|
||
* Added support for ROMFS filesystem.
|
||
* Added a simple test the ROMFS filesystem (examples/romfs)
|
||
* NSH: Use ROMFS to provide an option for a start-up script at /etc/init.d/rcS
|
||
* Add definition of BIOC_XIPBASE ioctl and implement in RAM disk block driver.
|
||
This is a low level requirement for eXecute In Place (XIP) support.
|
||
* Add a FIOC_MMAP to perform memory mapping of a file and implemented the
|
||
ioctl command in the ROMFS filesystem. This is a requirement for eXecute
|
||
In Place (XIP) support.
|
||
* Add mmap() API with restricted capability (only for XIP support)
|
||
* Extend ROMFS test at /examples/romfs to verify mmap() and XIP support.
|
||
* Add support for Intel Hex format output using objcopy
|
||
* Completed the basic port of the NXP LPC2148 on the mcu123.com board.
|
||
The basic port includes successful booting, timer interrupts, serial console,
|
||
succesfully passing the examples/ostest, and a NuttShell (NSH) configuration.
|
||
* ARM architectures now support drivers/lowconsole.c
|
||
|
||
0.3.16 2008-10-10 Gregory Nutt <gnutt@nuttx.org>
|
||
* Added header files defining a common USB device controller architecture
|
||
* Added USB device side driver for the LPC214x
|
||
* Correct the frequency of system timer interrupts in the NXP LPC214x port
|
||
(off by 20x in nuttx-0.3.15)
|
||
* Add an option to set aside a separate stack for interrupt handling (ARM only).
|
||
This is useful when memory is constrained, there are multiple tasks, and
|
||
the interrupt stack requirement is high (as when USB is enabled).
|
||
* Added USB serial class device side driver (emulates Prolific PL2303
|
||
serial-to-USB adaptor)
|
||
* Add LPC214x USB serial configuration; Add examples/usbserial test
|
||
* Added USB device side driver for the DM320 (untested at initial release)
|
||
* Fixed an error in a previous (post 0.3.15) check-in that broke the LPC214x
|
||
system timer.
|
||
* Fixed serial driver bugs related to (1) open counts and (2) recognizing
|
||
O_NONBLOCK on read.
|
||
* Fixed an error in read(); it was not setting the errno on errors returned
|
||
from the driver.
|
||
|
||
0.3.17 2008-10-28 Gregory Nutt <gnutt@nuttx.org>
|
||
* Incorporate patch "[2164503] nuttx-0.3.16 does not build for ARM with USB disabled"
|
||
* Reduced the amount of memory reserved for USB serial control requests. It
|
||
was unnecessarily large.
|
||
* Added LPC214x SPI1 driver to interface with MMC on mcu123.com board.
|
||
* Added a simple SPI-based MMC/SD block driver
|
||
* NSH: Add LPC214x-specific support to NSH; NSH now mounts any SD cards in the slot.
|
||
* FAT: Fix access to unaligned 32-bit values in partion table (start sector & size)
|
||
* Fixed a problem with a un-initialized variable in the USB serial driver.
|
||
* Added USB storage NXP LPC214x configuration
|
||
* Added a test for USB storage under examples/usbstorage
|
||
* Fixed a bug in the LPC214x USB driver: It was not properly clearing a HALTed
|
||
endpoints (other than EP) on receipt of CLEAR FEATURES request.
|
||
* Added USB storage class device side driver (BBB)
|
||
* Fixed a bug in the LPC214x USB driver: It was not properly handling request buffers
|
||
larger then the endpoint's max packet (DM320 driver also fixed, untested)
|
||
* Added logic to the USB device interface: A bit is needed to force the driver to
|
||
to terminate an IN transfer with a short packet (zero-length if necessary).
|
||
* Fix an error in the NXP LPC214x USB device driver that was causing corruption of
|
||
the request queue (M320 driver also fixed, untested)
|
||
* Correct another error in the NXP LPC214x USB device driver that caused read failures
|
||
when the request buffer size was larger than maxpacket.
|
||
* Numerous corrections/extensions to the USB tracing logic included in 0.3.16 (but
|
||
not integrated until 0.3.17)
|
||
* Fixed another bug in the NXP LPC214x USB device driver: After a stalled endpoint
|
||
is resumed (view CLEAR FEATURE), we must restart the IN (outgoing) queue.
|
||
|
||
0.3.18 2008-11-16 Gregory Nutt <gnutt@nuttx.org>
|
||
* Added port for the STMicro STR71x processor and configuration for the Olimex STR-P711
|
||
board (STR71x testing is stalled because I have been unable to get OpenOCD to
|
||
communicate with my JTAG wiggler on Linux).
|
||
* Fix race condition workaround delay in LPC214X SPI logic. This was also the cause of the
|
||
very bad MMC/SD performance.
|
||
* Began port of the Hitachi SH-1 using the SH-1/US7032EVB1 board
|
||
* Re-built all configurations that use SDCC and Zilog toolchains to make sure they still
|
||
build (they didn't, but they do now).
|
||
* Fixed several erroneous "list empty" checks in the CAN driver.
|
||
* Hitachi SH-1 passes (reduced) examples/ostest; the examples/nsh test still fails.
|
||
There are remaining instabilities that make the port un-usable. The nature of these is
|
||
not understood; the behavior is that certain SH-1 instructions stop working as advertised.
|
||
This could be a silicon problem, some pipeline issue that is not handled properly by the
|
||
gcc 3.4.5 toolchain (which has very limit SH-1 support to begin with), or perhaps with the
|
||
CMON debugger. At any rate, I have exhausted all of the energy that I am willing to put
|
||
into this cool old processor for the time being.
|
||
* Renamed configuration item CONFIG_PROC_STACK_SIZE as CONFIG_IDLETHREAD_STACKSIZE: It now
|
||
only controls the size of the stack for the IDLE thread. Added CONFIG_USERMAIN_STACKSIZE:
|
||
This is the size of stack used with the user_start() thread is created. The two stacks
|
||
no longer have to be the same.
|
||
* Add a loop device that converts a file into a block device.
|
||
* Each NSH command can not be disabled through a configuration setting. All of these
|
||
settings make the configuration of NSH potentially complex but also allow it to squeeze
|
||
into very small memory footprints.
|
||
* Added a block to character (BCH) driver. This is kind of the reverse of the loop
|
||
device; it allows you access a block device like a character device.
|
||
* Added strcasecmp() and strncasecmp()
|
||
* NSH: Added the 'dd' command
|
||
* NSH: Added the 'losetup' command
|
||
* Fixed a FAT bug: After recent changes, it would mount a (invalid) FAT file system
|
||
even if the medium is not formatted!
|
||
* Corrected two important errors in FAT lseek implementation: (1) the sectors-per-cluster
|
||
value was being reset to "1" and (2) important lseek logic was omitted when the seek
|
||
position was zero.
|
||
* Fixed a bug in getopt(). It would fail if on certain combinations of terminal argument
|
||
types.
|
||
|
||
0.3.19 2008-11-26 Gregory Nutt <gnutt@nuttx.org>
|
||
* Add poll() and select() APIs (in the initial check-in, these work only with character devices)
|
||
* Add poll() methods to /dev/null, /dev/zero, pipes, fifos, and serial drivers.
|
||
* Add examples/poll for testing poll() and select()
|
||
* Fix hostile behavior of getc, fgetc, getchar, etc.: the serial driver was waiting for a
|
||
full buffer of read data before return. This means that getc would stall when it needed
|
||
to refill the input buffer. The old behavior (read full blocks) might be useful in other
|
||
contexts, so it is still available within the driver as a configuration option.
|
||
* Implement poll() and select() support for TCP/IP sockets
|
||
* Fixed an important bug in the TCP/IP buffering logic. When TCP/IP read-ahead is enabled
|
||
and not recv() is in-place when a TCP/IP packet is received, the packet is placed into
|
||
a read-ahead buffer. However, the old contents of the read-ahead buffer were not being
|
||
cleared and old data would contaminate the newly received buffer.
|
||
* Implemented support for connection backlog. The size of the backlog is specified by the
|
||
second argument of the standard listen() API. Hooks are provided to support poll()/select()
|
||
waiting for connections, with a subsequent call to accept() to use the backlogged connection.
|
||
* Fixed a minor bug in accept(). It should allow the address and addresslen values to be NULL
|
||
* Added first-cut definition for a framebuffer interface (and simulated framebuffer for testing
|
||
purposes only)
|
||
* Added fixed precision math support
|
||
* Added some color converson routines into what may become a real graphics library someday.
|
||
* Added a framebuffer driver for the DM320 (untested on initial check-in)
|
||
* Network: add support for outgoing multicast addresses
|
||
* Added some rasterizers to the graphics library
|
||
|
||
0.4.0 2008-12-06 Gregory Nutt <gnutt@nuttx.org>
|
||
* Initial release of a tiny windowing system for NuttX
|
||
* Add fixed precision sin() and cos() (not well tested at initial check-in)
|
||
* Add an X11-based simulated framebuffer driver
|
||
* The simulated target now has an option (CONFIG_SIM_WALLTIME) that will let the simulation
|
||
run in more-or-less realtime.
|
||
* Added more extensive window support: frames, toolbars, etc.
|
||
* Added support for bitmap fonts
|
||
* Integrated the new font support with a font test in examples/nx
|
||
* Add documentation for NX graphics subsystem
|
||
|
||
0.4.1 2009-02-06 Gregory Nutt <gnutt@nuttx.org>
|
||
* Added board support for the ZiLog eZ80Acclaim! ez80f910200zco Development Kit.
|
||
* Fixed several compilation errors in fixed precision math library when built
|
||
against toolchains that do not support 64-bit type 'long long'.
|
||
* Fix errors in some function prototypes in dirent.h
|
||
* Add eZ80F91 EMAC driver
|
||
* Fix recvfrom() compilation error: only noted under ZDS
|
||
* Updated all ARM Make.def files to work with gcc 2.4.2 (However, there are
|
||
still some build issues associated with that toolchain in use of arm-elf-objcopy
|
||
-- see the TODO.txt list for details)
|
||
* Fix problems with Z16F and eZ80 compilation introduced with recent changes.
|
||
|
||
0.4.2 2009-02-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* M16C: Add support for the Renesas M16C MCU and the SKP16C26 StarterKit. However,
|
||
the target cannot be built because the GNU m16c-elf-ld link fails with
|
||
the following message:
|
||
|
||
m32c-elf-ld: BFD (GNU Binutils) 2.19 assertion fail /home/Owner/projects/nuttx/buildroot/toolchain_build_m32c/binutils-2.19/bfd/elf32-m32c.c:482
|
||
|
||
Where the reference line is:
|
||
|
||
/* If the symbol is out of range for a 16-bit address,
|
||
we must have allocated a plt entry. */
|
||
BFD_ASSERT (*plt_offset != (bfd_vma) -1);
|
||
|
||
No workaround is known at this time. This is a show stopper for M16C.
|
||
|
||
* eZ80Acclaim!: Fix interrupt vectors positioning; they were being positioned
|
||
wrong by 64 bytes (Kevin Franzen).
|
||
* eZ80Acclaim!: Corrected some stack handling errors during interrupt handling
|
||
context save and restore (Kevin Franzen).
|
||
* eZ80Acclaim!: Corrected vector initializeation logic (Kevin Franzen).
|
||
* eZ80Acclaim!: Corrected overflow problem in the calculation of UART baud rate
|
||
divisor, the system timer divisor, and the EMAC poll timer.
|
||
* eZ80Acclaim!: Fixed GPIO pin configuration get serial output
|
||
* eZ80Acclaim!: Correct stack overflow in ostest example configuration
|
||
* eZ80Acclaim!: Fixed restoration of interrupts state on interrupt level context swith.
|
||
|
||
0.4.3 2009-03-04 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* z8Encore! and eZ80Acclaim!: Fixed the serial driver initialization sequence
|
||
* eZ80Acclaim!: Fixed error in vector table: Missing space set aside for the
|
||
"unused" vectors. As a result, all vectors above timer4 were skewed.
|
||
* eZ80Acclaim!: Fixed logic error in UART interrupt handler.
|
||
* Many fixes in FAT file system and in NSH for correct compilation with ZDS-II
|
||
* eZ80Acclaim!: Added and verified a NuttShell (NSH) configuration.
|
||
* eZ80Acclaim!: Correct endian-ness; defconfig files said BIG endian.
|
||
* Restructured parts of the uIP port for correct compilation with ZDS-II
|
||
* eZ80Acclaim!: Complete basic integration of the eZ80F91 EMAC driver. The
|
||
driver is basically functional and should mature prior to the 0.4.3 release.
|
||
* Implemented priority inheritance logic for POSIX semaphores. Because the pthread
|
||
mutexes are built on semaphores, they will have this property as well.
|
||
|
||
0.4.4 2009-03-29 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* examples/nsh: A debug option was left on that can (and does) cause
|
||
infinite loops and stack overflows.
|
||
* net/uip: Correct calculation of checksum on ICMP ping response.
|
||
* examples/dchpd: Added a tiny DHCP server example
|
||
* net/uip: Correct UDP bind behavior. It should select a valid port number
|
||
if it receives a port number of zero.
|
||
* netutils/dhcpd: correct for ZDS compiler. Fix issue with re-use of a
|
||
port number. Fixed a number of broadcast-related problems.
|
||
* eZ80Acclaim!: Add a tiny webserver configuration
|
||
* eZ80Acclaim!: Fixed an important bug in the EMAC Tx timeout logic. It was
|
||
always timing out when the load was heavy and worse, for some reason,
|
||
resetting the Tx function caused unexpected registers to be reset in
|
||
the Rcv function was well.
|
||
* Z80: Patch incorported: "[2696648] Z80: interrupt flag stored in parity bit"
|
||
(submitted by JPelletier). The is the same fix that was needed for the
|
||
eZ80 and fixed in 0.4.2.
|
||
* netutils: Added logic to support a simple wget() function
|
||
* examples/wget: Added a test for wget() (untested -- see NOTE)
|
||
* lib/strncasecmp: Fix cut'n'paste error in function name.
|
||
* NSH: Added wget command (untested -- see NOTE).
|
||
* examples/sendmail: A simple sendmail example (untested -- see NOTE)
|
||
|
||
NOTE: Features related to wget and sendmail are not tested on the target platform
|
||
in this release and, hence, most likely have problems. I don't have the correct network
|
||
setup to perform that testing now (I'm in a hotel).
|
||
|
||
0.4.5 2009-04-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Add an enumeration argument to the SPI chip select and status methods so
|
||
that the interface can handle more than one device.
|
||
* eZ80Acclaim!: Add a generic SPI driver for all eZ80 boards.
|
||
* Add a setmode() method to the SPI interface to handle parts with differing
|
||
mode requirements.
|
||
* include/nuttx/i2c.h: Defined a standard I2C interface
|
||
* eZ80Acclaim!: Add an I2C driver.
|
||
* eZ8Encore!: Add an I2C driver.
|
||
* Add support for the Freescale i.MX1/L architecture and a configuration for
|
||
the Freescale MX1ADS development board.
|
||
* examples/helloxx: Added a simple C++ hello world example
|
||
* include/css: Added std header files
|
||
* libxx: New C++-only directory provides support for minimal C++ applications
|
||
|
||
0.4.6 2009-05-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Change SPI interface so that is can accomodate interfaces where the
|
||
number of bits per word is greater an 8 (such as with many 9-bit display
|
||
interfaces). -- this might have broken a few things which will need to
|
||
be retested!
|
||
* arch/arm/src/imx: Added i.MX SPI driver
|
||
* SPI: Add a method to set the number of bits per word. Also add an
|
||
alternative interface for so that (eventually) I can phase the sndblock
|
||
and recvblock methods and replace them with a single exchange method
|
||
* Build: objcopy fails with toolchains that use newer GCC and binutils. The
|
||
following arguments need to be included in the objcopy command line "-R .note
|
||
-R .note.gnu.build-id -R .comment" This has been fixed in arch/arm/src/Makefile,
|
||
but other architectures may have the same problem. Thanks to Dave Marples
|
||
for verifying this.
|
||
* configs/eagle100/ostest: Added support for the MicroMint Eagle100 board.
|
||
This board has a Luminary LM3S6918 Cortex-M3. Added a configuration to build
|
||
examples/ostest.
|
||
* arch/arm/src/lpc214x: Add configuration option to enable fast GPIO (vs.
|
||
legacy, "slow" GPIO) for LPC214x.
|
||
* arch/arm: Restructured the arch/arm directory structure to better support ARM
|
||
and Cortex-M3.
|
||
* sched/: pthread_create() must return a (non-negated) errno value on failure.
|
||
* configs/eagle100/nsh: Add a NuttShell (NSH) configuration for the Eagle-100
|
||
|
||
0.4.7 2009-05-29 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lm3s: Added an Ethernet driver for the LM3S6918
|
||
* configs/eagle100/nettest: Added an examples/nettest configuration for the
|
||
Micromint Eagle100 board.
|
||
* Documentation/NuttxPortingGuide.html: Added a section on NuttX device drivers.
|
||
* configs/eagle100/httpd: Added an examples/uip configuration for the
|
||
Micromint Eagle100 board.
|
||
* arch/arm/src/lm3s: Added an SSI driver for the LM3S6918
|
||
* examples/nsh: Added MMC/SD support for the LM3S6918
|
||
* arch/arm/src/lm3s: Fix logic for setting and clearing output GPIOs (critical
|
||
fix!).
|
||
* drivers/mmcsd: Found numerous errors in current MMC/SD SPI driver. Bad frequency
|
||
calculation based on CSD settings, inappropriate timeouts, odd code that looks like
|
||
a bad search and replace. Also needs support for SDHC ver 2.x. New MMC/SD is
|
||
largely redesigned and probably non-functional in the first check-in.
|
||
* drivers/mmcsd: Changes verified on 4Gb Kingston microSHDC card and on a 2Gb
|
||
SanDisk microSDC card on the Eagle100 platform.
|
||
* fs/fat: With the 4Gb card, the first tests of FAT32 were (finally) performed.
|
||
Found and corrected a problem that prevented use of FAT32: It was not updating
|
||
the sector cache before checking the FAT32 FSINFO sector.
|
||
* configs/eagle100/*/Make.defs: Added configuration options that should make
|
||
it possible to build NuttX for the Eagle100 using CodeSourcery 2009q1 toolchain
|
||
and the devkitARM GNU toolchain.
|
||
* configs/mcu123-lpc214x/src: Corrected some logic in the LPC2148 SPI receive block
|
||
logic. Re-verified SDC ver1.x support with 1Gb Toshiba SDC, 1Gb PNY SDC, and
|
||
4Gb Kingston SDHC. There are CMD0 issues with the 2Gb SanDisk SDC on this board.
|
||
* fs/fs_mount.c: Corrected error handling that could cause a deadlock on certain
|
||
mount() failures.
|
||
|
||
0.4.8 2009-06-13 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* lib/lib_*stream.c: Extend internal stream logic to support incoming streams.
|
||
* arch/arm/src/str71x: Serial output is now correct and timer interrupts are
|
||
working. The test at configs/olimex-strp711/ostest passes. This means that
|
||
the basic STR-P711 port is complete.
|
||
* configs/olimex-strp711/nsh: Add and verified a NuttShell (NSH) configuration
|
||
for the STR-P711.
|
||
* arch/arm/str71x/str71x_serial.c: The STR711 interrupt driven serial driver
|
||
finally works after some extradinary measures to handle missed interrupts.
|
||
NSH is fully functional on the Olimex STR-P711 board.
|
||
* example/nsh: Moved architecture specific files from NSH directory to board-
|
||
specific directories.
|
||
* config/olimex-strp711/src/up_nsh.c: Add an NSH board specific directory for
|
||
for the Olimex STR7P11 board.
|
||
* Fixed build of LM3X6918 using the CodeSourcery Windows native toolchain. There
|
||
were lots of issues with Cygwin paths and Cygwin symbolic links. These changes
|
||
may work with the devarmKIT as well, but that remains untested.
|
||
* The NXP LPC2148 and STR711 targets can now also be built using the CodeSourcery
|
||
or devkitARM Windows native toolchains.
|
||
|
||
0.4.9 2009-06-26 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Add strtoll() and strtoull(); Add macros for atol() and atoll().
|
||
* dup() and dup2() will now clone socket descriptors
|
||
* All socket descriptors are now cloned when a new task is started via
|
||
task_create().
|
||
* Add configuration options to suppress or eliminate cloning of file
|
||
and/or socket descriptors when a new task is started by task_create():
|
||
CONFIG_FDCLONE_DISABLE, CONFIG_FDCLONE_STDIO, CONFIG_SDCLONE_DISABLE.
|
||
* Use of C++ reserved word 'private' in C header files causes problems
|
||
for C++ that include them.
|
||
* Added 'binfmt' support to allow execution of programs in a file system,
|
||
binding to NuttX symbols. A custom format call NXFLAT is used; this
|
||
derives from http://xflat.sourceforge.net. At present is supports on
|
||
XIP execution from ROMFS file systems. Initial check-in is untested
|
||
and probably breaks many builds.
|
||
* examples/lib: Added qsort()
|
||
* examples/nxflat: Added support for symbol tables
|
||
* Correct logic that creates compiler include paths. On Cygwin, the
|
||
include paths for Cygwin-based GCC were being converted to windows
|
||
native paths. That causes many problems -- breaking dependencies
|
||
for one.
|
||
* Fixed an important bug in ROMFS. The initial XIP offset was set
|
||
incorrectly so if sector zero was read first, there was a bad read.
|
||
I don't know how it worked before.
|
||
* arch/arm/src/common/up_use_stack.c. Fixed a fatal stack setup error.
|
||
This file has been around for a long time, but I don't think it has
|
||
every been used before (i.e., prior to the NXFLAT logic)
|
||
|
||
0.4.10 2009-08-08 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* lib/: Added some basic regex-subset, pattern matching functions
|
||
* lib/: Greatly simplified mktime() and gmtime_r(). The Gregorian and
|
||
Julian time calculations were interesting, but not necessary in the
|
||
typical embeddd system.
|
||
* sched/: Added gettimeofday(). This implementation is simply a thin
|
||
wrapper around clock_gettimer().
|
||
* lib/: Add gmtime(), localtime(), and strftime()
|
||
* binfmt/: Add exec(). This is just a wrapper that executes both
|
||
load_ and exec_module() in a more familiar manner. It is not consistent
|
||
with more standard exec() functions, however, because (1) it returns
|
||
and (2) it requires symbol table arguments.
|
||
* lib/: Add fileno()
|
||
* examples/ostest: Several of the tests used a big, hard-coded stack size
|
||
when creating test threads (16K stacksize). The stack size should
|
||
be controlled by the .config file or the OSTest won't work on platforms
|
||
with memory constraints.
|
||
* netutils/thttpd: An initial port of Jeff Poskanzer's THTTPD HTTP server.
|
||
See http://acme.com/software/thttpd/.
|
||
* examples/thttpd: A basic test program for THTTPD
|
||
* configs/eagle100/thttpd: A build configuration for THTTPD on the Micromint
|
||
Eagle-100 LMS6918 (Cortex-M3) board.
|
||
* configs/ntosd-dm320/thttpd: A build configuration for THTTPD on the Neuros
|
||
DM320 platform.
|
||
* lib/: Added strstr() and strpbrk().
|
||
* net/recvfrom.c and net/accept(): Sockets now support some non-blocking
|
||
operations, specifically for (1) TCP/IP read operations when read-ahead
|
||
buffering is enabled, and (2) TCP/IP accept() operations when TCP/IP
|
||
connection backlog is enabled.
|
||
* fs/fs_fcntl.c and net/net_vfcntl.c: Minimal support provided for fcntl().
|
||
It can, at least, be used to mark sockets as blocking or non-blocking.
|
||
* net/net_close.c: Fix bug in close(). If reference count not set to zero
|
||
then uip_tcpfree() will assert when DEBUG is enabled.
|
||
* net/accept.c: Fix bug in accept(). The logic expected parts of the
|
||
return address structure to be initialized or it would return an error.
|
||
|
||
0.4.11 2009-09-16 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* fs/fs_read.c and fs/fs_write.c. read() and write() to socket is the
|
||
same as recv() and send() with flags = 0. Fixed!
|
||
* net/recvfrom.c: Fix errors in return value from non-blocking socket read.
|
||
* lib/lib_strcasecmp.c and lib/lib_strncasecmp.c. Use of post-incremented
|
||
argument to macro caused strcasecmp() and strncasecmp() to fail.
|
||
* lib/lib_strstr.c: Length of substring off by one causes false alarm
|
||
sub-string matches.
|
||
* arch/arm/src/lm3s/lm3s_ethernet.c: Fix errors in LMS6918 FIFO length
|
||
handling. (1) The incorrect size of the Ethernet header was being
|
||
subtracted on outgoing messages (4 vs 14), which caused outgoing messages to
|
||
be a little too long. (2) The size of incoming FIFO messages is 6 bytes
|
||
larger than it expected (2 for the length and 4 for the FCS). The unhandled
|
||
extra two bytes of length cause the driver to sometimes read one too many
|
||
words from the received FIFO (corrupting the next queued receive packet,
|
||
if any).
|
||
* net/net_poll.c and net/uip/uip_tcpbacklog.c. Fixed an important race condition
|
||
bug in polling for connections. The logic worked if the poll was inplace
|
||
before the connection was received; but the poll failed to awaken if the
|
||
connection was already pending in the backlog when poll() was called.
|
||
* net/net_close.c. Fixed another important TCP/IP race condition bug: If
|
||
the host closes the TCP connection just before the target calls close(), then
|
||
the close operation may hang indefinitely!
|
||
* net/net_tcppoll.c. Removed an unnecessary check for outstanding, un-ACKed
|
||
data. The NuttX socket layer keeps track of ACKs and doesn't need this check;
|
||
removing the check should improve write throughput
|
||
* Add DEBUG configuration option to enable debug console output without disabling
|
||
optimization (and vice versa)
|
||
* Changed lots of occurrences of debug macro dbg() to lldbg(). dbg() uses
|
||
stdout to output debug data. That works fine unless (1) the dbg() macro
|
||
is interrupt logic and the interrupted task has redirected stdout! Most
|
||
changes were in uIP.
|
||
* net/uip/uip_tcpinput.c. Connection reference count was not being set correctly
|
||
when a socket is created by accepting a new connection. Since the reference
|
||
count is bad, such sockets are not successfully duplicated when being passed
|
||
to new tasks.
|
||
* net/net_clone.c. Similarly, after a socket is cloned, its reference count
|
||
was not being initialized.
|
||
* lib/lib_strstr.c. Improperly incremented pointer could cause comparison
|
||
failures.
|
||
* net/. Connection reference count must always be set to zero before calling
|
||
uip_tcpfree() or it could trigger a DEBUGASSERT that verifies that the
|
||
reference count is zero before freeing a connection structure.
|
||
* net/uip/uip_listen.c. uip_accept() consulted the wrong list to find the
|
||
listener on a socket. The previous logic worked most of the time, but
|
||
occasionally picked the wrong listener.
|
||
* net/net_close.c and net/net_sockets.c. Sockets were not being closed
|
||
when a task exits. If many server tasks are created and exit without closing
|
||
sockets (such as with CGI tasks), then eventually, you will run out of sockets.
|
||
* netutils/thttpd. Basic functionality of THTTPD is complete. This includes
|
||
serving up files from a file system and executing NXFLAT-based CGI programs
|
||
and pipe the stdout back to the HTTP client.
|
||
|
||
0.4.12 2009-10-17 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32 and configs/stm3210e-eval. Added basic support for the
|
||
STMicro STM32, Cortex-M3 MCU. The specific port is to the STMicro STM3210E-EVAL
|
||
development board based around the STM32F103ZET6 MCU.
|
||
* configs/stm3210e-eval/RIDE. Added a basic STMicro RIDE7 project that can be
|
||
used to perform basic STM32 board bring-up (due to RIDE7 size limitations, it
|
||
cannot be used for the full NuttX bring-up).
|
||
* configs/stm3210e-eval/ostest. The STM32 now passes the basic NuttX OS test
|
||
at examples/ostest. The rest should be a piece of cake.
|
||
* configs/stm3210e-eval/nsh. Added NuttShell (NSH) example.
|
||
* configs/stm3210e-eval/src/stm32102e-internal.h. Fix on-board LED GPIO definitions.
|
||
* arch/arm/src/stm32/src/stm32/stm32_dma.c. Added DMA channel support for the STM32
|
||
* arch/arm/src/stm32/src/stm32/stm32_spi.c. Added a DMA-based SPI driver for the STM32.
|
||
* arch/arm/src/stm32/src/stm32/stm32_serial.c. Finished interrupt-driven,
|
||
USART console driver. This makes NSH work perfectly.
|
||
* Things left to do for the STM32 deferred to the 0.4.13 release: USB device driver,
|
||
LCD driver and NX bringup on the eval board's display and MicroSD support. An SPI
|
||
driver was included in the 0.4.12 release, but is not yet tested.
|
||
|
||
0.4.13 2009-11-04 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* include/nuttx/mtd.h. Added a simple interface definition to support some
|
||
FLASH, EEPROM, NVRAM, etc. devices.
|
||
* driver/mtd/m25px.c. Added a driver for SPI based FLASH parts M25P64 and M25P128.
|
||
* configs/stm3210e-eval/usbserial. Add a USB serial configuration for the STM32.
|
||
Depends on the STM32 USB driver.
|
||
* arch/arm/src/cortexm3/up_switchcontext.S & up_svccall.c. Made an improvement
|
||
to context switching. There are two types of context switches: interrupt
|
||
context switches and background/user context switches. This change should
|
||
improve the performance of those background/user context switches by a factor
|
||
of about two.
|
||
* arch/arm/src/stm32/: fix several typos in the serial logic. It turns out
|
||
that these typose don't make any difference as long as you use only one
|
||
serial port and all uarts are configured the same. But the typos are bugs
|
||
waiting to happen in any other configuration.
|
||
* arch/arm/src/stm32/: You have to configure CTS/RTS function pins for USART
|
||
2 and USART 3 even if you are not using flow control.
|
||
* arch/arm/src/stm32/stm32_usbdev.c: Added a USB device-side driver for the
|
||
STM32. NOTE: This is an early release of the USB driver. There is at least
|
||
one known issue. The examples/usbserial test only executes correctly under
|
||
certain conditions (see the full bug description in the TODO list).
|
||
* arch/arm/src/stm32/stm32_rcc.c: Fixed an error in clock initialization.
|
||
On some boards (none of mine), the HSE (high speed external clock) delay
|
||
loop times out if the optimization level is high. The STM32 then falls
|
||
back to the HSI (internal clock), and the system clock is too slow by a
|
||
factor of 11.1%. This was fixed by simply add the volatile storage class
|
||
to the timeout loop counter
|
||
* arch/arm/src/stm32/stm32_irq.c: Fixed a critical bug in the interrupt
|
||
control logic. The wrong register was being used for interrupts in a
|
||
certain range. Worked fine until you try to use an interrupt in that
|
||
range!
|
||
|
||
4.14 2009-12-02 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32/stm32_gpio.c: Add support for configure an input GPIO
|
||
to generate an EXTI interrupt.
|
||
* config/stm3210e-eval/src/up_buttons.c: Add support for on-board buttons.
|
||
* include/nuttx/rwbuffer.h: Add generic support for read-ahead buffering
|
||
and write buffering that can be used in any block driver.
|
||
* include/nuttx/wqueue.h: Added a generic worker thread that can used to
|
||
defer processing from an interrupt to a task.
|
||
* include/nuttx/sdio.h: Defines a generic SD/SDIO interface can can be
|
||
bound to a MMC/SD driver to provide SDIO-based MMC/SD support.
|
||
* drivers/mmcsd/mmcsd_sdio.c: Provides an SDIO-based MMC/SD driver.
|
||
* arch/arm/src/stm32/stm32_sdio.c: Provides an STM32 implementation of
|
||
the SDIO interface defined in include/nuttx/sdio.h.
|
||
* fs/fs_mount.c: Correct error handling logic. If the bind() method
|
||
fails, then a reserved node is left in the tree. This causes subsequent
|
||
attempts to mount at the location to fail (reporting that the node
|
||
already exists). This is a problem for block drivers for removable
|
||
media: The bind method could fail repeatedly until media is inserted.
|
||
* arch/arm/src/stm32/chip.h & stm32_dma.c: Fixed several definitions
|
||
that can cause compilation errors when DMA2 is enabled.
|
||
* arch/arm/src/stm32/stm32_dma.c: Integrated and debugged STM32 DMA
|
||
functionality that was added in 0.4.12.
|
||
* configs/stm3210e-eval/usbstorage: Add a configuration to exercise
|
||
the STM32 with the USB mass storage device class example
|
||
(examples/usbstorage).
|
||
* configs/mcu123-lpc214x/up_usbstrg: Move LPC-specific code from
|
||
examples/usbstorage to configs/mcu123-lpc214x.
|
||
* configs/stm321e-eval/up_usbstrg: Add STM32-specific logic for the
|
||
examples/usbstorage test.
|
||
* arch/arm/src/stm32/stm32_usbdev.c: Fix bugs in STM32 USB device-side
|
||
driver: (1) Need to disconnect after reset received, (2) Status setup
|
||
to recover from stall on TX endpoint.
|
||
|
||
5.0 2009-12-21 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/hc: Adding framework to support m68hc11/12
|
||
* configs/demo9s12ne64: Configuration to support Freescale DEMO9S12NE64
|
||
development board (MC9S12NE64 m68hcs12 processor).
|
||
* drivers/mtd/ftl.c: A FLASH translation layer (FTL) has been implemented.
|
||
This layer will convert a FLASH MTD interface into a block driver that
|
||
can be used with any file system. Good performance of this layer will
|
||
depend upon functioning write buffer support!
|
||
NOTE: FTL support is untested as of the initial check-in.
|
||
* Numerous minor changes for m68hc12 to eliminate compilation errors and
|
||
warnings due to the fact that it uses 16-bit integer types and for casts
|
||
between uint32 (32-bits) and an mc68hc12 pointer (16-bits).
|
||
* sys/types: Size of off_t and blkcnt_t should not depend on size of
|
||
int in the architecture; Removed non-standard type STATUS
|
||
* include/: Added header files stdint.h, stdbool.h, cxx/cstdint, and
|
||
cxx/cstdbool
|
||
* Changed ALL references to non-standard fixed-size types (like uint32,
|
||
ubyte, etc.) to standard types (like uint32_t, uint8_t, etc.) from
|
||
stdint.h. Use type bool and {true, false} from stdbool. This effected
|
||
most of the files in the system! Almost all configurations have been
|
||
re-built and many have been re-verified in order to get confidence in
|
||
these changes.
|
||
* graphics/ and examples/nx: Fix numerous build errors that have been
|
||
introduced lately. NXGL has suffered some bit-rot from not being used
|
||
in some of the most recent ports.
|
||
* The misc/pascal NuttX add-on package has been updated to use the new
|
||
standard types from stdint.h and stdbool.h and re-integrated with NuttX.
|
||
The released pascal-2.0 will be the first version that contains the
|
||
compatible changes.
|
||
* arch/arm/src/lm3s/lm3s_ethernet.c: Fixed an important bug in the LM3S
|
||
Ethernet driver: If full packet is received, the packet-too-big check
|
||
will fail because it needs to subtract 6 from the packet size (to
|
||
account for the 2-byte packet length and the 4-byte packet FCS in the
|
||
FIFO).
|
||
* net/accept.c: Fixed a bad assertion (only happens when debug is enabled).
|
||
* net/send.c net/uip/uip_tcpseqno.c: Fixed a critical error in the TCP/IP
|
||
logic. The NuttX port of uIP imcludes logic to send data ahead without
|
||
waiting for ACKs from the recipient; this greatly improves throughput.
|
||
However, the packet sequence number was not being updated correctly and,
|
||
as a result, packets were not be ACKed by the recipient and transfers
|
||
would sometimes stall. This is a very important bug fix (in fact, I
|
||
don't understand how TCP/IP worked at all without this fix???)
|
||
* include/nuttx/arch.h and arch/*/common/up_udelay.c: Change argument
|
||
of up_udelay() to type useconds_t to avoid warnings when sizeof(int)
|
||
is 16-bits.
|
||
* drivers/mmcsd/*: Add casts in constant expressions to avoid warnings
|
||
when sizeof(int) is 16-bits.
|
||
|
||
5.1 2010-01-30 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lpc313x and arch/arm/include/lpc313x: Added framework
|
||
to support the NXP LPC3131.
|
||
* Add configs/ea3131. The LPC3131 port for the Embedded Artist EA3131
|
||
(LPC3131) is code complete and waiting for me to get hardware in
|
||
hand.
|
||
* arch/arm/src/sam3u, arch/arm/include/sam3u, and configs/sam3u-ek -
|
||
Added the basic framework needed to begin a port for the SAM3U-EK
|
||
development board.
|
||
* lib/lib_crc32.c: Add CRC32 logic by Gary S. Brown to lib/. This is
|
||
the larger (but faster) table look-up version of the CRC32 algorithm.
|
||
* configs/ea3131/tools: Added a tool to create a image suitable for
|
||
use with the LPC313x bootloader.
|
||
* configs/sam3u-3k/ostest: Completed verification of the basic NuttX
|
||
OS test for the SAM3U.
|
||
* arch/arm/src/common/up_createstack: stack was always been cleared
|
||
when it was allocated. This is a good feature for monitoring the
|
||
stack during debug, but really hurts thread start-up performance.
|
||
Clearing is now done if CONFIG_DEBUG=y only. Changes was only made
|
||
for arm, but really should be made for all architectures.
|
||
* configs/sam3u/nsh: Added NSH configuration for SAM3U
|
||
|
||
5.2 2010-03-18 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/sam3u/sam3u_pio.c: Fix an address calculation error
|
||
that caused ports B & C to get mapped to the PIOA base address.
|
||
This is an important bugfix! (a patch is available)
|
||
* arch/arm/src/lpc313x/lpc313x_boot.c: Fix an error in the vector
|
||
initialization was causing a memory fault.
|
||
* lib/lib_strtod.c: Add strtod()
|
||
* lpc3131/ea3131: Several bring fixes submitted by David Hewson. The
|
||
lpc3131 is almost there! Thanks David!
|
||
* arch/arm/src/arm/up_head.S: Corrected backward conditional compilation
|
||
that selects if vectors are located at 0x0000:0000 or 0xffff:f000.
|
||
This fixes the last show stopper bug in the lpc313x bring-up.
|
||
* configs/ea3131/nsh: Added a NuttShell (NSH) configuration for the
|
||
EA3131.
|
||
|
||
5.3 2010-04-11 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lpc313x/lpc313x_usbdev.c: USB driver for the LPC313x
|
||
contributed by David Hewson.
|
||
* configs/ea3131/src/up_ubstrgc.c, configs/ea3131/usbserial,
|
||
configs/ea3131/usbstorage: USB storage and USB serial example support
|
||
contributed by David Hewson.
|
||
* Several important compilation error fixes in lpc313x and (dualspeed) USB
|
||
code also contributed by David Hewson.
|
||
* arch/arm/src/sam3u/sam3u_dmac.c: DMA support for the AT90SAM3U.
|
||
* arch/arm/src/sam3u/sam3u_hsmci.c: SD memory card support for AT90SAM3U
|
||
(Neither the DMA nor the HSMCI driver are functional on the initial checkin).
|
||
* drivers/usbdev: Several important fixes to the USB mass storage driver
|
||
submitted by David Hewson.
|
||
* configs/olimex-lpc2378, arch/arm/include/lpc2378, and arch/arm/src/lpc2378 -
|
||
Basic port of the NXP 2378 on the Olimex board contributed by
|
||
Rommel Marcelo.
|
||
* arch/arm/src/sam3u/sam3u_internal.h: Fixed a critical bug in the AT91SAM3U
|
||
PIO decoding. No PIOs greater than 15 could be used on any port! Obviously,
|
||
no one has been using this port.
|
||
|
||
5.4 2010-04-23 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* include/nuttx/lcd.h: Defines an LCD interface.
|
||
* graphics/nxglib/fb and lcd: Support LCD and framebuffer rasterizers for NX.
|
||
* configs/sam3u-ek/src/up_lcd.c: LCD driver for LCD on SAM3U-EK development
|
||
board.
|
||
* configs/sam3u-ek/nx: NX graphics configuration for the SAM3U-EK
|
||
|
||
5.5 2010-05-09 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/net/enc28j60.c: Microchip ENC28J60 SPI Ethernet chip driver.
|
||
(untested on original check-in).
|
||
* configs/olimex-str7p11/nettest: examples/nettest configuration using
|
||
the ENC28J60 driver on the Olimex STMicro STR-P711.
|
||
(unverified on original check-in)
|
||
* configs/olimex-str7p11/src/up_enc28j60.c: Add ENC28J60 initialization
|
||
logic.
|
||
* configs/olimex-str7p11/src/up_spi.c: Fixed some bugs; added support
|
||
for ENC28J60.
|
||
* arch/arm/src/str7x/str7x_xti.c: Add basic XTI support (external
|
||
interrupts).
|
||
* arch/arm/src/lm3s and arch/arm/include/lm3s: Add definitions for
|
||
LM3S6965
|
||
* configs/lm3s6965-ek: Add configuration for Stellaris LM3S6965
|
||
Evaluation Kit (including basic examples/ostest configuration)
|
||
* lib/lib_dtoa.c and lib/lib_dtoa.c: printf will not print floating
|
||
point values if you select CONFIG_LIBC_FLOATINGPOINT in your
|
||
configuration file. Contributed by Yolande Cates. NOTE: these
|
||
floating point operations have not been well tested and may not
|
||
be portable to all floating point implementations.
|
||
* configs/lm3s6965-ek/nsh: Added NuttShell (NSH) configuration for
|
||
the LM3S6965 Evaluation Kit. Includes both serial and telnet
|
||
interfaces.
|
||
* net/net_close.c: Correct a UDP reference counting error
|
||
|
||
5.6 2010-06-05 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/lcd/p14201.c: Driver for RiT P14201 series 128x96 4-bit OLED.
|
||
* configs/lm3s6965-ek/nx: NX graphics configuration for the LM3S6965
|
||
Ethernet Evaluation Kit.
|
||
* graphics/: Numerous fixes to get the P14201 4-bpp grayscale display
|
||
working (there may still be some minor issues .. see the TODO list).
|
||
* arch/arm/include/lpc17xx and arch/arm/src/lpc17xxx: Began port for
|
||
NXP LPC1768. As of the 5.6 release, there is a complete set of
|
||
LPC17xx header files defining all bits in all LPC17xx registers,
|
||
but little else (I still do not have hardware in hand).
|
||
* drivers/mtd/m25px.c: Add support for M25P1 flash part (See NOTE)
|
||
* include/nuttx/i2c.h: Extended I2C interface definition to handle
|
||
multiple transfers (See NOTE).
|
||
* include/nuttx/usbdev.h: Corrected an important macro definition
|
||
needed to correctly handle USB null packet transfers (See NOTE).
|
||
* arch/arm/src/lpc313x: New drivers: I2C and SPI. Plus several
|
||
important LPC313x USB bug fixes (See NOTE).
|
||
|
||
NOTE: Contributed by David Hewson.
|
||
|
||
5.7 2010-06-22 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/nucleus2g: Add ostest configuration for the Nucleus 2G
|
||
LPC1768 board from 2G Engineering (http://www.2g-eng.com/)
|
||
* arch/arm/src/lpc17xx: Added basic LPC17xx boot-up logic,
|
||
interrupt handling, and GPIO configuration.
|
||
* configs/nucleus2g/ostest: Completed bring-up of LPC1768 on
|
||
the Nucleus2G board using the examples/ostest
|
||
* configs/nucleus2g/nsh: Added and verified a NuttShell (NSH)
|
||
configuration for the LPC1768 on the Nucleus2G board.
|
||
|
||
5.8 2010-07-18 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/nucleus2g/src/up_nsh.c and up_ssp.c: Add support
|
||
for SPI-based MMC/SD cards and integrate into the NSH example.
|
||
* arch/arm/src/lm3s/lm3s_vectors.S: Correct vectors for GPIOC & D
|
||
interrupts.
|
||
* arch/arm/src/lpc17xx/lpc17_clockconfig.c: Power was not being
|
||
provided to GPIO module. This is a critical bugfix!
|
||
* arch/arm/src/lpc17xx/lpc17_serial.c: Improved logic to handle
|
||
missed TX interrupts.
|
||
* arch/arm/src/lpc17xx/lpc17_ssp.c: Fix a hard fault during SSP
|
||
initialization.
|
||
* configs/nucleus2g/src/up_led.c: Change how LEDs are controlled
|
||
so that they can be used both for NuttX instrumentation and
|
||
by application software.
|
||
* include/net/uip/igmp.h and uip-igmp.h: Add header files ini
|
||
preparation for NuttX IGMP support
|
||
* net/uip/uip_igmp*.c: Add IGMP support (untested on initial
|
||
checkin).
|
||
* examples/igmp: Add a trivial test for IGMP (much more is needed)
|
||
* configs/nucleus2g/usbserial and usbstorage: Add USB configurations
|
||
for testing purposes.
|
||
* arch/arm/src/common/up_internal.h, cortexm3/up_assert.c,
|
||
*/*_vectors.S: Correct compilations errors when CONFIG_ARCH_INTERRUPTSTACK
|
||
is enabled (feature still not tested)
|
||
|
||
5.9 2010-08-25 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* examples/nsh/nsh_telnetd.c: Fix compilation errors that happen
|
||
when both DHCPC and TELNETD are enabled in the Nuttshell.
|
||
* graphics/nxglib/fb/nxglib_moverectangle.c: Fix a logic error
|
||
that caused an uninitialized variable warning. I still don't
|
||
have a test to prove that the changes are correct.
|
||
* configs/olimex-lpc2378: Add support for the CodeSourcery toolchain
|
||
under Linux (contributed by Alan Carvalho de Assis).
|
||
* arch/arm/src/lpc17xx/lpc17_gpio.c: Fix an important GPIO configuration
|
||
bug: When attempting to set no pull-up or pull-down (floating),
|
||
it would, instead, select pull-down.
|
||
* arch/arm/src/lm3s/lm3s_gpioirq.c: Fix warning for returning a value
|
||
from functions returning void (contributed by Tiago Maluta).
|
||
* netutils/dhcpc/dhcpc.c: lease_time was not in host order
|
||
* examples/uip/main.c: if DHCPC is selected, this example now shows
|
||
the assigned IP address.
|
||
* arch/arm/src/lm3s and arch/arm/include/lm3s: Definitions for the
|
||
TI LM3S9B96 contributed by Tiago Maluta.
|
||
* arch/arm/src/lm3s/lm3s_gioirq.c: Fix a logic error in the address
|
||
table lookup.
|
||
* arch/arm/src/lm3s/lm3s_gioirq.c: Also needs to enable the global
|
||
GPIO interrupts.
|
||
* arch/arm/src/lm3s/lm3s_internal.h and lm3s_gpio.c: Fixed the encoding
|
||
of GPIO port number that limited support for GPIO ports to 8
|
||
* sched/pg_*.c and *.c and include/nuttx/page.h: Implemented the
|
||
common, core logic for on-demand paging. See
|
||
http://www.nuttx.org/NuttXDemandPaging.html for details.
|
||
* drivers/usbdev/usbdev_serial.c: Correct compilation errors that
|
||
occur if CONFIG_USBDEV_DUALSPEED is selected.
|
||
* configs/ea3131/pgnsh: Add an NSH configuration with on-demand paging
|
||
enabled. This is not expected to be a functionality configuration (at
|
||
least not yet); it was created in order to debug the on-demand paging
|
||
feature.
|
||
* configs/ntosd-dm320/*/Make.defs: Codesourcery and devkitARM toolchains
|
||
now supported for the Neuros OSD.
|
||
* configs/ntosd-dm320 and arch/arm/src/dm320: Add support for the
|
||
Neuros production OSD (changes contributed by bf.nuttx).
|
||
|
||
5.10 2010-09-07 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/ea3131/locked: Create logic to support a two pass build
|
||
process: The first pass forces critical logic into the locked text
|
||
region, the second pass builds the NuttX executable more-or-less as
|
||
normal.
|
||
* Makefile, arch/arm/src/Makefile, configs/ea3131: Add logic to
|
||
support a two-pass final link. This logic is only in place in
|
||
the arch/arm/src/Makefile for now.
|
||
* arch/arm/src/lpc17xx/lpc17_internal.h: Add missing parentheses in
|
||
macros definitions (patch submitted by Tiago Maluta).
|
||
* Documents/NuttxPortingGuide.html, configs/README.txt, etc. -
|
||
Replaced CONFIG_EXAMPLE with CONFIG_APP_DIR (see documents for
|
||
description). This allows NuttX application code to be built
|
||
outside of the examples/ directory.
|
||
|
||
For people who have their own configurations and/or Makefiles,
|
||
you will need to make a couple of changes:
|
||
|
||
- Replace all occurrences of CONFIG_EXAMPLE=foobar with
|
||
CONFIG_APP_DIR=examples/foobar in all of the configuration
|
||
files.
|
||
- Replace any occurrences of examples/$(CONFIG_EXAMPLE) with
|
||
$(CONFIG_APP_DIR)
|
||
- Replace any occurrences of lib$(CONFIG_EXAMPLE)$(LIBEXT)
|
||
with libapp$(LIBEXT) in your Makefiles.
|
||
- Check any other occurrences of CONFIG_EXAMPLE.
|
||
|
||
* arch/arm/src/lpc313x/lpc313x_spi.c: Fix compilation error when
|
||
when CONFIG_DEBUG is enabled.
|
||
* arch/arm/src/lm3s and arch/arm/include/lm3s: Support for the
|
||
lm3s8962 contributed by Larry Arnold.
|
||
* configs/lm328962-ek: Support for the TI/Stellaris EKC-LM3S8962
|
||
board (also contributed by Larry Arnold).
|
||
* arch/arm/src/lpc313x/lpc313x_boot.c: The call to lpc313x_boardinitialized()
|
||
should not be conditioned on CONFIG_ARCH_LEDs being defined!
|
||
* arch/arm/src/lpc313x/: APB0 and APB1 cannot lie in different
|
||
sections; they are too close together.
|
||
* arch/arm/src/lpc313x/lpc13x_boot.c: Resetting all of the clocking
|
||
had a side effect of wiping out the first 6 words of memory where the
|
||
interrupt vectors are located (and also not resetting the fractional
|
||
dividers). This is not usually noticeable because the IRQ vectors
|
||
are after this point, but really causes problems if you want to handle
|
||
data and prefectch aborts which are within this zeroed region.
|
||
|
||
5.11 2010-10-01 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/ea3131/src/up_fillpage.c: Added new configuration item
|
||
CONFIG_PAGING_BINPATH. If CONFIG_PAGING_BINPATH is defined, then it
|
||
is the full path to a file on a mounted file system that contains
|
||
a binary image of the NuttX executable. Pages will be filled by
|
||
reading from offsets into this file that correspond to virtual
|
||
fault addresses. up_fillpage.c implements logic to perform page
|
||
files using the CONFIG_PAGING_BINPATH file.
|
||
* configs/mbed: Add configuration to support the mbed.org LPC1768
|
||
board (Contributed by Dave Marples).
|
||
* sched/sem_wait.c and sem_waitirq.c: Eliminate a race condition
|
||
that can occur when a semaphore wait is interrupt by a signal.
|
||
(see email thread: https://groups.yahoo.com/neo/groups/nuttx/conversations/messages/530)
|
||
* drivers/mtd/at45db.c: Add a driver for the Atmel AT45DB161D 4Mbit
|
||
SPI FLASH part (untested on initial check-in).
|
||
* arch/arm/src/lm3s and arch/arm/include/lm3s: Corrections for the
|
||
lm3s8962 port contributed by Larry Arnold. That port is purported
|
||
to work correctly with these changes in place.
|
||
* examples/ostest/prioinherit.c: Need to reinitialize globals if
|
||
test is ran repeatedly in a loop.
|
||
* configs/ez80f910200zco: Updated to used ZDS-II 4.11.1
|
||
|
||
5.12 2010-10-26 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/avr: Add a place to support AVR family processors.
|
||
* arch/avr/include/avr32 and arch/avr/src/avr32: Add support for AVR32
|
||
(all of the AVR32 is a work in progress).
|
||
* arch/avr/include/at32uc3 and arch/avr/src/at32uc3: Add support
|
||
for the AVR32 UC3A/B family of AVR32 MCUs.
|
||
* configs/avr32dev1: Add support for the Atmel AVR32DEV1 board featuring
|
||
the AT32UC3B0256 MCU. This board is produced by www.mcuzone.com.
|
||
* include/stdlib.h, lib/Makefile, lib/lib_abs.c, lib/lib_labs.c,
|
||
lib_labs.c, lib_llabs.c, lib_imaxabs.c: Add abs(), labs(), llabs(), and
|
||
imaxabs().
|
||
* Add include/inttypes.h
|
||
* arch/hc/src/mc9s12ne64: This hcs12 port grew a few more files. But it
|
||
is still a long way from complete.
|
||
* arch/*/src/*/*_sigdeliver.c: Fixed a serious error in the signal
|
||
trampoline logic. Essentially, interrupts are re-enabled while the
|
||
signal handler executes, but the logic to re-disable the interrupts
|
||
before returning from the signal handler trampoline was missing. Under
|
||
certain circumstances, this can cause stack corruption. This was
|
||
discovered by David Hewson on an ARM9 platform, but since the code
|
||
has been leveraged, the bug has been propogated from ARM to Cortex-M3,
|
||
AVR32, M16C, SH1, ZNEO, eZ80, Z8, and Z80 -- almost every architecture.
|
||
The correction has been incorporated for all architectures but only
|
||
verified on a few.
|
||
|
||
5.13 2010-11-09 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* lib/lib_strnlen.c: Added POSIX 2008 strnlen() function. Contributed
|
||
by Michael Hrabanek.
|
||
* Fix wild, consistent naming error. For some reason, I called the at32uc3*
|
||
parts at91uc* everywhere. Fixed by changing lots of files and directories.
|
||
* configs/avr32dev1/ostest: The AVR32 port now successfully passes the
|
||
examples/ostest. We have a good AVR32 port!
|
||
* configs/avr32dev1/nsh: Added a configuration to support the NuttShell
|
||
(NSH). As of this writing, here is a problem receiving serial data (this
|
||
is, very likely, my hardware setup).
|
||
* lib/lib_open.c: Fix an error in fdopen when a valid file descriptor does
|
||
not refer to an open file.
|
||
* configs/olimex-lpc1766stk: Add support for the Olimex LPC1766-STK
|
||
development board. The OS test and NSH configurations (only) have been
|
||
verified.
|
||
|
||
5.14 2010-11-27 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/olimex-lpc1766stk/nettest: Add examples/nettest configuration to
|
||
verify the LPC17xx Ethernet driver currently under development.
|
||
* arch/arm/src/lpc17xx/lpc17xx_ethernet.c/.h: Began development of
|
||
the LPC17xx Ethernet driver. Driver in CVS functional after 2010-11-23.
|
||
* sched/timer_settime.c: Fix an error in set-up of a one-shot POSIX timer. It
|
||
was using the repititive timer value (which is zero in the one-shot case),
|
||
always resulting in a 10Ms timer! Found and fixed by Wilton Tong.
|
||
* arch/arm/src/lpc17xx/lpc17_vector.S, stm32/stm32_vector.S, lm3s/lm3s_vector.S,
|
||
sam3u/sam3u_vector.S: Fixed a hard fault problem that can occur if certain
|
||
types of interrupts are pending at the time another interrupt returns
|
||
(SYSTICK). This has not been verified on all plaforms, but is a critical
|
||
fixed that is needed by all Cortex-M3 NuttX users.
|
||
* configs/olimex-lpc1766stk/thttpd: Add a THTTPD configuration for the
|
||
Olimex LPC2766-STK board. Verified successfully.
|
||
* net/uip/uip_tcpappsend.c: Correct an important logic bug in some uIP state
|
||
data the is used to manage retransmissions. The uIP logic was incompatible
|
||
with the retransmission logic of net/send.c in one place. The final error
|
||
was that the final packet in a sequence of packets was too large! In the
|
||
THTTPD example, this would leave some garbage at the bottom of the display
|
||
(or worse). I don't know why I haven't see this bug before???
|
||
* net/uip/uip_tcpinput.c: The change to uip_tcpappsend.c unmasked an
|
||
additional error in the TCP sequence number handling. This sympom was that
|
||
the send() function would hang with outstanding, unacknowledged data (with
|
||
no re-transmit requests). The was due to differences in sequence number
|
||
handling in send() and in uip_tcpinput.c; uip_tcpinput.c thought (incorrectly)
|
||
that all of the bytes were acknowledged; send.c knew that they were not.
|
||
|
||
5.15 2010-12-12 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* net/uip/uip_tcpaddsend.c and net/send.c: Another place where the TCP sequence
|
||
number problem "fixed" in 5.14 might occur.
|
||
* net/send.c: Check if the destination IP address is in the ARP table. If
|
||
not, then don't consider the packet sent. It won't be, an ARP packet will go
|
||
out instead. This improves behavior, for example, on the first GET request
|
||
from a browser.
|
||
* arch/arm/src/lpc17xx/lpc17_emacram.h and lpc17_allocateheap.c: The Ethernet
|
||
logic was using all of AHB SRAM Bank0 for Ethernet packet buffers (16K). An
|
||
option was added to limit the amount of SRAM used for packet buffering and to
|
||
re-use any extra Bank0 memory for heap. configs/olimex-lpc1766stk/nettest
|
||
now uses only 8K at the beginning of Bank0; the 8K at the end of Bank0 is
|
||
included in the heap
|
||
* arch/arm/src/lpc17xx/lpc17_ssp.c: Fix compilation errors when SSP1 is
|
||
selected.
|
||
* configs/olimex-lpc1766stk/nsh: Enable network and SD/MMC card support in
|
||
NSH. Networking and telnetd interface as well as SPI-based microSD are
|
||
now functional.
|
||
* examples/nsh/nsh_netinit.c: Fix NSH bug. If CONFIG_NET is selected, but
|
||
CONFIG_EXAMPLES_NSH_TELNETD is not selected, then the network is never
|
||
initialized and bad things happen if you try to ping.
|
||
* drivers/lcd: Add header files for the Phillips PCF8833 LCD controller and
|
||
for the Epson S1D15G10 LCD controller. A driver for the Nokia 6100 LCD is
|
||
coming.
|
||
* include/nuttx/spi.h and almost all other SPI files: Added an optional
|
||
cmddata() method to the SPI interface. Some devices require an additional
|
||
out-of-band bit to specify if the next word sent to the device is a command
|
||
or data. This is typical, for example, in "9-bit" displays where the 9th bit
|
||
is the CMD/DATA bit. The cmddata method provides selection of command or data.
|
||
* drivers/lcd/p14201.c: Now uses the cmddata() method of the SPI interface.
|
||
* arch/arm/src/lpc17xx/lpc17_usbdev.c: LPC17xx USB driver now appears to
|
||
to be fully functional. examples/usbstorage configuration verified (the
|
||
examples/usbserial configuration is untested).
|
||
* drivers/usbdev/usbserial.c and usbstorage.c: All USB class drivers need
|
||
to call DEV_CONNECT() when they are ready to be enumerated. That is,
|
||
(1) initially when bound to the USB driver, and (2) after a USB reset.
|
||
* drivers/lcd/nokia6100.c: A driver for the Nokia 6100 LCD. This driver
|
||
has not be verified as of the initial check-in.
|
||
* configs/olimex-lpc1766stk/nx: A NX graphics configuration for the Olimex
|
||
LPC1766-STK board using the Nokia 6100 LCD driver. This configuration has
|
||
not been verified as of the initial check-in.
|
||
* include/nuttx/spi.h: the SPI_SETBITS macro was calling the setmode method.
|
||
This is a very important bug-fix in some usages.
|
||
|
||
5.16 2011-01-10 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* include/nuttx/usb: Created new directory. Moved all usb-related header
|
||
files to this new directory. Created a skeleton for a new USB host header
|
||
file
|
||
* drivers/usbhost: Add USB host "registry" where connect devices can be
|
||
matched with the correct USB class driver.
|
||
* arc/arc/src/lpc17xx/lpc17_usbhost.c: Add a simple USB host driver for
|
||
the NXP lpc17xx.
|
||
* drivers/usbhost: Add generic USB device enumeration logic.
|
||
* drivers/usbhost: Add a USB host class driver for the (Bulk-Only) USB
|
||
Mass Storage Class.
|
||
|
||
5.17 2011-01-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* include/nuttx/usb: rename usb_storage.h to storage.h.
|
||
* arch/arm/src/lpc17xx/lpc17_usbhost.c: Add support for low-speed devices.
|
||
* drivers/usbhost/usbhost_skeleton.c: Template for new class drivers
|
||
* include/nuttx/usb/hid.h and drivers/usbhost/usbhost_hidkbd.c: New
|
||
files for HID keyboard support.
|
||
* arch/arm/src/lpc17xx/lpc17_usbhost.c: Will now handle multiple
|
||
concurrent transfers on different endpoints (still only one TD per
|
||
endpoint). All methods are protected from re-entrancy; lots of re-
|
||
structuring in preparation for interrupt endpoint support.
|
||
* arch/arm/src/lpc17xx/lpc17_usbhost.c: Add support for periodic
|
||
interrupt transfers.
|
||
* examples/hidkbd: Added a simple test for the USB host HID keyboard
|
||
class driver.
|
||
* configs/olimex-lpc1766stk/hidkbd: Added a configuration to build the
|
||
USB host HID keyboard class driver test for the LPC17xx.
|
||
* Ran the tool CppCheck (http://sourceforge.net/apps/mediawiki/cppcheck) and
|
||
fixed several errors in the code identified by the tool.
|
||
|
||
5.18 2011-02-27 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Incorporate several uIP patches from http://gitweb.aeruder.net/?p=uip.git;a=summary.
|
||
- Lost SYNACK causes connection reset
|
||
- Fix missing UDP stats for sent/received packets
|
||
- Added support for Cygwin as development/test platform.
|
||
* configs/demo9s12ne64: Integrate new buildroot-1.9 m8s12x toolchain.
|
||
* 'uname -o' is used throughout the build logic in bash scripts and also in
|
||
Make.defs files in order to distinguish between Cygwin and Linux. However,
|
||
the -o option is not standard and is not supported under, for example, OS-X or
|
||
Solaris. This was solved by changing all 'uname -o' references to the more
|
||
complex: 'uname -o 2>/dev/null || echo "Other"'
|
||
* drivers/usbhost/usbhost_enumerate.c: Add logic to get the VID and PID. This
|
||
is necessary in order to support vendor-specific USB devices.
|
||
* examples/wlan, configs/olimex-lpc1766stk/wlan, drivers/usbhost/usbhost_rtl8187.c,
|
||
Add infrastructure to support RTL18187 wireless USB.
|
||
* configs/nucleus2g: backed out USB host changes... wrong board.
|
||
* Renamed arc/hc/include/mc9s12ne64 and src/mc9s12ne64 to m9s12. That name is
|
||
shorter and more general.
|
||
* The NuttX repository has been converted to SVN and can now be found here
|
||
http://svn.code.sf.net/p/nuttx/code/trunk/
|
||
* configs/mbed/hidkbd: Added USB host support for the mbed LPC1768 board; add
|
||
a USB host HID keyboard configuraion.
|
||
* drivers/usbhost/hid_parser.c: Leverages the LUFA HID parser written by
|
||
Dean Camera.
|
||
* examples/nsh: Correct an usage of getopt(): If you stop calling getopt()
|
||
before all parameters are parsed, you can leave getopt() in a strange state.
|
||
* include/nuttx/video/fb.h: Restore missing RGB type that was accidentally removed
|
||
when Nokia 6100 support was added.
|
||
* Rename arch/pjrc-8051 to arch/8051
|
||
* configs/ne64badge: Add a configuration for the Future Electronics Group
|
||
NE64 Badge development board (Freescale MC9S12NE64)
|
||
* Changes contributed by Uros Platise:
|
||
- Add support for the STM32F103RET6
|
||
- configs/vsn: Support for the ISOTEL NetClamps VSN V1.2 ready2go sensor
|
||
network platform
|
||
* arch/hc, configs/ne64badge: Development is complete for the Freescale
|
||
mc9s12ne64 on the Future Electronics Group NE64 /PoE Badge board. Howeve,
|
||
this port remains untested until I figure out this BDM / Code Warrior
|
||
and paged build thing
|
||
* Added a new 'kill' command to NSH that will support sending signals to
|
||
running NuttX tasks.
|
||
|
||
5.19 2011-03-12 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/stm32/stm32_idle.c: During idle times, the STM32 now uses the
|
||
WFI instruction to sleep in a reduced power mode until the next interrupt
|
||
occurs (Contributed by Uros Platise).
|
||
* NSH: 'mem' command renamed to 'free'. Output is now more similar to the
|
||
Linux 'free' command.
|
||
* NSH: Correct a redirection bug in NSH. The following would not work; it
|
||
resulted in a hang after the 'cat /dev/fifo':
|
||
|
||
nsh> mkfile /dev/fifo
|
||
nsh> cd /tmp # /tmp is a mounted RAM disk
|
||
nsh> cat /dev/fifo > test.txt &
|
||
nsh> echo "This is a test" > /dev/fifo
|
||
|
||
The error was caused because (1) there was a path that resulted in stdout
|
||
being closed (the "hang") and also (2) the 'cat' command was always outputting
|
||
to stdout, not to the redirected file descriptor. Now:
|
||
|
||
nsh> cat test.txt
|
||
This is a test
|
||
|
||
* drivers/pipes/pipe_common.c: Driver open method was not returning an EINTR
|
||
error when it received a signal. Instead, it just re-started the wait. This
|
||
makes it impossible to kill a background pipe operation from NSH.
|
||
* include/stdint.h: Correct some errors in conditional compilation (submitted
|
||
by Johannes Hampel).
|
||
* arch/arm/lpc17xx/lpc17_idle.c: Uses the same logic as the STM32: uses the
|
||
WFI instruction to sleep in a reduced power mode until the next interrupt
|
||
occurs.
|
||
* configs/olimex-lpc1766stk: Added an LED encoded to indicate if the LPC1766
|
||
is in sleeping.
|
||
* examples/mm: This is a simplified version of the "built-in" memory manager
|
||
test of mm/mm_test.c. It is simplified because it does not have access to
|
||
the internals of the memory manager as does mm/mm_test.c, but it has the
|
||
advantage that it runs in the actual NuttX tasking environment (the
|
||
mm/mm_test.c only runs in a PC simulation environment).
|
||
* drivers/mmcsd_sdio.c/h: Several corrections submitted by Uros Platise.
|
||
* arch/x86: Provide support for x86 architectures. Support for the i486
|
||
architecture under QEMU is provided under arch/x86/include/i486,
|
||
arch/x86/include/qemu, arch/x86/src/i486, and arch/x86/src/qemu.
|
||
* configs/qemu-i486: "Board" support configurations for verifying the QEME
|
||
i486 port.
|
||
* arch/arm/src/stm32/stm32_spi.c: Correct base address of SPI3 (reported by
|
||
Uros Platise).
|
||
* drivers/mmcsd/mmcsd_sdio.c: Correct a loop termination condition (also
|
||
reported by Uros Platise).
|
||
* drivers/mtd/ramtron.c: Driver for SPI-based RAMTRON NVRAM devices FM25V10
|
||
(and others). Contributed by Uros Platise.
|
||
* examples/nsh and tools/mkromfsimg.sh: Add support for platform-specific
|
||
ROMFS-based NSH start-up scripts.
|
||
* drivers/serial/uart_16550.c and include/nuttx/serial/uart_16550.h: Support
|
||
for a generic 16550 UART.
|
||
* configure/qemu-i486/nsh: QEMU NSH example.
|
||
* ../apps: The apps directory add-on was created by Uros Platise. It
|
||
supports a set of end-user applications than can be executed on top of
|
||
NSH. Think of it this way: In a buckled-up embedded application, your
|
||
end-user programs will probably have their own dedicated start-up logic.
|
||
But, during development, you might want to have you applications
|
||
available and executable from the NSH command line. This apps/ addon
|
||
(and NSH hooks) was contributed by Uros to accomplish just that.
|
||
* sched/sched_waitpid() and include/sys/wait.h: Provides a simple and
|
||
very incomplete implementation of waitpid(). waitpid() is only available
|
||
if CONFIG_SCHED_WAITPID is defined in your configuration file.
|
||
* sched/atexit.c and sched/exit.c: The atexit function is not frequently
|
||
used. In order to save a few bytes, it is now conditioned on
|
||
CONFIG_SCHED_ATEXIT. It your application is currently using atexit(),
|
||
you will need to add CONFIG_SCHED_ATEXIT to your configuration file.
|
||
* drivers/net/slip.c: Add a SLIP driver (untested on initial check-in).
|
||
* configs/olimex-lpc1766stk/slip-httpd: An example that uses SLIP to
|
||
provide a serial-port based THTTPD web server.
|
||
|
||
6.0 2011-03-21 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* lib/lib_fopen(): fopen() was not returning the correct errno value
|
||
when the underlying open() failed.
|
||
* include/net/uip/uip-arch.h: The uIP interface has been extended
|
||
slightly so that drivers can be concurrenly filling and sending
|
||
packet buffers. This capability was needed by the SLIP driver.
|
||
* drivers/net/slip.c: Several corrections and some re-design of
|
||
of the driver.
|
||
* apps/ChangeLog.txt: the apps/ directory now has its own ChangeLog.
|
||
* configs/vsn:
|
||
- IDLE LED blinking fix
|
||
- Added board power off function
|
||
* arch/arm/src/stm32/stm32_gpio.c and stm32_internal.h: Fixed
|
||
PullUp/Down Input Configuration.
|
||
* arch/arm/src/lpc17xx/lpc17_serial.h: Now supports Auto-RTS and
|
||
Auto-CTS modes. This is needed to support SLIP.
|
||
* drivers/net/slip.c: SLIP is now basically functional on the
|
||
LPC17xx with some caveats as described in the TODO list under
|
||
LPC17xx.
|
||
* arch/x86/include/i486/irq.h: Fix irqrestore() macro... it was not
|
||
correctly re-enabling interrupts.
|
||
* arch/x86/src: Fix numerous problems with i486/QEMU context
|
||
switching. Basically, the logic was missing the cases to handle
|
||
the differing stack frames when a priority change occurs and when
|
||
no priority change occurs.
|
||
* configs/qemu-i486/ostest and nsh: The QEMU i486 port is complete.
|
||
it now passes the OS test and supports the NuttShell (NSH).
|
||
* misc/drivers: Created a new directory to hold non-BSD licensed
|
||
drivers that may be added into NuttX via an installation script.
|
||
* drivers/usbhost/usbhost_rtl8187.c: A decision was made to
|
||
incorporate code taken from the Linux kernel. That changes the
|
||
licensing on this module to GPL. To avoid licensing contamination,
|
||
this driver was moved to misc/drivers/rtl8187x *prior* to adding
|
||
any of the GPL logic. There is an INSTALL.sh script at the location
|
||
where the GPL driver(s) can be re-installed into the NuttX source
|
||
tree. By re-installing the driver, you agree to the GPL licsensing
|
||
and all of its implications.
|
||
* Makefile, apps/Makefile, tools/configure.sh: add logic to copy
|
||
configs/<board>/<config>/appdir to apps/.config and to simply the
|
||
application configuration logic.
|
||
* examples/nsh and apps/nshlib: Move the core NuttShell (NSH) logic
|
||
out of the exemples directory and into the apps/ directory where
|
||
it belongs.
|
||
* apps/Makefile and configs/*/appconfig: Use '=' as the delimiter
|
||
instead of '/' so that sub-directories in apps/ can be used.
|
||
* apps/vsn: Move all VSN apps to apps/vsn.
|
||
* nuttx/examples moved to apps/examples
|
||
|
||
6.1 2011-04-11 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/include/lpc17xx/irq.h and arch/arm/src/lpc17xx/lpc17_gpio*.c:
|
||
Fix several bugs in the GPIO interrupt logic. Submited by
|
||
Decio Renno.
|
||
* Initialization for the CONFIG_APPS_DIR is now supported during the
|
||
earlier, 'context' build phase.
|
||
* arch/arm/src/lpc17_gpioint.c: Finish coding of the LPC17xx GPIO
|
||
interrupt logic.
|
||
* net/netdev_unregister.c: Add capability to un-register a network
|
||
device.
|
||
* drivers/mmcsd/mmcsd_sdio.c: extra effort to correctly handle cases
|
||
without the SDcard (but one issue still exists in STM32)
|
||
* arch/arm/src/stm32/stm32_tim.*: Added basic timer support TIM1..TIM8
|
||
with output PWMs and interrupt logic
|
||
* config/vsn/src: added basic support for Sensor Interface (GPIO and
|
||
PWM Power Output, and the sif utility program)
|
||
* fs/: Reorgnize header so that file systems can be built outside
|
||
of the nuttx source tree
|
||
* apps/namedapp/binfs.c: Create a tiny filesystem that can be used
|
||
to show the internal named apps under /bin.
|
||
* fs/fs_opendir.c: Correct an error that occurs when a file system is
|
||
mounted in the root directory. This was discovered while mounting
|
||
the named app's /bin directory.
|
||
* lib/: Move all source files into a subdirectory of lib/ named after
|
||
the header file in which the library function is prototyped.
|
||
* sched/ and lib/pthread/: Move pthread attribute-related interfaces
|
||
from sched/ to lib/pthread where they more appropriately belong.
|
||
* sched/ and lib/semaphore/: Move some semaphore-related interfaces
|
||
from sched/ to lib/pthread where they more appropriately belong.
|
||
* syscall/: The beginnings of an optional syscall Kernel interface.
|
||
* tools/mksyscall.c: Add a tool that will auto-generate syscall proxies
|
||
and stubs from a comma-separated-value (CSV) data file.
|
||
* arch/arm/src/cortexm3/mpu.h: Add a header file describing the Cortex-M3
|
||
MPU registers.
|
||
* Numerous modifications to the build system. Various people have reported
|
||
build problems since the re-organization and release of NuttX-6.0. I am
|
||
unable to replicate the build problems in my environment, but the changes
|
||
have be incorporated in hope of correcting the build issues in other
|
||
environments.
|
||
* drivers/i2c/st_lis331dl.c: I2C-based driver for the LIS331DL MEMS
|
||
motion sensor. Contributed by Uros Platise.
|
||
* Makefile: The NuttX build system will now supported building NuttX as two
|
||
separately linked images: (1) a kernel-mode RTOS image, and (2) a user-
|
||
mode application image that communicates to the RTOS kernel via system
|
||
calls. A lot more still must be done.
|
||
* user_initialize(): Eliminated the user_initialize() initialization hook.
|
||
It is difficult to maintain and redundant: Board level initialization
|
||
an up_initialize() provide the same kind of capability.
|
||
* arch/*/include/*/type.h: On some compilers, char defaults as unsigned.
|
||
Explicitly add signed to integer types if signed is what is required.
|
||
* arch/*: For all architectures -- Global register state save structure
|
||
(usually called g_current_regs) should be marked volatile; Added general
|
||
capability to support nested interrupts (not fully realized for all
|
||
architectures).
|
||
* sched/task_create.c: Add support for starting kernel-mode thread.
|
||
* drivers/usbdev/usbdev_serial.c: Fix reported by Sheref Younan. USB
|
||
was being reset after serial driver was closed. As a result, you could
|
||
no reopen the serial driver.
|
||
* configs/lpcxpresso-lpc1768: Add a board configuration for the Embedded
|
||
Artists LPCXpresso LPC1768 board.
|
||
|
||
6.2 2011-05-06 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lpc17xx/lpc17_gpioint.c: Correct errors in logic that maps
|
||
and IRQ number into a register bit number.
|
||
* Makefile: Fix an error introduced in the top-level Makefile in NuttX-6.1.
|
||
This error only shows up if you have a /tftpboot directory. Then the
|
||
make will fail with an obscure error about not being able to stat pass2.
|
||
* configs/lpcxpresso-lpc1768/nsh: Add an NSH configuration for the
|
||
LPCXpresso board.
|
||
* configs/*/ld.script: Removed 'sh_link not set for section .ARM.edix' for
|
||
a few of the builds. In you have this warning, it can be removed with the
|
||
following change to the ld.script file:
|
||
|
||
+ __exidx_start = ABSOLUTE(.);
|
||
.ARM.exidx : {
|
||
- __exidx_start = ABSOLUTE(.);
|
||
*(.ARM.exidx*)
|
||
- __exidx_end = ABSOLUTE(.);
|
||
} >sram
|
||
+ __exidx_end = ABSOLUTE(.);
|
||
|
||
* arch/arm/src/lpc17xx: Correct some typos/bugs in configuration of LPC17xx
|
||
UART2 and UART3.
|
||
* nuttx/clock.h: Replace all references to the global variable g_system_timer
|
||
with clock_systemtimer() (currently just a macro that that returns g_system_timer).
|
||
* lib/string/strrch.c: Would fail if the searched-for character were the first
|
||
character in the string.
|
||
* tools/version.sh and mkversion.c: Tools to manage a NuttX version number
|
||
file
|
||
* sched/clock_getutc() and lib/time/lib_time.c: Add support for 1 second UTC
|
||
interface.
|
||
* net/net_dup2.c and include/nuttx/net.h: The conditional compilation for
|
||
'#if CONFIG_NFILE_DESCRIPTOR > 0' was wrong in both of these files. It should
|
||
be '#if CONFIG_NFILE_DESCRIPTORS > 0'. This causes a dup2() failure in THTTPD
|
||
and a failure to get a CGI page. The consequence can be a very serious bug!
|
||
* configs/lpcxpresso-lpc1768/usbstorage, thttpd, and dhcpd: Add an USB storage,
|
||
THTTPD web server, and DHCP server configurations for the NXP LPCXpresso board.
|
||
* drivers/lcd/ug-9664hswag01.c and ssd1305.h: Add support for Univision UG-9664HSWAG01
|
||
OLED with Solomon Systech SD1305 LCD controller.
|
||
* configs/lpcxpresso-lpc1668/nx: Add a NX graphics configuration for the LPCXPRESO
|
||
board.
|
||
* graphics/nxglib/nxglib_nonintersecting.c: Fix some single bit errors in
|
||
calculation of non-intersecting regions. This was causing an anomaly
|
||
in examples/nx in column 0.
|
||
* drivers/mtd/rammtd.c: Added a RAM based MTD driver. This RAM driver simulates
|
||
FLASH and is useful for testing purposes.
|
||
* arch/arm/src/arm/up_head.S: Fix backward conditional compilation. This cause
|
||
the configs/mx1ads configuration to fail to build but does not appear to affect
|
||
any other ARM9 build.
|
||
* fs/nxffs: Adding a tiny, wear-leveling FLASH file system for NuttX. This
|
||
file system is intended to be small and will have some limitations. The
|
||
implementation is incomplete on initial checkin.
|
||
* apps/examples/nxffs and configs/sim/nxffs: Add a test a a configuration that
|
||
will be used to verify NXFFS.
|
||
* fs/fat/fs_fat32.c and fs_fat32util.c: Incorpated two bugs with fixed provided
|
||
by Sheref Younan. Thanks!
|
||
* fs/nxffs: After a couple of weeks of testing and bug fixes, NXFSS appears
|
||
stable and functional.
|
||
|
||
6.3 2011-05-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Remove clock_getutc(). It is replaces with clock_gettime(CLOCK_ACTIVETIME).
|
||
Add other RTC related changes provided by Uros Platise.
|
||
* arch/arm/src/stm32/stm32_flash.c: Add support for access to on-chip STM32
|
||
FLASH; beginning of integration with NXFFS (Uros Platise).
|
||
* arch/mips: Added directory structure for PIC32 support
|
||
* configs/pcblogic-pic32mx: Add directory structure for PCB Logic PIC32MX board
|
||
* apps/include: Move include/apps to apps/include. A symbolic link is created at
|
||
build time
|
||
* Makefile: Removed support for Pascal pcode interpreter. Support for that
|
||
interpreter has been moved to apps/interpreter/Makefile.
|
||
* tools/mkdep.sh: Should not report an error if there are no files on the command
|
||
line. This happens normally in certain configurations.
|
||
* drivers/usbhost: Sheref Younan reported an error in the error handling when
|
||
connection to a USB device fails. In certain fail cases, the logic would try
|
||
to free the device class instance twice, the first was okay, but the second
|
||
caused a crash.
|
||
* graphics/nxbe/nxbe_colormap.c: Fix error noted by Bassem Fahmy. The function
|
||
nxbe_colormap was change to nxbe_configure... apparently "search-and-replace"
|
||
error. This error was not noticed before because most NX platforms do not use
|
||
colormapping.
|
||
* arch/rgmp and configs/rgmp. Add architecture support and build
|
||
configuration for RGMP. RGMP is a project for running GPOS and
|
||
RTOS simultaneously on multi-processor platforms. See
|
||
http://rgmp.sourceforge.net/wiki/index.php/Main_Page for further
|
||
information about RGMP.
|
||
* lib/stdio/lib_fclose.c: Must flush all buffered data when the file is closed.
|
||
Instead, it was discarding the buffered data.
|
||
* lib/stdio: All output stream logic was modified to support CONFIG_STDIO_LINEBUFFER.
|
||
If standard C buffered I/O is enabled (CONFIG_STDIO_BUFFER_SIZE > 0), then this
|
||
option may be added to force automatic, line-oriented flushing the output buffer
|
||
for putc(), fputc(), putchar(), puts(), fputs(), printf(), fprintf(), and vfprintf().
|
||
When a newline is encountered in the output string, the output buffer will be
|
||
flushed. This (slightly) increases the NuttX footprint but supports the kind of
|
||
behavior that people expect for printf.
|
||
|
||
6.4 2011-06-06 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* lib/drivers/cc1101: Add initial, functional CC1101 wireless driver
|
||
(contributed by Uros Platise)
|
||
* arch/mips and configs/pcblogic-pic32mx: The MicroChip PIC32MX port is now
|
||
code complete and ready to begin testing. Unfortunately, it looks like
|
||
testing will be delayed due to tool issues (My PICkit 2 will not work the
|
||
the MPLAB debugger on PIC32; I will need to get a PICkit 3).
|
||
* drivers/net/e1000.c/h: A PCI-based E1000 Ethernet driver submitted
|
||
by Yu Qiang.
|
||
* lib/net/lib_inetaddr.c: An implementation of the inet_addr() function
|
||
submitted by Yu Qiang.
|
||
* arch/arm/src/lpc31xx and arch/arm/include/lpc31xx: Renamed from lpc313x
|
||
to make name space for other famiy members.
|
||
* arch/arm/*/lpc31xx: Added support for the LPC315x family (untested).
|
||
* sched/task_exithook.c: Functionality performed when a task exits or is
|
||
deleted has been moved to a common file task_exithook.c. Now exit()
|
||
functionality (like flushing I/O and calling registered atexit()
|
||
functions, etc.) will be performed when a task is deleted as well.
|
||
* mm/: Added support for CONFIG_MM_SMALL. Each memory allocation has a
|
||
small allocation overhead. The size of that overhead is normally
|
||
determined by the "width" of the address support by the MCU. MCUs
|
||
that support 16-bit addressability have smaller overhead than devices
|
||
that support 32-bit addressability. However, there are many MCUs
|
||
that support 32-bit addressability *but* have internal SRAM of size
|
||
less than or equal to 64K. In this case, CONFIG_MM_SMALL can be
|
||
defined so that those MCUs will also benefit from the smaller, 16-
|
||
bit-based allocation overhead.
|
||
* lib/string/lib_strndup.c: Add standard strndup() library function.
|
||
* net/getsockname.c: Added standard getsockname() to return the local
|
||
address associated with a socket.
|
||
* lib/stdio/lib_asprintf.c: Add asprintf()
|
||
* configs/olimex-lpc1766stk/ftpc: Add a configuration to support
|
||
testing of the FTP client shell.
|
||
* fd/fs_fdopen.c and net/net_checksd.c: Add support so that fdopen may
|
||
be used with socket descriptors.
|
||
* net/recvfrom.c: Fix an error found in receiving small files via FTP:
|
||
The small file is received a buffered in the readahead buffer, then the
|
||
socket is disconnected. When the app calls recvfrom, the socket is
|
||
already disconnected and the buffered data is stranded. Now, recvfrom
|
||
will continue to return success after the socket is disconnected until
|
||
the readahead buffer is drained.
|
||
* olimex-lp1766stk/ftpc/defconfig: Many configurations have the MTU
|
||
(CONFIG_NET_BUFSIZE) set to very small numbers, less then the minimum
|
||
MTU size that must be supported -- 576. This can cause problems in
|
||
some networks: CONFIG_NET_BUFSIZE should be set to at least 576 in
|
||
all defconfig files. This has only been fixed in this defconfig file.
|
||
|
||
6.5 2011-06-21 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/avr/src/avr and arch/avr/include/avr: Adds general support for
|
||
the Atmel 8-bit AVR family.
|
||
* arch/avr/src/atmega and arch/avr/include/atmega: Adds support for the
|
||
Atmel AVR ATMega family.
|
||
* arch/avr/src/at90usb and arch/avr/include/at90usb: Adds support for the
|
||
Atmel AVR AT90USB family.
|
||
* configs/micropendous3: Adds a board configuration for the Opendous
|
||
Micropendous 3 board. This board may be populated with several different
|
||
members of the Atmel AVR AT90USB family.
|
||
* configs/amber: This is a placehold for the Atmel ATMega128 Amber Web
|
||
Server from SoC Robotics. Not much present in this directory on initial
|
||
check-in.
|
||
* configs/teensy: Adds a board configuration for the PJRC Teensy++ 2.0 board
|
||
that features an Atmel AT90USB1286 MCU.
|
||
* fs/fat: Offsets, sector numbers, etc. need to be off_t, not size_t. size_t
|
||
is intended to be the maximum size of a memory object, not a file offset. This
|
||
does not make any difference except on systems (like the AVR) where size_t
|
||
is only 16-bits.
|
||
|
||
6.6 2011-07-11 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/mtd/ramtron.c, net/net_checksd.c, fs/fs_fdopen.c, and include/nuttx/mii.h:
|
||
Several structural changes made to get a clean compile under the ez80 ZDS-II
|
||
toolchain (no design changes).
|
||
* drivers/usbhost/usbhost_storage.c: Incorpated bugfixes reported by Sheref H.
|
||
Younan: (1) Read capacity logic read largest block, not the number of blocks
|
||
and was, therefore, off by one, and (2) Some devices stall of get Max LUN request
|
||
if they support only a single LUN. Logic now assumes a single LUN if the get
|
||
Max LUN request fails.
|
||
* include/nuttx/arch.h, lib/stdio/lib_libvsprintf.c, lib/stdio/lib_fputs.c: Add
|
||
a new configuration option to support extracting strings from FLASH or EEPROM
|
||
or other memories where the string data cannot be accessed by simply de-referencing
|
||
a string pointer.
|
||
* arch/sim/src/up_romgetc.c: Used to test the basic logic to access strings
|
||
without directly de-referencing a string pointer.
|
||
* arch/avr/src/avr/up_romget.c: Used to access strings that lie in the first
|
||
64K of FLASH (But I still haven't figured out how to get strings to reside in
|
||
FLASH without using the PROGMEM attribute).
|
||
* configs/teensy/src/up_spi.c: Correct reading of SD CD and WP pins (was reading
|
||
the wrong register. AVR SPI now appears to be functional.
|
||
* arch/avr/src/at90usb/at90usb_usbdev.c: Correct USB initialization. Interrupts
|
||
were being enabled BEFORE the interrupt handler was attached.
|
||
* configs/sure-pic32mx: Add a configuration for the Sure Electronics, "Advanced USB
|
||
Storage Demo Board," Model DB-DP11215 (http://www.sureelectronics.net/goods.php?id=1168).
|
||
This board features the MicroChip PIC32MX440F512H MCU. (Untested on initial
|
||
check-in).
|
||
* configs/stm3210e-eval/nsh2: Add another NSH configuration for the STM32 with
|
||
some different properties.
|
||
* CONFIG_NSH_CONDEV: Add a configuration option to allow using a different character
|
||
device (such a a different UART) for the NSH interface. This allows, for example,
|
||
debug output to come from the console device while using another device for NSH.
|
||
There are some issues on initial check-in: NuttX doesn't have termios and the
|
||
console device has special properties that make using NSH awkward. Examples:
|
||
No CR-LF expansion, no character echoing, no command line editting.
|
||
* arch/arm/src/stm32/stm32_lowputc.c and stm32_serial.c. Correct seversl bugs
|
||
involving serial port configuration. These bugs are only critical if you
|
||
are trying to using multiple UARTs on STM32.
|
||
* configs/stm3210e-eval/src/up_lcd.c: Add a driver for the STM3210E-EVAL's LCD.
|
||
* configs/stm3210e-eval/nx: Add NX configuration for the STM3210E-EVAL.
|
||
* configs/nuttx/arch.h (and arch/arm/src/stm32, configs/*/src/up_buttons.c):
|
||
Standardize interfaces exported for button support and button interrupts.
|
||
* configs/stm3210e-eval/src/up_buttons.c: Add interrupting button support.
|
||
Also fixes a few errors in STM3210E-EVAL button decoding.
|
||
* configs/stm3210e-eval/buttons: Add a configuration to exercise STM3210E-EVAL
|
||
buttons.
|
||
* arch/arm/src/stm32/stm32_gpio.c: GPIO interrupt handling for pin
|
||
numbers were being aliased: 5-9 together and 10-15 together. Extended
|
||
the logic to peform decoding of GPIO interrupts and unique dispatching
|
||
for all 16 pins.
|
||
* configs/stm3210e-eval/nxtext: Add a configuration for the apps/examples/nxtext
|
||
example. This example focuses on placing text on the background while
|
||
pop-up windows occur. Text should continue to update normally with or without
|
||
the popup windows present.
|
||
* arch/arm/src/common/up_checkstack.c: ARM stack overflow checking submitted
|
||
by Hal Glenn.
|
||
* arch/arm/src/lpc17xx: Changes to compile successfully with no serial console
|
||
(also submitted by Hal Glenn).
|
||
* graphics/nxfonts/nxfonts_convert.c: Fixed a critical bug that caused
|
||
when renderer some fonts with bits-per-pixel > 8
|
||
* graphics/nxbe/nxbe_move.c: Fixed an error in the graphics move logic (This
|
||
was a previously untested interface). Basically, there is some confusion
|
||
between use of (x,y) as a relative offset or as an absolute position.
|
||
* graphics/nxbe/nxbe_close.c: Fixed an important graphics system bug:
|
||
When a window is closed, the display was not being updated. The old
|
||
window graphic was left on the display for a time.
|
||
|
||
6.7 2011-08-02 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Makefile: Added a export target that will bundle up all of the NuttX
|
||
libraries, header files, and the startup object into an export-able
|
||
tarball.
|
||
* arch/arm/src/lpc17xx/lpc17_can.h: Correct some typos in the CAN
|
||
register definitions.
|
||
* drivers/serial/serialirq.c: Correct an error that can occur if the
|
||
serial RX buffer becomes full. Data is now discarded in that case;
|
||
before, leaving data in the hardware would cause infinite interrupts
|
||
one most MCUs since you must read the data in order to clear the
|
||
interrupt.
|
||
* arch/arm/src/lpc17xx/lpc17_can.c: Added a CAN driver contributed by
|
||
Li Zhuoyi (Lzyy).
|
||
* include/stddefs.h and sys/types: Added type wchar_t.
|
||
* fs/fat/fat_fat32dirent.c: Move all FAT directory operations to this
|
||
new file; Implement VFAT long file name support.
|
||
* fs/fat/fat_fat32dirent.c: The configuration CONFIG_FAT_LCNAMES has
|
||
been around for some time but never tested until now. This setting
|
||
will mimic the NT 8.3 file name behavior: File names or extensions
|
||
may be all upper or all lower case (but not mixed). If
|
||
CONFIG_FAT_LCNAMES is not selected, all filenames are strictly upper
|
||
case.
|
||
* configs/stm3210e-eval/nsh2: Console is back on UART1; Added
|
||
examples/nx as an NSH "built-in" command as a demonstration.
|
||
* fs/fat/fs_fat32dirent.c: Fix an important bug in the directory
|
||
allocation (fat_allocatedirentry()). I looks like it could be
|
||
initializing the wrong sectors! NOTE: This function was in
|
||
fs_fat32utils.c in earlier releases.
|
||
* arch/arm/src/stm32_sdio.c: Correct an important DMA-related bug;
|
||
SDIO transfer completion events and DMA completion eventes were
|
||
not being coordinated correctly.
|
||
* configs/stm3210e-eval/nsh2: Enable FAT long file name support
|
||
* sched/sem_timedwait.c: Add the standard sem_timedwait() interface.
|
||
* graphics/nxfonts/nxfonts_getfont.c, nxfonts_bitmap.c,
|
||
Makefile.source, and include/nuttx/nxfonts.h: Support for multiple
|
||
fonts included. A new interface, nxf_getfonthandle() takes a font
|
||
ID and returns a handle that is now used at all other font interfaces
|
||
to specify which of the multiple fonts to use.
|
||
* arch/arm/src/lpc17xx/lpc17_syscon.h: Fix typo (reported by Li Zhuoyi).
|
||
* configs/stm3210e-eval/nsh2: Extended to support two new commands:
|
||
'msconn' will connect the USB mass storage device; 'msdis' will
|
||
disconnect the USB storage device.
|
||
* tools/bdf-converter.c. This C file is used to build the bdf-converter
|
||
program. The bdf-converter program be used to convert fonts in Bitmap
|
||
Distribution Format (BDF) into fonts that can be used in the NX graphics
|
||
system.
|
||
* include/nuttx/nx: Move all NX header files from include/nuttx to
|
||
include/nuttx/nx.
|
||
* drivers/usbdev/usbdev_usbstorage.c and arch/arm/src/stm32/stm32_usbdev.c:
|
||
Correct a memory leak when the USB mass storage driver is connected and
|
||
then disconnected from the target. The write requests were not being
|
||
freed. NOTE that the unregister logic in the STM32 needed to call
|
||
stm32_reset() in order to return the write requests to the USB mass
|
||
storage driver; it is possible that a similar but could exist for other
|
||
architectures.
|
||
* graphics/nxfonts/nxfonts_*.h: Add serveral more new fonts
|
||
* arch/z80/src/ez80/ez80_serial.c: Fix some errors in serial driver
|
||
setup for UART1 (submitted by Paul Osmialowski).
|
||
* drivers/input/tsc2007.c and include/nuttx/input/*: Add a generic NuttX
|
||
touchscreen interface. Add a driver for the TI TSC2007 touchscreen
|
||
controller.
|
||
* graphics/nxglib/lcd and fb: Add low level routines to set single pixels.
|
||
* lib/math/lib_b16atan2.c: Add a fixed precision atan2() function
|
||
* graphics/nxglib/nxglib_splitline.c: Add logic to divide a wide line into
|
||
trapezoidal components.
|
||
* graphics/nxmu/nx_drawline.c, graphics/nxsu/nx_drawline.c,
|
||
graphics/nxtk/nxtk_drawlinewindow.c, graphics/nxtk/nxtk_drawlinetoolbar.c:
|
||
Add new line drawing interfaces (untested).
|
||
|
||
6.8 2011-08-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lpc17xx/chip.h: Fix some chip memory configuration errors
|
||
for the LPC1764, LPC1756, and LPC1754 (submitted by Li Zhuoy (Lzyy))
|
||
* arch/arm/src/lpc17xx/lpc17_can.h: Revised CAN driver submitted by
|
||
Li Zhuoy (Lzyy). The driver now supports both CAN1 and CAN2.
|
||
* arch/arm/sim/up_lcd.c: Add a simulated LCD driver.
|
||
* configs/stm3210e-eval/nxlines: Added a configuration to build
|
||
examples/nxlines.
|
||
* arch/graphics: Used apps/examples/nxlines to (finally) verify the NX
|
||
trapezoid drawing functions and (wide) line drawing functions.
|
||
* arch/rgmp and configs/rgmp. Yu Qiang has ported RGMP to the OMAP4430 (arm)
|
||
pandaboard and release the new RGMP 0.3 version. The main changes are: (1)
|
||
Separate configs/rgmp/x86 and configs/rgmp/arm configuration directory, and
|
||
(2) Extract architecture dependent code in arch/rgmp/include and
|
||
arch/rgmp/src into corresponding x86/ and arm/ directories.
|
||
* arch/arm/src/kinetis, arch/arm/include/kinetis, configs/kwikstick-k40:
|
||
Add a directory structure to support the port to the Kinetis KwikStik-K40.
|
||
There is no real substance in the initial check-in; only the directory
|
||
structure and skeleton files (Code complete on 8/15/11).
|
||
* arch/arm/include/armv7-m, arch/arm/src/armv7-m, etc.: Rename all cortexm3
|
||
directories and files to armv7-m; Change name of of all CORTEXM3 constants
|
||
to ARMV7M. This is a major namespace change needed to cleanly support the
|
||
ARM Cortex-M4 which is also in the ARMv7 M Series (specifically, ARMv7E-M).
|
||
* sched/sig_initialize.c, sig_received.c, and mq_waitirq.c. Fixed several
|
||
critical bugs related to signal handling initialization and for signals
|
||
the wake up tasks that are waiting to send or receive message queues. In
|
||
the first two files, errors would prevent proper allocation of signal-related
|
||
structures from interrupt handlers. In the second, there was missing
|
||
"clean-up" logic after a signal occurred, leaving the message queue in
|
||
a bad state and resulting in PANICs. All are important. (submitted by
|
||
hkwilton).
|
||
* arch/arm/src/kinetis: Added header files defining all Kinetis registers
|
||
and bit fields within all Kinetis registers.
|
||
* configs/twr-k60n512: Add support for the Kinetis K60 Tower board
|
||
(TWR-K60N512).
|
||
* drivers/can.c: Fixed a semaphore overflow problem in the CAN driver
|
||
(reported by Li Zhouy (Lzyy)).
|
||
* 8/18/2011: The basic port to the FreeScale Kinetics TWR-K60N512 board is
|
||
now functional.
|
||
* configs/twr-k60n512: Add Kinetics TWR-K60N512 NSH configuration.
|
||
* drivers/analog and include/nuttx/analog: Add ADC driver infrastructure
|
||
and TI ADS1255 driver developed and submitted by Li Zhouy (Lzyy)).
|
||
* arch/arm/stm32/stm32_sdio.h and drivers/mmcsd/mmcsd.c: Add logic to
|
||
multiplex usage of the GPIO pins (contributed by Uros Platise).
|
||
* configs/twr-k60n512/nsh: Added and verified a NuttShell (NSH)
|
||
configuration for the Freescale, Kinetis TWR-K60N512 board.
|
||
|
||
6.9 2011-09-11 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/kinetis/kinetis_sdhc.c: SDHC driver for Kinetis parts.
|
||
Initially check-in is just a crude port of the STM32 SDIO driver.
|
||
Much more work is needed.
|
||
* graphics/, include/nuttx/nx: Add new NX interfaces for drawing
|
||
circles -- both circular outlines and filled circles.
|
||
* graphic/nxglib/nxglib_spitline.c: Add a "fudge factor" that eliminates
|
||
some problems for rendering nearly horizontal, wide lines. Hmm...
|
||
but I suspect this fudge factor also leads to new problems rendering
|
||
very thin, nearly horizontal lines. More tuning is needed.
|
||
* drivers/analog, include/nuttx/analog, arch/arch/src/lpcxx: (1) Add
|
||
updates to the ADS1255 driver, (2) fix errors from my last merge (sorry),
|
||
(3) Add DAC infrastructure, (4) add AD5410 DAC driver, and (5) add
|
||
LPC17xx ADC and DAC drivers. All contributed by Li Zhuoyi (Lzyy).
|
||
* tools/mkexport.sh: Extended the script that implements the top-level
|
||
'make export' logic. The script now also finds and bundles up all of
|
||
the architecture-specific header files as well.
|
||
* drivers/arch/arm/src/stm32/stm32_i2c.c: Add a reset to the I2C
|
||
initialization logic to prevent spurious interrupts when the I2C
|
||
interrupts are enabled (submitted by Uros Platise).
|
||
* Scripts/makefiles/documents. Several adjustments, corrections and
|
||
typo fixes so that NuttX will build correctly on FreeBSD using the
|
||
ASH shell (submitted by Kurt Lidl).
|
||
* drivers/mtd/flash_eraseall.c: Add a callable function that accepts
|
||
the path to a block driver and then erases the underlying FLASH memory
|
||
(assuming that the block driver is an MTD driver wrapped in the FTL
|
||
layer). Hmmm... this is probably not the best long term solution;
|
||
flash_eraseall() should be a user-callable function that operates
|
||
one driver interfaces; not an internal, OS function that operates
|
||
on directly on block drivers.
|
||
* drivers/bch: Fixed some important bugs in the BCH driver (noted by
|
||
Li Zhuoyi (Lzyy)). This would have effected any large reads or writes
|
||
(larger than the hardware sector size).
|
||
* arch/*/src/Makefile: Use of -print-libgcc-file-name to get path to
|
||
libgcc.a may select the wrong libgcc.a if a multilib toolchain (like
|
||
CodeSourcery) is used. This can be a serious problem and can cause
|
||
crashes on Cortex-M3 if the ARM libgcc is used, for example. The fix
|
||
is to include ARCHCPUFLAGS on the gcc command line when asking it to
|
||
-print-libgcc-file-name.
|
||
* lib/time/lib_gmtimer.c: Correct several calculations that could lead
|
||
to errors in dates.
|
||
* drivers/pm: Add the beginnings of a NuttX power management sub-system.
|
||
* arch/arm/src/stm32/stm32_irq.c: Fix a error introduced in 6.8.
|
||
Timeout calculation uses clock_settime() instead of clock_gettime().
|
||
Pretty gross error, but actually it works with the side effect of setting
|
||
a bad time.
|
||
* drivers/mtd/at24xx.c: Driver for I2C-based at24cxx EEPROM submitted by
|
||
Li Zhuoyi (Lzyy).
|
||
* arch/arm/src/lpc17xx/lpc17_i2c.c: I2C driver for the NXP LPC17xx family
|
||
submitted by Li Zhuoyi (Lzyy)
|
||
* arch/arm/src/stm32_i2c.c: Correct two issues with the STM32 I2C driver:
|
||
(1) Clocking needs to be based on PCLK1, not HCLK and fast speed settings
|
||
need some additional bits; and (2) Correct a hang that will occur on
|
||
I2C1 if FSMC is also enabled.
|
||
* drivers/sensors/lm75.c and include/nuttx/sensors/lm75.h: Add an LM-75
|
||
temperature sensor driver.
|
||
* configs/stm3210e-eval/src/up_lm75.c: Add support for the LM-75 on the
|
||
STMicro STM3210E-EVAL board.
|
||
* sched/clock_gettime.c: Correct an error in the tv_nsec calculation
|
||
that happens only config CONFIG_RTC is enabled.
|
||
* arch/arm/src/stm32/stm32_i2c.c: Correct some bugs related to waiting
|
||
for the I2C STOP condition to be cleared.
|
||
|
||
6.10 2011-10-06 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* lib/stdio/lib_fopen.c: Fix an error in fopen(); the file pointer was not
|
||
being positioned at the end of the file when the "a" and "a+" modes are
|
||
used. There are other issues with the "a+" modes (see the top-level TODO
|
||
list).
|
||
* drivers/usbdev/cdc_serial.c and include/nuttx/usb/cdc.h and cdc_serial.h:
|
||
Add support for the CDC ACM serial device class.
|
||
* fs/fat/fs_fat32.c: Fix a critical bug in the write logic: It a tiny write
|
||
cross a sector boundary, then two sector writes will occur. The first part
|
||
in the first sector may be written to the wrong sector number.
|
||
* fs/fat/fs_fat32util.c: Fix a stray write into the FAT (always sector 964 on
|
||
FAT32). This bug will cause some lost chains. I'm sure this bug could
|
||
corrupt files but at present, the only thing I have seen is that before
|
||
fixing this bug, the Windows chkdsk utility would report these lost chains.
|
||
* arch/arm/src/stm32/stm32_i2c.c: Driver can now operate in a faster polled
|
||
mode (at the expense of using more cpu cycles).
|
||
* arch/arm/src/stm32/stm32_i2c.c: Add trace debug capability. Enabled with
|
||
CONFIG_I2C_TRACE.
|
||
* arch/arm/src/stm32/stm32_i2c.c: Fix another bug where I2C conflicts with FSMC
|
||
being enabled. That time at the tail end of the transaction where there is
|
||
an unfinished stop condition.
|
||
* sched/mq_timedreceive.c and sched/mq_timedsend.c: The count of threads
|
||
waiting on the message queues was not being decremented after a timeout.
|
||
This would cause the accounting logic to become out of sync and the, perhaps,
|
||
an assertion to be triggered. This is an important bug and fixes a
|
||
potential crash when using mq_timedreceived() and mq_timedsend().
|
||
* sched/mq_sndinternal.c: Related to the above, the send logic was incrementing
|
||
the wrong counter when it waited as part of the mq_timedsend.c logic.
|
||
* fs/fat: Fix an error in the long file name logic: If the long file name
|
||
is an even multiple of 13 bytes in length, then it should not include a
|
||
NULL terminating character. Fix contributed by Kaushal Parikh.
|
||
* configs/sim/nx11: Created a separate configuration to build the NX
|
||
example using the a simulated framebuffer driver on an X11 window. This
|
||
example has been verified on Ubuntu 9.09 (it does not work on Cygwin).
|
||
* arch/sim/src/up_touchscreen.c and up_x11eventloop.c: Adds support for a
|
||
simulated NuttX touchscreen device using mouse/pointer feedback from an
|
||
x11 window.
|
||
* configs/sim/touchscreen: Adds a configuration to verify the simulated
|
||
touchscreen driver (Does not work on Cygwin).
|
||
* configs/sam3u/touchscreen: This is the configuration that I plan to use
|
||
to verify the SAM3U-EK touchscreen driver. However, as of this writing,
|
||
there is no touchscreen driver for the board.
|
||
* CONFIG_RTC_HIRES: Add an option to support either a high-resolution RTC
|
||
that completely replaces the system timer tick but may overflow and lose
|
||
time when the MCU is off and also for a low-resolution (1 sec/tick) RTC
|
||
that can run until 2106 with no overflow. But in this latter case, higher
|
||
resolution time must come from the system timer.
|
||
* CONFIG_SYSTEM_UTC: Removed support for the UTC system timer. It just
|
||
doesn't do enough to be worth the CPU cycles or the complexity.
|
||
* CONFIG_SYSTEM_TIME16: Added support for an optional 64-bit system timer.
|
||
* fs/fat/fs_fat32util.c: Add support for FAT date/time stamps; Enabled via
|
||
CONFIG_FS_FATTIME.
|
||
* arch/arm/src/sam3u/sam3u_spi.c: Add an SPI driver for the AT91SAM3U.
|
||
* drivers/input/ads7843e.c and include/nuttx/input/ads7843e.h: Add a
|
||
driver for the TI ADS7843E touchscreen controller.
|
||
* fs/nxffs/nxffs_open.c: Fix an error when a file is open for writing; since
|
||
the file will get deleted it is already exists, there must be a check if
|
||
there are other open references to the file.
|
||
* arch/arm/src/stm32/stm32_sdio.c: Fixed an error where during SDHC
|
||
initialization interrupts were not being re-enabled. Caused more subtle
|
||
errors than you would think.
|
||
* arch/arm/src/stm32/stm32_i2c.c: Fixed an error where I2C timeouts appeared
|
||
to be successful transfers.
|
||
* configs/sim/nsh2: Add another simulated NSH configuration. This one
|
||
supports X11 graphics, C++, and exercises graphic functions as built-in
|
||
commands.
|
||
|
||
6.11 2011-11-12 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/stm32/Make.defs: Don't build stm32_rtc.c if CONFIG_RTC is not
|
||
selected. Doing so will cause errors if other configuration dependencies
|
||
are not met.
|
||
* configs/stm3210e-eval/src/up_lcd.c: Color corrections for SPFD5408B LCD
|
||
do not work with R61580 LCD.
|
||
* configs/pic32-starterkit: Beginning of a configuration for the Microchip
|
||
PIC32 Ethernet Starter Kit. Hmmm.. I don't have a clue how to test this
|
||
with no serial port?!
|
||
* lib/stdio/lib_fclose.c: fclose() always returns an error (EOF) when it
|
||
closes a read-only file. This is because it calls flush() which will
|
||
fail on read-only files. No harm is done other that a bad value is
|
||
returned.
|
||
* arch/sim/src/Makefile: Correct build issue for sim/nsh2 target. Old
|
||
libboard.a was not being cleaned.
|
||
* arch/mips/src/pic32mx/pic32mx-gpio*.c: Add GPIO support for the PIC32MX.
|
||
* configs/sure-pic32mx/src/up_leds.c and up_buttons.c: Add button and LED
|
||
support for the Sure Electronics PIC32MX board.
|
||
* configs/ea3152: Add a configuration for the Embedded Artists LPC3152
|
||
daughter board (with the same base-board used with configs/ea3131)
|
||
* graphics/nxmu/nx_getrectangle.c, graphics/nxsu/nx_getrectangle.c,
|
||
graphics/mxtk/nx_getwindow.c, graphics/nxmu/nx_gettoobar.c: New
|
||
interfaces to read from graphics memory
|
||
* graphics/nxbe/nxbe_bitmap.c: Fix an error in the error handling that
|
||
can cause valid bitmaps to fail to render.
|
||
* include/nuttx/video/rgbcolors.h: Fix errors in some 16- and 8-bit color
|
||
conversion macros.
|
||
* tools/incdir.sh: Fix issues when g++ is used as the compiler. It was
|
||
not being recognized and handled properly.
|
||
* graphics/nxsu/nx_releasebkgd.c: Fix a bad cast that was causing
|
||
problems with the background window was released.
|
||
* fs/nxffs/nxffs_pack.c: Correct a critical bug in the NXFFS file system:
|
||
When repacking the filesystem, there was a missing check to see if an
|
||
inode structure would fit at the end of a block. This is a rare case
|
||
if the block size is large, but can be common for tiny block sizes
|
||
and results in a crash and file system corruption.
|
||
* fs/nxffs/nxffs_initialize.c: Fix an initialize error. If the FLASH
|
||
is full on power-up, NXFFS will fail to initialize correctly.
|
||
* fs/nxffs/nxffs_write.c and nxffs_pack.c: Fix an error that can occur
|
||
when attempt to write to FLASH volume that is completely full but
|
||
has no value inodes on it.
|
||
* drivers/mtd/at24xx.c: Now supports a configurable block size that
|
||
supports using "clusters" of AT24 pages as blocks. This allows bigger
|
||
block sizes and more efficient use of EEPROM when the AT24 is used to
|
||
support a file system (such as NXFFS). (Contributed by Hal Glenn).
|
||
* include/nuttx/video/rgbcolors.h: More fixes to RGB color conversion
|
||
macros.
|
||
* arch/arm/src/common/up_createstack.c and up_usestack.c: For ARM EABI
|
||
the stack must be aligned to 8-byte boundaries. This is necessary for
|
||
passing aligned floating point values under EABI. Fix contributed by
|
||
David Sidrane.
|
||
* Numerous changes and fixes to the PIC32 interrupt handing logic. The
|
||
PIC32 port is almost complete but still not ready for prime time.
|
||
|
||
6.12 2011-12-06 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* fs/fat/fs_fat32util.c and fs_fat32.h: Logic extended to look in up to
|
||
four partitions for a valid FAT file system.
|
||
* drivers/input/tsc2007.c: Add support for 8-bit conversions; make sure
|
||
that A/D converters are active before requesting conversions.
|
||
* drivers/mmcsd0/mmcsd_sdio.c: Increase capacity variable from size_t
|
||
to uin64_t (if available) so that SD cards with capacities greater
|
||
than 4Gb can be supported.
|
||
* fs/fat/fs_fat32dirent.c: The root directory structure is different
|
||
from other directories. When formatted by Windows, it is not initialized
|
||
at all. Some additional special handling is required to initialize the
|
||
root directory entry to interoperate correctly with windows.
|
||
* fs/fat/fs_fat32util.c: In fat_systime2fattime(void) should be
|
||
clock_gettime() and not clock_gettime(). Also, there is a place where
|
||
FAT date is used instead of FAT time. (Thanks to David Sidrane).
|
||
* arch/arm/src/stm32 and arch/arm/include/stm32: Add support for the
|
||
STM32F40xxx family of MCUs.
|
||
* configs/stm3240g-eval: Add framework for the STMicro STM3240G-EVAL
|
||
board.
|
||
* include/sys/types.h: wchar_t is a builtin type in C++ and its
|
||
declaration can cause errors with certain C++ compilers.
|
||
* sched/sig_timedwait.c: Fix signal handling when the returned info
|
||
is NULL. Before this change, it would derefence a NULL pointer
|
||
in this case.
|
||
* graphics/nxfonts/nxfonts_sans17x22.h and nxfonts_sans20x26.h: Add
|
||
some very small sans serif fonts.
|
||
* graphics/nxfonts/nxfonts_sans17x23b.h and nxfonts_sans20x27b.h: Add
|
||
corresponding sans serif bold fonts.
|
||
* drivers/input/ads7843e.c and tsc2007.c: Fix some errors in the poll
|
||
setup error checking that was cloned into both drivers.
|
||
* sched/mq_notify.c: Set errno appropriately on failures. There are
|
||
still several message queue functions that do not set errno!
|
||
* arch/arm/src/stm32: Fixes to several STM32F40xxx files (contributed by
|
||
Mikhail Bychek).
|
||
* configs/stm3210e-eval/src/up_lcd.c: Fix banding problem on the R61580
|
||
LCD
|
||
* configs/stm3240g-eval/ostest: The basic STM32F40xx bringup is functional
|
||
(11/12/06) for the STM3240G-EVAL board and passes the OS test.
|
||
* configs/stm3240g-eval/nsh: Adds a NuttShell (NSH) configure for the
|
||
STM3240G-EVAL board.
|
||
|
||
6.13 2011-12-26 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32/stm32f40xxx_dma.c: Add DMA support for the STM32 F4
|
||
family (untested on initial check-in)
|
||
* arch/arm/src/armv7-m/up_fpu.c: Add logic for saving an restoring VFP
|
||
floating point registers on context switches (but also disable the FPU
|
||
because CodeSourcery doesn't support hard flowing point!)
|
||
* arch/arm/src/stm32/chip/stm32_eth.h: Add Ethernet register definitions
|
||
for the STM32 F4.
|
||
* arch/arm/srcm/stm32/stm32_eth.c: Adds an Ethernet driver for the STM32 F4.
|
||
* arch/arm/srcm/stm32/stm32_dac.c and stm32_adc.c: "Skeleton" files for STM32
|
||
DAC and ADC drivers. The actual logic will come later.
|
||
* arch/arm/srcm/stm32/stm32_eth.c: There may be a few more lurking bugs, but
|
||
the STM32 Ethernet driver appears to be fully functional on the STM3240G-EVAL.
|
||
* arch/arm/srcm/stm32/stm32_eth.c: Fix an error in clearing abnormal interrupt
|
||
events.
|
||
* configs/stm3240g-eval/dhcpd: Add a DCHP daemon configuration for the
|
||
STM3240G-EVAL board.
|
||
* configs/stm3240g-eval/nettest: Add a network test configuration for the
|
||
STM3240G-EVAL board.
|
||
* arch/arm/srcm/stm32/stm32_rtc.c, stm32f10xxx_rtc.c, and stm32f40xxx_rtc:
|
||
Broke out separate drivers to handle the very different RTC implementations
|
||
in the STM32 F1 and F4 family.
|
||
* arch/arm/srcm/stm32/stm32f10xxx_rtc.c: STM32 F4 RTC is functional (12/14/2011)
|
||
* net/uip-arp.c: Fix compilation issue with CONFIG_NET_ARP_IPIN
|
||
* include/nuttx/pwm.h and drivers/pwm.c: Add an interface definition and a
|
||
"upper half" driver for PWM output.
|
||
* arch/arm/src/stm32/stm32_pwm.c: Added a PWM "lower half" driver for the
|
||
STM32. The initial check-in is little more than a framework for the driver.
|
||
* arch/arm/src/stm32/stm32_usbdev.c: Corrected two CRITICAL errors in the USB
|
||
device-side driver: (1) Handling of data overrun condition was wrong. When
|
||
there was no further memory to accept further OUT endpoint data, the driver
|
||
would hang with infinite interrupts; (2) the logic in setting toggle bits
|
||
was not correct. However, this driver has functioned for a long time until
|
||
the particular condition that revealed the bug occurred. My impression is
|
||
that this latter bugfix also fixes some STM32 USB performance problems.
|
||
* configs/hymini-stm32v: A configuration for the HY-Mini STM32v board contributed
|
||
by Laurent Latil. These changes also include support for the STM32F103VCT6.
|
||
* arch/configs/stm3240g-eval/src/up_pwm.c: Add hooks needed to use the new
|
||
apps/examples/pwm test of the STM32 PWM driver.
|
||
* drivers/mtd/mp25x.c: Add ability to use different SPI modes and different
|
||
manufacturers codes. Fix a error in the wait for not busy (submitted by
|
||
Mohammad Elwakeel.
|
||
* arch/arm/src/stm32/stm32_can.c: Add a low-level STM32 CAN driver. (Initial
|
||
check is incomplete). Add loopback support to the driver.
|
||
* arch/arm/src/stm32/stm32_adc.c: The ADC is now functional. A more complete
|
||
driver would require DMA support. I have some questions still about the
|
||
accuracy of the timer-driven sampling.
|
||
* configs/sure-pic32mx/nsh: The PIC32 port is (finally) functional. Add an
|
||
NSH configuration for the Sure PIC32MX board.
|
||
* configs/sure-pic32mx/*/defconfig. Calibrated all PIC32 delay loops.
|
||
* configs/pcblogic-pic32mx/nsh: Add an NSH configuration for the PCBLogic
|
||
PIC32 board.
|
||
* Both PIC32 OS test and NSH configurations have now been verified.
|
||
|
||
6.14 2012-01-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* tools/Makefile.export, mkexport.sh, and configure.sh: Changes submitted
|
||
by Mike Smith to support configuration and 'make export' on MAC OS.
|
||
* arch/arm/src/stm32/stm32_gpio.c: Disabled interrupts while configuring
|
||
GPIO pins so that we have exclusive access to the GPIO configuration
|
||
registers.
|
||
* arch/mips/src/pic32mx/pic32mx_usbdev.c: Add a USB device-side driver
|
||
for the PIC32MX family.
|
||
* arch/arm/src/stm32/stm32_gpio.c: Correct an error in some of the GPIO
|
||
initialization logic. Fix submitted by Mike Smith.
|
||
* configs/olimex-lpc1766stk/src/up_leds.c: Add new interfaces so that is
|
||
CONFIG_ARCH_LEDS are not set, the LEDs may be controlled from application
|
||
logic.
|
||
* configs/olimex-lpc1766stk/src/up_buttons.c: Add support for the buttons
|
||
on the Olimex LPC1766-STK board.
|
||
* Makefile: Added 'apps_clean' and 'apps_distclean' target to simplify
|
||
managing the state of the application directory while in the NuttX directory
|
||
* Documentation/NuttXGettingStarted.html: Added a "Getting Started" Guide
|
||
for NuttX. At present, this is just a stub and it refers to the NuttX
|
||
top-level README.txt file which is the only, real "Getting Started" Guide
|
||
that exists at the time being.
|
||
* arch/arm/src/lpc17xx/lpc17_gpioint.c: Correct an value used as the lower
|
||
end of an IRQ number range test.
|
||
* arch/arm/src/lpc17xx/lpc17_gpio.c: Fix a integer flow problem in shift.
|
||
This error would prevent pins > 15 from being used as interrupt sources.
|
||
* arch/arm/src/stm32/stm32_can.c: The CAN driver has been verified in
|
||
loopback mode on the STM3240G-EVAL board.
|
||
* configs/stm3240g-eval/src/up_adc.c: Complete coding of ADC support for the
|
||
potentiometer on board the STM3240G-EVAL.
|
||
* arch/arm/src/lpc17_can.c: Several CAN driver improvements. Adds support for
|
||
testing in loopback mode. now uses all three transmit buffers for better
|
||
performance.
|
||
* configs/olimex-lpc1766stk/nsh: Now supports the CAN loopback test as an
|
||
optional "built-in" application.
|
||
* sched/irq_attach.c: Fix an issue with disabling interrupts when they are
|
||
detached. For the PIC32, this can't be done because there is a 1-to-many
|
||
relationship between vector numbers and interrupt numbers or different.
|
||
Added a new configuration option CONFIG_ARCH_VECNOTIRQ to at least flag
|
||
the architectures that have this issue and to (at least) avoid doing
|
||
something too wrong.
|
||
* drivers/can.c: Fix a test for buffer full in the generic, "upper half",
|
||
can driver.
|
||
* arch/arm/src/lm3s: Add support for the LM3S6432S2E (Contributed by Mike Smith)
|
||
* configs/lm3s6432-s2: Add support for the TI RDK-S2E (LM3S6432S2E) board
|
||
(Contributed by Mike Smith)
|
||
* configs/stm3240g-eval/src: Add APIs support to support user access to the
|
||
LEDs
|
||
* arch/arm/src/lpc17xx/lpc17_can.c: Add logic to change the CAN bit rate based
|
||
on the NuttX configuration.
|
||
* arch/arm/src/lpc17xx/lpc17_can.c: PCLK divisor is now a configuration
|
||
option.
|
||
* arch/arm/src/stm32/stm32_serial.c and stm32_lowputc.c: Support for
|
||
UART4-5 and USART6 added by Mike Smith. Also includes a more flexible
|
||
way of managing UART pin configurations.
|
||
* include/nuttx/pwm.h, drivers/pwm.c, arch/arm/src/stm32/stm32_pwm.c: Add
|
||
support for pulse count in order to better support stepper motors.
|
||
* arch/arm/src/stm32/stm32_dumpgpio.c: Checking wrong register to see if
|
||
GPIO is enabled. Also not adding the GPIO base address to several offsets.
|
||
* configs/stm32f4discovery: Port to the STMicro STM32F4Discovery board
|
||
(Contributed by Mike Smith).
|
||
* fs/fat/fs_fat32util.c: On a failure to recognize a FAT file system, the
|
||
mount logic should return -EINVAL, not -ENODEV.
|
||
* arch/arm/src/stm32/stm32_tim.c: Support for STM32 F4 32-bit timers
|
||
(Contributed by Mikhail Bychek)
|
||
* lib/stdio/lib_vsprintf.c: Add support for fixed-size fields with floating
|
||
point numbers (Contributed by Mikhail Bychek)
|
||
|
||
6.15 2012-02-12 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32/stm32_pwm.c: Pulse count was limited to 128; now is
|
||
(essentially) unlimited.
|
||
* configs/stm3240g-eval/include/board.h: Input frequencies wrong for all but
|
||
one APB2 timer.
|
||
* arch/mips/src/pic32mx/pic32mx-ethernet.c: The PIC32 Ethernet driver is
|
||
code complete, but still untested.
|
||
* configs/sim/*/Make.defs and arch/sim/src/Makefile: Add support for building
|
||
a 32-bit executable on a 64-bit Linux target.
|
||
* configs/sure-pic32mx/src/up_leds.c: Correct GPIOs used for LEDs. The wrong
|
||
pins were being used.
|
||
* arch/arm/src/stm32/chip/stm32f10xxx_gpio.h: Correct offset to one AFIO EXICR
|
||
register.
|
||
* arch/arm/src/lpc17xx/lpc17_can.c: Added "advanced" configuration options
|
||
to specify the CAN TSEG1 and TSEG2 clock counts specifically.
|
||
* include/nuttx/can.h and drivers/can.c: Add support for extended (29-bit)
|
||
CAN IDs.
|
||
* arch/arm/src/lpc17xx/lpc17_can.c: Add support for extended (29-bit) CAN IDs.
|
||
* arch/arm/src/stm32/stm32_can.c: Add support for extended (29-bit) CAN IDs.
|
||
* include/nuttx/power/pm.h: Move include/nuttx/pm.h into a sub-directory named
|
||
power.
|
||
* drivers/power: Rename the drivers/pm directory to power
|
||
* include/power/battery.h and drivers/battery.c: Add the interface definitions
|
||
for an upper and lower half battery driver. Add the implementation of the
|
||
common upper half battery driver.
|
||
* drivers/power/max1704x.c: Add a driver for MAX17040x battery "fuel gauge"
|
||
* arch/arm/src/stm32/stm32_i2c.c: Add support for I2C3
|
||
* drivers/usbdev/: Lots of name changes: cdc_serial->cdcacm, usbstrg->usbmsc,
|
||
usbser->pl2303
|
||
* drivers/usbdev/composite: Fleshed out support for a composite USB device.
|
||
* drivers/stm3210e-eval/composite and drivers/stm3210e-eval/src/up_composite.c:
|
||
Add a configuration test the USB composite device.
|
||
* include/nuttx/usb/usb.h, drivers/usbdev/composite_descriptors.c, and
|
||
drivers/usbdev/cdcacm_descriptors.c: Add support for the USB Interface
|
||
Association Descriptor (IAD)
|
||
* arch/arm/src/stm32/stm32_i2c.c: Correct a typo in STM32 I2C3 support
|
||
(submitted by Mike Smith)
|
||
* arch/*/src/Makefile: Candidate solution for dependency issue in the board
|
||
sub-directory: By making libboard.a a "phony" target, libboard.a should
|
||
always rebuilt (the end result is worth the small increase in build time)
|
||
(submitted by Mike Smith).
|
||
* include/net/psock.h: Added a new low level socket interface that allows the
|
||
OS to use the socket interface without having a socket descriptor.
|
||
* include/net/psock.h: Removed psock.h. The new interfaces are moved into
|
||
nuttx/net.h which already has similar logic.
|
||
* include/nuttx/usb/usb.h: Can't use 'class' as a field name in USB structures.
|
||
This upsets C++ if usb.h is included. 'class' -> 'classid' in this header
|
||
file and all places that referenced 'class'
|
||
* drivers/usbdev/usbmsc.c: Fixed some backward conditional compilation.
|
||
* sched/on_exit.c: Add support for the on_exit() function.,
|
||
* sched/exit.c, task_exithook.c, task_delete.c, sched_releasetcb.c: Move
|
||
the logic that closes file descriptors sooner in the task shutdown sequence.
|
||
When drivers are closed, they may need to do things that require a fully
|
||
up-and-running task. Some things cannot be done later when the task is
|
||
crippled.
|
||
* lib/dirent: Moved readdir_r() and telldir() from lib/misc to this new
|
||
directory where they belong.
|
||
* lib/termios. Implemented tcsetattr() and tcgetattr().
|
||
* lib/stdio/lib_fgets.c: The old fgets includes some terminal related
|
||
functionality: It handles VT-100 commands, includes a command line editor
|
||
and echo characters back to the terminal. This old, overloaded fgets()
|
||
was renamed readline() and moved to apps/system/readline. The version
|
||
of fgets() in lib/stdio was them simplified and stripped down so that it
|
||
*only* gets a string -- as its description implies.
|
||
* arch/arm/src/lpc214x/lpc214x_usbdev.c: Add corrections suggested by
|
||
David Hewson many, many months ago.
|
||
* configs/mcu123-lpc214x/composite and configs/mcu123-lpc214x/src/up_composite.c:
|
||
Add a configuration to test the USB composite device.
|
||
* configs/stm3240g-eval/Telnetd: Add a configuration for testing the
|
||
Telnet daemon.
|
||
* configs/stm3240g-eval/nsh2: This is another NSH configuration. It differs
|
||
from the original nsh configuration because it does not have an RS-232
|
||
console (only a Telnet console) and SDIO is enabled. This configuration is
|
||
required because the STM3240G-EVAL board cannot simultaneously support
|
||
RS-232 and SDIO due to pin conflicts.
|
||
* lib/string/lib_strcasestr.c: Add strcasestr().
|
||
* lib/stdio/lib_avsprintf.c: Add avsprintf().
|
||
* lib/net/lib_inetntop.c: Add inet_ntop().
|
||
* lib/net/lib_inetpton.c: Add inet_pton().
|
||
* include/pthread.h: Correct PTHREAD_MUTEX_INITIALIZER.
|
||
* fs/fat/fs_fatfs.c: Fix an error in the FAT statfs() implementation that
|
||
was causing some block counts to be reported incorrectly (reported by
|
||
David Sidrane).
|
||
* drivers/ramlog.c: Add a character driver that can substitute
|
||
for /dev/console and or be used for logging debug output when there
|
||
is no serial port available (such as when a Telnet console is used).
|
||
* lib/stdio/lib_syslogstream: Add a stream object that will be used to
|
||
re-direct all debug output to the RAM log if CONFIG_SYSLOG and
|
||
CONFIG_RAMLOG_SYSLOG are defined.
|
||
* lib/misc/lib_dbg.c: Add an interface enabled with CONFIG_DEBUG_ENABLE that
|
||
can be used to turn debug output on and off.
|
||
|
||
6.16 2012-03-10 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/sensors/qencoder.c and include/nuttx/sensors/qencoder.h: Add an
|
||
implementation for a quadrature encoder upper half driver.
|
||
* arch/arm/src/stm32/stm32_qencoder.c/.h: Add a initial implementation of
|
||
a lower-half quadrature encoder driver for the STM32. On initial check-in,
|
||
this is little more than a "skeleton" file.
|
||
* Various files: CAN ISO-11783 support contributed by Gary Teravskis.
|
||
* net/recv.c and net/recvfrom.c: Correct a bug in return value: The the peer
|
||
gracefully closes the connections, needs to return zero and not ENOTCONN.
|
||
* arch/arm/src/stm32/stm32_eth.c: Fix an error in the STM32 ethernet driver.
|
||
The received buffer size must be two bytes larger to account for the two byte
|
||
checksum that is appended to the packet. Otherwise, the last two bytes of
|
||
real data in the packet will get clobbered.
|
||
* arch/arm/src/stm32f40xx_dma.c: The STM32 F4 DMA has (finally) been verified
|
||
* arch/arm/src/stm32_sdio.c: STM32 F4 SDIO DMA is now supported
|
||
* configs/stm3240g-eval/nsh/defconfig: This configuration now supports SDIO
|
||
with DMA (see configs/stm3240g-eval/README.txt for some issues).
|
||
* arch/arm/src/armv7-m/up_vectors.S and arch/arm/src/armv7-m/up_vectors.S: New,
|
||
streamlined Cortex-M exception handling (with FPU supported). Contributed byh
|
||
Mike Smith
|
||
* net/accept.c, connect.c,and net_monitor.c: Correct an error in the accept
|
||
logic. After a new connection is made via accept(), monitoring for losses
|
||
of TCP connection must be set up (just as with connect()). The new file
|
||
net_monitor.c holds the common TCP connection monitoring logic used by both
|
||
the accecpt() and connect() logic. Contributed by Max Nekludov.
|
||
* net/recvfrom.c and net/uip/uip_tcpcallback.c: Fix a leak in the TCP
|
||
read-ahead logic. This is a *critical* bug fix!
|
||
* net/uip/uip_tcpinput.c: Correct an error in the TCP stack. It was
|
||
incrementing the received sequence number BEFORE determining if the
|
||
incoming data could be handled. If the data was dropped (usually because
|
||
there is insufficient buffering space), then no ACK will be sent and the
|
||
sequence number will be wrong. The end consequence of the bad sequence
|
||
number was that the when the dropped packet was re-transmitted, it was
|
||
was ignored because its sequence number looked wrong. Fix was, obviously,
|
||
to only increment the recevied sequence number if the TCP data was
|
||
accepted.
|
||
* configs/stm3240g-eval, configs/stm32f40discovery, and arch/*/src/Makefile:
|
||
Add changes to support building with the Atollic "Lite" toolchain.
|
||
* fs/fs_select.c: Correct select(), in the case of loss of network
|
||
connection (POLLHUP), select() must report a read-ready event. This
|
||
is how the standard select() interface is supposed to work: In the case
|
||
of loss-of-connection, select() reports read-ready. The next time you
|
||
read from the socket, you detect the end-of-connection event. Change
|
||
submitted by Max Nekludov.
|
||
* arch/arm/src/armv7-m/up_fpu.S and arch/arm/src/stm32/stm32_vectors.S: Fix
|
||
lazy FPU register saving with CONFIG_ARCH_FPU is set in the configuration.
|
||
* arch/arm/src/armv7-m: Lazy saving of floating point registers on context
|
||
switches now seems to be functional.
|
||
* net/uip/uip_tcpinput.c: Fix a TCP protocol error reported by Max Nekludov.
|
||
* configs/stm3240g-eval, configs/stm32f40discovery: Add changes to support
|
||
building with the Atollic "Pro" toolchain.
|
||
* Makefile: Use the more common .hex extension for Intel hex files instead of
|
||
more precise .ihx extension. This change has ripple effects to many build-
|
||
related scripts and programs and could cause some short-term problems.
|
||
* configs/stm3240g-eval/, arch/arm/src/stm32/up_allocateheap.c: Add support
|
||
for the 16-mbit SRAM on-board the STM3240G-EVAL board.
|
||
* drivers/usbdev/cdcacm.c and include/nuttx/usbdev/cdcacm.h: The CDC/ACM
|
||
driver can now be dynamically connected and disconnected from the host
|
||
under software control.
|
||
* include/nuttx/arch.h, configs/stm3240g-eval/src/up_cxxinitialize.c, and
|
||
configs/stm3240g-eval/src/up_cxxinitialize.c: Add support for C++ static
|
||
initializers.
|
||
* net/setsockopt.c, net/getsockopt.c, net/bind.c, net/socket.c: Add more
|
||
low level, thread-independent socket interfaces for use within the OS.
|
||
Some of these are currently used by the FTP controlling terminal. More will
|
||
be used to support the NFS file system currenly underwork.
|
||
* include/nuttx/net/: Major re-organization of networking headerf files.
|
||
Moved all non-standard, NuttX-specific header files from include/net and
|
||
include/nuttx into include/nuttx/net.
|
||
* arch/mips/src/pic32mx/pic32mx_usbdev.c: The PIC32 USB driver now appears to
|
||
be fully functional.
|
||
* configs/sure-pic32mx/usbnsh and configs/sure-pic32mx/src: Add support for
|
||
NSH using only USB serial I/O to support the console. This is useful on
|
||
devices that have USB, but no serial port.
|
||
* arch/mips/src/pic32mx/pic32mx_spi.c: Add a PIC32 SPI driver. Initial
|
||
checkin is primitive, incomplete (lacks interrupt logic), and untested.
|
||
* configs/pic32-startkit/nsh: Completed verification of the PIC32 Ethernet
|
||
Starter Kit port. Added and verified the NuttShell (NSH) on the PIC32
|
||
Ethernet Starter Kit. I can now (finally) claim to have complete the
|
||
basic port to this board.
|
||
* configs/pic32-startkit/nsh/up_usbdev, up_nsh.c, and up_usbterm.c: Verified
|
||
the USB (device) driver on the PIC32 Ethernet Starter Kit.
|
||
* arch/mips/src/pic32mx/pic32mx_ethernet.c: Verified the PIC32 Ethernet
|
||
driver on the PIC32 Starter Kit. Status: It is occasionally functional
|
||
but not stable enough for use.
|
||
* arch/arm/include/stm32, arch/arm/src/stm32: Add general support for
|
||
the STM32 F2 family. Contributed by Gary Teravskis,
|
||
* configs/stm3220g-eval: Add support for the STMicro STM3220G-EVAL board.
|
||
Contributed by Gary Teravskis,
|
||
|
||
6.17 2012-04-14 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/sure-pic32mx: Add support for the Sure DB-DP11212 PIC32 General
|
||
Purpose Demo Board
|
||
* arch/arm/src/stm32/stm32_usbhost.c/.h: Add files that will (eventually)
|
||
hold an STM32 USB host driver (the initial check-in is the NuttX LPC17
|
||
USB host driver with name changes only).
|
||
* arch/arm/src/stm32/chip/stm32_otgfs.h: STM32 USB OTG FS register
|
||
definitions (not complete on initial check-in).
|
||
* net/connect.c: Add another low level, thread-independent socket interface
|
||
for use within the OS.
|
||
* arch/mips/src/pic32mx/pic32mx_ethernet.c: The PIC32 Ethernet driver
|
||
is now stable on the PIC32 Starter Kit.
|
||
* configs/pic32-starterkit/nsh2: Add a PIC32 Ethernet Starter Kit NSH
|
||
configuration that has no serial console; all interaction is done via
|
||
Telnet.
|
||
* net/netdev_sem.c: Correct a deadlock condition by making a seamphore
|
||
recursive. To my knowledge this deadlock only occurs when running the
|
||
NSH command ifconfig over Telnet. In that case the function netdev_foreach
|
||
takes the network device semaphore, but so does the telnet logic causing
|
||
the deadlock.
|
||
* arch/arm/src/stm32/stm32_pm*.c: Add basic STM32 power management logic
|
||
that will eventually be used to implement low power states.
|
||
* arch/arm/src/stm32/stm32f*0xx_rcc.c: In order to use CAN2, both CAN1 and
|
||
CAN2 clocking must be enabled.
|
||
* arch/mips/src/pic32mx/picm32mx-usbdev.c: Several stall-related fixes so that
|
||
the USB device driver can used the mass storage class (which does a LOT
|
||
of stalling as part of its normal protocol). The PIC32 USB Mass Storage
|
||
device is, however, still non-functional when debug is OFF.
|
||
* include/nuttx/fs: Move all file-system related files from include/nuttx to
|
||
include/nuttx/fs.
|
||
* include/nuttx/serial: Move all serial-driver related files from include/nuttx to
|
||
include/nuttx/serial.
|
||
* include/nuttx/clock.h and sched/clock_initialize.c: Add a new OS interface
|
||
called clock_sychronize() that can be used to re-synchronize the NuttX
|
||
system time with a hardware RTC. This function is called normally at power
|
||
up but may also need to be called when recovering from certain low-power
|
||
usage states where the system time is no longer accurate.
|
||
* arch/arm/src/calypso and arch/arm/include/calypso: Support for the TI "Calypso"
|
||
phone processor. Contributed by Denis Carilki and includes the work of Denis,
|
||
Alan Carvalho de Assis, and Stefan Richter.
|
||
* configs/compal_e88 and configs/compal_e99: Support for Compal e88 and e99 phones
|
||
Contributed by Denis Carilki and includes the work of Denis, Alan Carvalho de
|
||
Assis, and Stefan Richter.
|
||
* arch/arm/src/lpc17xx: Several fixes for error that have crept in for the LPC17xx
|
||
DAC. Contributed by by Lzyy.
|
||
* graphics/nxconsole: Add a character driver that can be used as a console output
|
||
device for text output (still under development on initial check-in).
|
||
* graphics/nxmu: Fix several compilation errors that have crept into the multi-
|
||
user NX server because of lack of use.
|
||
* graphics/nxconsole: The NX text console is basically function (in multi-
|
||
user NX mode only).
|
||
* arch/arm/src/stm32/stm32_i2c.c: Correct a bug in the STM32 I2C driver. The
|
||
behavior of I2C status bits seems to be different between F1 and F4.
|
||
* configs/stm3210e-eval/nxconsole: New STM32 F1 configuration that runs the
|
||
NuttShell (NSH) within an NX window.
|
||
* graphics/nxconsole/nxcon_sem.c: Add protection from re-entrance with debug
|
||
is enabled.
|
||
* include/nuttx/ascii.h and vt100.h: Header files to centralize ASCII and
|
||
VT100 escape sequence definitions.
|
||
* graphics/nxconsole/nxcon_vt100.c: Add add framework to support VT100 escape
|
||
sequences in NxConsole.
|
||
* fs/fs_read.c: Fix read() return value for attempt to read from write-only
|
||
file or device. Was returning EBADF, should return EACCES.
|
||
* graphics/nxconsole.c: NxConsole now supports backspace and a cursor.
|
||
* Kconfig and arch/sim/Kconfig: Beginnings of support for a NuttX
|
||
configuration tool. Currently using the kconfig parser 'kconfig-frontend'
|
||
available at http://ymorin.is-a-geek.org/projects/kconfig-frontends
|
||
(version 3.3.0-1 is also available in the NuttX SVN at
|
||
trunk/misc/tools/kconfig-frontends-3.3.0-1.tar.gz). Contributed by Lzyy.
|
||
* */Kconfig: Added skeleton Kconfig files to all directories that
|
||
may need them.
|
||
* include/nuttx/math.h: Moved include/math.h to include/nuttx/math.h
|
||
because it conflicts too often with the system math.h (and people aren't
|
||
inclined to read the documentation on how to handle this). Now, if
|
||
CONFIG_ARCH_MATH_H=y is defined, the top-level makefile will copy
|
||
the redirecting math.h header file from include/nuttx/math.h to
|
||
include/math.h. So for the architectures that define CONFIG_ARCH_MATH_H=y,
|
||
include/math.h will be in place as it was before; for the architectures
|
||
that don't select CONFIG_ARCH_MATH_H, the redirecting math.h header
|
||
file will stay out-of-the-way in include/nuttx/.
|
||
* Kconfig, sched/Kconfig, lib/Kconfig, libxx/Kconfig, arch/sim/Kconfig,
|
||
drivers/Kconfig, drivers/mtd/Kconfig, drivers/input/Kconfig
|
||
drivers/analog/Kconfig, drivers/lcd/Kconfig: Updated kernel
|
||
configuration support provided by Lzyy.
|
||
* Kconfig: Many more Kconfig updates (no longer tracking in the ChangeLog)
|
||
* arch/arm/src/Makefile, arch/x86/src/Makefile, arch/avr/src/Makefile,
|
||
arch/mips/src/Makefile, arch/sim/src/Makefile, arch/hc/src/Makefile,
|
||
arch/sh/src/Makefile: The libgcc.a in newer versions of GCC now
|
||
have an dependency on an external implementation of abort(). This
|
||
required modification to the Makefiles that do the final link: Now
|
||
libgcc.a must be included within the group of libraries that are
|
||
search recursively.
|
||
* arch/arm/srm/stm32/stm32_otgfsdev.c: A USB OTG FS device-side driver
|
||
for the STM32 F4 (and maybe F2 and F1 connectivity line).
|
||
* tools/cmpconfig.c: A tool for comparing two configuration files.
|
||
* include/nuttx/usb/usbdev.h, drivers/usbdev/*, arch/*/src/*/*usb*.c:
|
||
Extend the USB device side interface so that EP0 OUT data can be passed
|
||
with OUT SETUP requests.
|
||
* include/nuttx/watchdog.h: Add the definition of a standard watchdog
|
||
driver interface.
|
||
* drivers/watchdog.c: The "upper half" watchdog timer driver.
|
||
|
||
6.18 2012-05-19 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* Kconfig: Continued Kconfig file updates (no longer tracking on a per-file
|
||
basis in the ChangeLog)
|
||
* arch/arm/src/stm32/stm32_iwdog.c and stm32_wwdog.c: Add the STM32 IWDG
|
||
and WWDIG watchdog timer driver.
|
||
* configs/stm3240g-eval/src/up_lcd.c: Add LCD from for the STM3240G-EVAL (the
|
||
initial check-in is just a stm3210e-eval driver with renaming).
|
||
* sched/sched_setscheduler.c: Correct successful return value (Contributed
|
||
by Richard Cochran).
|
||
* include/fcntl.h and lib/stdio: Ignore CONFIG_STDIO_LINEBUFFER is the
|
||
file was opened in binary mode.
|
||
* lib/stdio/lib_fopen.c: Correct an error in parsing open mode string. The
|
||
plus sign may not appear right after the basic mode. For example, "r+", "rb+",
|
||
and "r+b" are all valid open strings and mean the same thing.
|
||
* lib/stdio/lib_fopen.c: Correct return errno value from f_open() and
|
||
f_fdopen() if the open mode string is invalid.
|
||
* drivers/serial/serial.c: Do not disable Rx interrupts on each byte.
|
||
Rather, only disable Rx interrupts when the Rx ring buffer may be empty.
|
||
* include/nuttx/usb/audio.h: USB Audio 1.0 definitions (in progress).
|
||
* arch/arm/src/stm32/stm32fxx_dma.c: STM32 F4 DMA now supports circular
|
||
buffer mode (contributed by Mike Smith)
|
||
* arch/arm/src/stm32/stm32_serial.c: The serial driver can now support
|
||
Rx DMA into a circular buffer (contributed by Mike Smith)
|
||
* configs/pic32mx7mmb: Beginning of a configuration for the Mikroelektronka
|
||
PIC32MX7 Multimedia Board (MMB).
|
||
* net/recvfrom.c: Fix a compilation problem. Some UDP logic was conditioned
|
||
on TCP, not UDP.
|
||
* drivers/usbdev/cdcacm.c: Fix an infinite loop that occurs when the serial
|
||
device is unregisters.
|
||
* arch/arm/src/stm32/stm32_otgfs.c: The driver needs to reset the software (in
|
||
order to flush the requests) and to disable the software connection when the
|
||
device is unregistered.
|
||
* include/sys/prctl.h, sched/prctl.c, include/pthread.h: Add interfaces to
|
||
support getting and setting of the thread or task name.
|
||
* configs/ubw32: Added a configuration to support the Sparkfun UBW32 PIC32 board.
|
||
* configs/ubw32/nsh: Added an NSH configuration for the Sparkfun UBW32 PIC32 board.
|
||
* configs/ubw32/up_buttons.c: Added button support for Bit Whacker board.
|
||
* configs/stm3240g-eval/nxconsole: Added a configuration to run the NSH
|
||
shell in an NX window for the STM3240G-EVAL board.
|
||
* include/cxx/cunistd: C++ header file to make sure that everything in
|
||
unistd.h is in the std:: namespace.
|
||
* configs/sim/nxwm: Added a configuration for testing the NuttX Window Manager
|
||
(NxWM)
|
||
* fs/fs_fcntl.h: On success, always returned OK. However, some fcntl commands
|
||
require returning other values on success.
|
||
* Various files. Fix warnings about variables that were initialized by not used.
|
||
* configs/sim/*/defconfig: Changes to build a 32-bit simulation on a 32-bit
|
||
platform did not make into all of the Make.defs files.
|
||
* graphics/nxmu/nx_move.c: Wrong opcode was being used in the server message;
|
||
Also there was an error in the offset calculation.
|
||
* graphics/nxglib/fb/nxglib_moverectangle.c: Offset argument is really a
|
||
position, not an offset.
|
||
* graphics/nxtk/nxtk_drawframe.c: Framed windows are now drawn in three
|
||
colors (instead of just two).
|
||
* drivers/input/stmpe811_*: Added a driver to support the STMicro STMPE811
|
||
IO Expander and touchscreen driver.
|
||
* configs/stm3240g-eval/nxwm: Added to configuration for testing the NxWM
|
||
window manager on the STM3240G-EVAL board.
|
||
* graphics/nxtk/nxtk_toolbarbounds.c: Added an interface to get the toolbar
|
||
bounding box.
|
||
* graphics/nxtk/nxtk_drawframe.c: Fix an error in drawing the window frame.
|
||
* NX, NxConsole: Replace CONFIG_NXCONSOLE_NOGETRUN to CONFIG_LCD_GETRUN. The
|
||
inability to read from the LCD is a property of the LCD, not of NxConsole.
|
||
Then add CONFIG_NX_WRITEONLY which is the more generic way of saying that
|
||
no NX component should try to read from the underlying graphic device (LCD
|
||
or other).
|
||
* configs/stm3240g-eval/src/up_stmpe811.c: Add board-specific support for the
|
||
the STMPE811 I/O expander on the STM3240G-EVAL board. Verfied that the
|
||
STM3240G-EVAL touchscreen is now fully functional.
|
||
* include/cxx/cfcntl: Added std:: header file.
|
||
* graphics/nxbe/nxbe_filltrapezoid.c and graphics/nxglib/fb/nxglib_filltrapezoid.c:
|
||
Fix several errors in the trapezoid fill logic.
|
||
* include/nuttx/input/touchscreen.h, configs/hymini-stm32, configs/stm3240g-evel,
|
||
* configs/sam3u-ek, configs/sim, arch/sim/src/up_touchscreen.c, and
|
||
apps/examples/touchscreen: Standardize the board-specific, touchscreen
|
||
initialization interfaces.
|
||
* drivers/input/stmpe811_base.c and configs/stm3240g-eval: The STMPE811-based
|
||
touchscreen seems to work better with edge (vs. level) interrupts
|
||
* drivers/input/stmpe811_tsc.c: Fix some status checks so that the touchscreen
|
||
interrupt handling logic does not read data if the fifo is not at the
|
||
threshold level.
|
||
* include/nuttx/wqueue.h: Add macro work_available() to determine if the
|
||
previously scheduled work has completed.
|
||
* drivers/stmpe811_tsc.c: Correct errors: (1) Since all interrupt logic is done on
|
||
the worker thread, disabling interrupts does not provide protected; Need to
|
||
disable pre-emption. (2) Fix handling of touch ID and (2) add some logic to
|
||
prevent certain kinds of data overrun.
|
||
* include/nx/nxtk.h and graphics/nx/nxtk/nxtk.h: Move setting
|
||
of configuration defaults from the internal header file to a place where
|
||
other logic can use the defaults.
|
||
* graphics/nxtk/nxtk_events.c: Fixed an important but in the logic that
|
||
translates the mouse/touchscreen position data for framed windows and toolbars.
|
||
* drivers/input/stmpe811_tsc.c, tsc2007.c, and ads7843e.c: Need to keep track of
|
||
when if positional data is valid. When the touch is released, the X/Y position
|
||
of the release must be the same as the X/Y position of the last touch (se that
|
||
the release occurs in the same window as the last touch).
|
||
* graphics/nxtk/nxtk_events.c: Fix an error in mouse/touchscreen input logic:
|
||
Was autoraising the window AFTER processing the mouse press. This raises havoc
|
||
if the result of processing the mouse click was to raise some other window!
|
||
* graphics/nxtk/nxtk_events.c: I had to disable the whole autoraise feature
|
||
for multi-user case because it does not work correctly. In a scenario where (1) there
|
||
are multiple queued touchscreen events for the same window and (2) the result of the
|
||
first input was to switch windows, then the autoraise implementation will cause the
|
||
window to revert to the previous window. Not good behavior.
|
||
* sched/sched_mergepending.c: Add task switching instrumentation. There is a case
|
||
here where instrumentation was missing. Contributed by Petri Tanskanen.
|
||
* CONFIG_STMPE811_THRESHX, CONFIG_STMPE811_THRESHX, and drivers/stmpe811_tsc.c: Add some
|
||
thresholding controls to all slow down processing of touchscreen samples.
|
||
This is a problem with NX in multi-user mode: touchscreen data gets sent
|
||
via a message and when the message queue gets full the sender blocks and
|
||
touch events are lost. Basic data overrun. The badly effects touchscreen
|
||
human factors.
|
||
* include/sched.h: Fix a typo (missing semicolon) in prototype of on_exit();
|
||
* sched/on_exit.c and include/nuttx/sched.h: Fix some old typos that caused
|
||
compilation errors when CONFIG_SCHED_ONEXIT is defined.
|
||
* configs/stm3240g-eval/nxwm/defconfig: The default NxWM now uses the STMPE811
|
||
touchscreen.
|
||
* include/cxx/csched: Added
|
||
* graphic/nxmu/nxmu_sendserver.c, nxmu_sendwindow.c, and nxmu_sendclient.c:
|
||
Refactor NX messaging logic in preparation for a new message control
|
||
feature.
|
||
* graphics/nxtk, graphics/nxmu, include/nuttx/nx: Add a new window communication
|
||
to support blocking and flushing of client window messages. If there are
|
||
stale, queue window messages at the time that a window is destroyed, very bad
|
||
things happen.
|
||
|
||
6.19 2012-06-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* graphics/nxconsole/nxcon_kbdin.c: If selected, the NxConsole will take
|
||
input from the NX keyboard input callback. If this option is set, then
|
||
the interface nxcon_kdbin() is enabled. That interface may be driven by
|
||
window callback functions so that keyboard input *only* goes to the top
|
||
window. If CONFIG_NXCONSOLE_NXKBDIN is not selected, then the NxConsole
|
||
will receive its input from stdin (/dev/console). This works great but
|
||
cannot be shared between different windows. Chaos will ensue if you
|
||
try to support multiple NxConsole windows without CONFIG_NXCONSOLE_NXKBDIN
|
||
* graphics/nxmu/nx_kbdin.c: Fix pointer argument. This is a error
|
||
introduced in changes leading up to the 6.18 release. This error will
|
||
cause crashes or perhaps simply not work when you try to handle window
|
||
keyboard data in multi-user mode.
|
||
* graphics/nxconsole/nxcon_kdbind.c: Fixed unmatched sem_wait and sem_post.
|
||
Fix some conditional compilation that included a few too many lines of code.
|
||
* drivers/input/stmpe811_tsc.c and stmpe811.h: Add a timeout to catch missed
|
||
pen up events. Now the STM3240G-EVAL touchscreen works very smoothly.
|
||
* configs/stm3240g-eval/nxwm/defconfig: Enable support for NxConsole keyboard
|
||
input. Increasing spacing of icons.
|
||
* configs/stm3240g-eval/nxwm/defconfig: Use a larger font for the calculator.
|
||
* include/nuttx/lcd/ssd1289.h, drivers/lcd/ssd1289.c and .h: Generic LCD
|
||
driver for LCDs based on the Solomon Systech SSD1289 LCD driver. This
|
||
of this as a template for an LCD driver that will have to be cusomized
|
||
for your particular LCD hardware.
|
||
* configs/stm32f4discovery/src/up_extmem.c and up_ssd1289.c: Add support to
|
||
STM32F4Discovery for than an external, SSD1289-based LCD.
|
||
* configs/stm32f4discovery/nxlines: Add an STM32F4Discovery configuration
|
||
to thest the SSD1289-based LCD.
|
||
* configs/stm3240g-eval/src: Add USB GPIO initialization logic needed
|
||
in board-specific boot logic.
|
||
* configs/stm32f4discovery/src: Add USB GPIO initialization logic needed
|
||
in board-specific boot logic.
|
||
* drivers/usbdev/pl2303.c and cdcacm.c: Fix the request size used for sending
|
||
packets. It was not using the maximum request size, but instead the previous
|
||
request size. As a result, packets get smaller, and smaller, and ... This
|
||
is an important USB serial fix.
|
||
* arch/arc/src/stm32_otgfsdev.c: Bug fix: Don't process TXFE if we have
|
||
already processed an XFRC interrupt. We have already done what needs
|
||
to done in that case.
|
||
* arch/arc/src/stm32_otgfsdev.c: Fixed some status settings in queuing of write
|
||
messages. Added a "hack" to work around missing TxFIFO empty interrupts. The
|
||
hack is basically to poll for space in the TxFIFO instead of of setting up
|
||
the interrupt.
|
||
* arch/arm/src/stm32/stm32f2* and chip/stm32f2*: Update all STM32 F2 file so
|
||
that they are equivalent to F4 files. This is kind of a maintenance nightmare.
|
||
* configs/stm3220g-eval/: Update existing configurations to the same level
|
||
as the corresponding STM3240G-EVAL configurations. This adds FSMC SRAM,
|
||
touchscreen, and LCD support.
|
||
* configs/stm3220g-eval/: Add a NxWM configuration for the STM3220G-EVAL.
|
||
* stmpe11*: Fix a massive naming problem. All references to STMPE11 should be
|
||
STMPE812.
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c: Need to enabled USB reset interrupt
|
||
(contributed by Erik Van Der Zalm).
|
||
* sched/sleep.c: Fix the return value from sleep(). The correct behavior is
|
||
to return the number of unwaited seconds; the implementation was always
|
||
returning zero.
|
||
* sched/usleep.c and include/unistd.h: Was a void function, but should return
|
||
0 on success. usleep() needs to check the return value from sigtimedwait().
|
||
sigtimewait() returns the signal number that awakened it and an error (EAGAIN)
|
||
if the timeout expired (normal case).
|
||
* sched/sig_timedwait.c: Fix sigtimedwait() return value. On a timeout, it was
|
||
setting the 8-bit si_signo field to -1 and eded up reported successfully awakened
|
||
by signal 255! Now detects the timeout and errors -1 with errno == EGAIN. If
|
||
sigtimedwait() is awakened by an unblocked signal, but it is not one of the
|
||
signals in the waited-for set, it will return -1 with errno == EINTR.
|
||
* arch/arm/src/stm32_i2c.c: Fix STM32 F2 I2C. It is apparently bug-for-bug
|
||
compatible with the F4 and needs the same work-around for the missing BTF
|
||
signal that was needed for the F4.
|
||
* drivers/lcd/ssd1289.*: Fix some of the initial register settings.
|
||
* configs/stm32f4discovery/src/up_ssd1289.c: FSMC address bit 16 is used to
|
||
distinguish command and data. But FSMC address bits 0-24 correspond to ARM
|
||
address bits 1-25, se we need to set bit 17 in order generate output on
|
||
FSMC_A16.
|
||
* arch/arm/src/lm3s/lm3s_epi.h and lm3s_timer.h: LM3S header files
|
||
(contributed by Max Neklyudov).
|
||
* arch/arm/src/stm32/stm32_irq.c: Some of the interrupt priorities were
|
||
not be initialized (F2 and F4 only). Thus, the very high numbered
|
||
interrupts (like UART6) and cause nested interrupts. This leads to
|
||
some very difficult to debug crashes. Fix contributed by Mike Smith.
|
||
* arch/mips/src/pic32/pic32_head.S and pic32_config.h and
|
||
configs/pic32mx7mmb/include/board.h: Extended PIC32 device configuration
|
||
capabilities and change board.h to support unique clocking requirements
|
||
of the Mikroelektronika PIC32MX7 MMB. That board now works!
|
||
* configs/pic32mx7mmb/nsh: Added and verify a NuttShell configuration
|
||
for the Mikroelektronika PIC32MX7 MMB board.
|
||
* arch/mips/pic32/pic32mx-ethernet.c: Fix logic that guesses PHY address;
|
||
the search loop missed the PHY address needed by the Mikroelektronika
|
||
PIC32MX7 MMB board.
|
||
* configs/pic32mx7mmb/nsh: Configuration now supports a network by default.
|
||
* configs/pic32mx7mmb/src: Add support for the MMC/SD slot on board
|
||
the Mikroelektronika PIC32MX7 MMB board (not working on initial check-in).
|
||
* arch/mips/src/pic32/pic32mx-spi.c: Add support for very low-level,
|
||
register access debug output.
|
||
* configs//pic32mx7mmb/include/board.h: Reduced peripheral clock to
|
||
4MHz to match other PIC32 configurations.
|
||
* configs/pic32mx7mmb/src/up_nsh.c: SD card needs to operate in SPI
|
||
mode 2.
|
||
* configs/pic32mx7mmb/nsh/defconfig: MMC/SD card support is now
|
||
enabled by default in the PIC32MX7 MMB board configuration.
|
||
* configs/pic32mx7mmb/nsh/defconfig: Verified the USB Mass Storage
|
||
Class (MSC) using MMC/SD card as the logical unit. Updated the default
|
||
PIC32MX7 MMB board configuration so that USB and the mass storage class
|
||
are enabled by default.
|
||
* drivers/lcd/mio283qt2.c and include/nuttx/lcd/mio283qt2.h: Add generic
|
||
support for the MIO283QT2 LCD.
|
||
* configs/pic32mx7mmb/src/up_mio283qt2.c: Add support for the MIO283QT2
|
||
LCD on the PIC32MX7 MMB board.
|
||
* configs/pic32mx7mmb/src/up_touchscreen.c: Add an ADC-based touchscreen
|
||
driver for the PIC32MX7 MMB board. Kind of works, but needs more
|
||
verification and tuning.
|
||
* arch/mips/src/common/up_idle.c: Strange but important fix. For some still-
|
||
unknown reason, interrupts are left in an unhealthy state in the IDLE
|
||
when the work queue is enabled. This is partially because some interrupt
|
||
related logic is not built in that case. Simply disabling then re-
|
||
enabling interrupts restores the proper state.
|
||
* graphics/nxglib/lcd/nxglib_filltrapezoid.c and fb/nxglib_filltrapezoid.c:
|
||
Fix an error when the trapezoid is only 1 line high. In this case, a
|
||
divide by zero error would occur. The fix is to draw the 1 line high
|
||
trapezoid as a run.
|
||
* drivers/usbdev/pl2303.c: Fix a cut'n'paste error that snuck into
|
||
the PL2303 emulation driver several months back.
|
||
|
||
6.20 2012-07-12 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/stm3210e-eval/src and arch/arm/src/stm32/: Add beginnings of
|
||
power management support for the STM32 and the STM3210E-EVAL board, in
|
||
particular.
|
||
* Documentation/NfsHowTo.html: Add a How-To document for the new NFS
|
||
client feature.
|
||
* arch/mips/include/pic32mx and arch/mips/src/pic32mx: Add support for the
|
||
PIC32MX1 and PIC32MX2 families.
|
||
* configs/mirtoo: Add a board configuration to support the DTX1-4000L
|
||
"Mirtoo" module from http://www.dimitech.com/
|
||
* tools/pic32mx: All of the duplicate directories containing the same
|
||
same PIC32 tools were move to this single location.
|
||
* configs/mirtoo: The basic Mirtoo port is now functional.
|
||
* configs/mirtoo/ostest: Added support for the microchipOpen toolchain
|
||
(see http://sourceforge.net/projects/microchipopen/).
|
||
* configs/mirtoo/nsh: Added a NuttShell (NSH) configuration for
|
||
the Mirtoo module.
|
||
* configs/mirtoo/scripts: Move all Mirtoo linker scripts to a common
|
||
directory.
|
||
* arch/mips/src/pic32mx/pic32mx-gpio.c: All digital inputs were being
|
||
configured as outputs. This is a *critical* bug fix and needs to be
|
||
incorporated by any PIC32 users.
|
||
* drivers/mtd/sst25.c: Added a driver for the SST 25 SPI-based FLASH
|
||
parts.
|
||
* configs/mirtoo/src/up_nsh.c: The Mirtoo NSH configuration can now
|
||
mount the SST 25 devices so that it can be used for a FAT file system.
|
||
There are are, however, some NSH memory usage issues if this configuration
|
||
enabled now. Some tuning is still needed.
|
||
* configs/mirtoo/nxffs: Add an alternative NSH configure for the Mirtoo
|
||
module for testing the on-module SST 25 chip using the NXFFS file system.
|
||
* arch/arm/src/lpc43xx and arch/arm/include/lpc43xx: The NXP LPC43xx port
|
||
is slowly evolving in these directories.
|
||
* configs/stm3210e-eval/pm: Add a new configuration for testing STM32 power
|
||
management.
|
||
* configs/stm3210e-eval/scripts: Moved all of the duplicate ST3210-EVAL
|
||
linker scripts into one set of linker scripts at this location.
|
||
* configs/stm3210e-eval/src/up_buttons.c, up_lcd.c, and up_pm.c: New logic
|
||
for testing STM32 power management.
|
||
* configs/lincoln60: Add a configuration to support the Micromint Lincoln60
|
||
board.
|
||
* configs/ekk-lm3s3b96: Add a configuration to support the TI/Stellaris
|
||
EKK-LM3S3B96 development board. Contributed by Jose Pablo Rojas V.
|
||
* arch/arm/src/lpc43xx/chip: Created header files for *all* (really)
|
||
lpc43xx registers and all bit-fields.
|
||
* configs/lpc4330-xplorer: Added a configuration for the NXP LPC43XX
|
||
Xplorer board. This is just to facilitate testing of the LPC43xx
|
||
port but will, with any luck, become proper board support for that
|
||
board.
|
||
* arch/arm/src/lm3s/lm3s_syscontrol.c: Fix an optimization related problem
|
||
by adding a volatile qualifier to a timing loop. Oddly, the consequence
|
||
of the bug is that when debug was off, the LM3S platform too a long time
|
||
to boot. It now boots rapidly whether debug is on or off.
|
||
* arch/*/include/limits.h: Change all values in all limits.h for all
|
||
architectures to signed decimal; the hex values were not sign extending
|
||
appropriate in most uses (reported by Lorenz Meier).
|
||
* arch/arm/src/stm32/chip/stm32f103/7vc_pinmap: Fix typographical error in
|
||
two pinmap definition files.
|
||
* lib/net/lib_inetntoa.c: Fix typographical error that cause compilation
|
||
failure on platforms that do not support passing of structures as
|
||
parameters.
|
||
* arch/arm/*/lpc43xx and configs/lpc4330-xplorer and code complete and
|
||
ready for testing. Hopefully, verified LPC43xx support will appear
|
||
in NuttX-6.20.
|
||
* include/nuttx/stdarg.h: If CONFIG_ARCH_STDARG_H=y is defined, the top-level
|
||
makefile will copy the generic (GCC-only) stdarg.h header file from
|
||
include/nuttx/stdarg.h to include/stdarg.h. So for the architectures
|
||
that cannot use their GCC toolchain's stdarg.h file, they can use this
|
||
alternative by defining CONFIG_ARCH_STDARG_H=y. If CONFIG_ARCH_STDARG_H,
|
||
is not defined, then the redirecting stdarg.h header file will stay
|
||
out-of-the-way in include/nuttx/.
|
||
* configs/lpc4330-xplorer/nsh: Add an NSH configuration for the LPC4330
|
||
Xplorer board.
|
||
|
||
6.21 2012-08-25 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/lpc4330-xplorer/up_nsh.c: Add support for a basic SPIFI block
|
||
driver for use by NSH. Does not work! Crashes on first SPIFI write.
|
||
* configs/lpc4330-xplorer/*/defconfig: Calibrate delay loops (this is
|
||
based on the current "slow" 72MHz M4 clock and will need to be
|
||
re-calibrated when this is increased).
|
||
* configs/stm3220g-eval/include/board.h and configs/stm3240g-eval/include/board.h:
|
||
The SDIOCLK frequency in the F2 and F4 derives for PLL48CLK and not HCLK
|
||
so that the SDIOCLK input frequency should always be 48MHz.
|
||
* sched/os_internal.h, sched_setupidlefiles.c, sched_setuptaskfiles.c, and
|
||
sched_setupidlefiles.c: Detangle some conditional compilation. Allow for
|
||
a perverse configuration that has socket descriptors and streams but no file
|
||
descriptors (sure, why not?).
|
||
* sched/: Stylistic clean-up of all files. Some of these files are pretty old
|
||
and do not follow current NuttX coding standards in detail.
|
||
* fs/: More stylistic file clean-up.
|
||
* mm/: More stylistic file clean-up.
|
||
* drivers/ and drivers/serial/: More stylistic file clean-up.
|
||
* arch/arm/src/lpc43xx/lpc43_clockconfig.c: Fix PLL1 bit manipulation logic.
|
||
Critical bugfix! This would often cause the LPC43xx to fail to boot.
|
||
* arch/arm/src/lpc43xx/lpc43_rgu.c: The soft reset logic called from the
|
||
beginning of __start seems cause problems. A magic delay seems to improve
|
||
the logic some. But I suspect that real fix is to get rid of all of the
|
||
soft reset logic. This would also be a critical bugfix if I believed
|
||
that it really fixed all of the issues.
|
||
* arch/arm/src/lpc43xx/chip/lpc43_cgu.h: Fix a bit mask in the PLL1
|
||
control register. Critical bugfix.
|
||
* arch/arm/src/lpc43xx/lpc43_clockconfig.c and configs/lpc4330-xplorer/include/board.h:
|
||
Implement PLL1 ramp-up logic; Now the LPC43xx is running at 204MHz.
|
||
* configs/lpc4330-xplorer/*/defconfig: Re-calibrated delay loops using
|
||
the 204MHz clock. The LPC43xx ripping rips! This calibration was performed
|
||
with symbols enabled and all optimization disabled. It will need to be
|
||
better recalibrated again down the road.
|
||
* arch/arm/src/stm32/stm32_exti.c: Renamed to rch/arm/src/stm32/stm32_exti_gpio.c
|
||
to make a little room in the file name space.
|
||
* arch/arm/src/stm32/stm32_exti_alarm.c: Add initial logic to attached the
|
||
RTC alarm EXTI interrupt. This is work be performed mostly by Diego Sanchez.
|
||
* include/: More stylistic file clean-up.
|
||
* arch/arm/src/lpc43xx/lpc43_spifi.c, lpc43_spifi.h, and chip/lpc43_spifi.h: Add
|
||
logic to configure and initialize the SPIFI device (does not yet work).
|
||
* configs/lpc4330-xplorer/include/board.h: Reduce SPI SCLK value.
|
||
* arch/arm/src/lpc43xx/lpc43_spifi.c, lpc43_spifi.h, and chip/lpc43_spifi.h:
|
||
Logic completely redesigned. It now creates an MTD driver to access SPIFI...
|
||
but the driver still does not work.
|
||
* arch/arm/src/stm32 and arch/arm/include/stm32: Make name of RTC ALARM interrupt
|
||
common on STM32 F1,2,4
|
||
* arch/arm/src/stm32 and arch/arm/include/stm32: Add support for the
|
||
STM32F100x "Value Line" devices. This includes changes to stm32F10xx_rcc.c that
|
||
add the ability to run the chip off the internal oscillator. There is no open
|
||
board configuration for this part yet (the STM32VLDiscovery would be a candidate).
|
||
Contributed by Mike Smith.
|
||
* arch/arm/src/stm32: Fixed typos in conditional compilation in the CAN and DMA
|
||
and some pin configuration. This would have caused problems for STM32 F107xx.
|
||
Typos noted by Mike Smith.
|
||
* arch/arm/src/lpc43xx/lpc43_serial.c: Add support for certain RS-485 features
|
||
* lib/termios/lib_cfsetispeed.c, lib_cfsetospeed.c, lib_tcflush.c: Add
|
||
simple implementations of cfsetispeed(), cfsetospeed(), and tcflush().
|
||
* include/sys/str_tty.h, lib/lib_setspeed.c, lib_getspeed.c, and lib_resetspeed.c:
|
||
Add APIs to support setting non-standard BAUD values not supported by POSIX
|
||
termios. These are non-standard interfaces but have a precedence: There are
|
||
similar interfaces in AIX.
|
||
* include/sys/str_tty.h, lib/lib_setspeed.c, lib_getspeed.c, and lib_resetspeed.c:
|
||
Sigh... removed. We don't need any more almost standard interfaces! (SVN
|
||
revision 4968 if you want the short-lived code).
|
||
* include/termios.h and lib/termios/*: Open the existing, standard termios
|
||
interfaces to permit some non-standard baud settings. The new termios definitions
|
||
still supports the POSIX standard except that it does not strictly enforce
|
||
baud rate settings, permitting some non-portable, but useful baud rate settings
|
||
(this is what the short-lived AIX-like interfaces would have accomplished as well).
|
||
* include/termios.h and lib/termios/*: Redesigned yet again (this is getting
|
||
painful. NuttX now supports the BOTHER baud setting just as Linux does. termios
|
||
Bxxx definitions are again encoded; cf[set|get][o|i]speed now deal with only the
|
||
encoded values. If the encoded baud is set to BOTHER, then the values in the (non-
|
||
standard) c_ispeed and c_ospeed baud values may be accessed directly.
|
||
* arch/arm/src/stm32/stm32_serial.c: Add minimal termios support for the STM32
|
||
(BOTHER style baud settings only). Contributed by Mike Smith.
|
||
* configs/lpc4343-xplorer/src: Clean up SPIFI-library based build to that it
|
||
actually works.
|
||
* arch/arm/src/lpc43xx/lpc43_spifi.c: Add support for verification to writes.
|
||
Add debug option to dump buffers. Several bugfixes... almost works.
|
||
* include/termios.h, lib/termios/*, and arch/arm/src/stm32/stm32_serial.c: :
|
||
BOTHER is gone again.
|
||
* arch/arm/src/stm32/stm32_sdio.c and chip/stm32f20xx_pinmap.h: STM32 F2 SDIO
|
||
fixes from Gary Teravskis and Scott Rondestvedt.
|
||
* include/termios.h and lib/termios/*: Replace cfsetispeed and cfsetospeed with
|
||
cfsetspeed (with definitions for the input/outputs in termios.h).
|
||
* configs/stm32f4discovery/src and configs/stm32f4discovery/pm: Add a power
|
||
management configuration for the STM32F4Discovery and supporting logic. This
|
||
check-in also includes some fixes for the F4 RTC alarm logic.
|
||
* drivers/input/pga11x.c and include/nuttx/input/pga11x.h: Add support for the
|
||
TI PGA112/3/6/7 amplifier/multiplexer parts.
|
||
* configs/mirtoo/README.txt, nsh/defconfig, and nxffs/defconfig: Add support
|
||
for the PGA117 on the Mirtoo module.
|
||
* drivers/analog/pga11x.c and include/nuttx/analog/pga11x.h: These belong in
|
||
the analog subdirectories, not input.
|
||
* configs/compal_e99/src/ssd1783.c and /ssd1783.h: Drivers for the SSD1783
|
||
LCD found in the Motorola C155 telephone. The driver is specific to the C155
|
||
because it uses the uwire transport. Contributed by Denis Carilki and
|
||
Alan Carvalho de Assis.
|
||
* drivers/power/pm_changestate.c. Correct a case where interrupts were not
|
||
being re-enabled. Found by Diego Sanchez.
|
||
* configs/mirtoo/nxffs/defconfig: This Mirtoo NXFFS configuration now uses the
|
||
open Pinguino toolchain by default. This is necessary because the free C32
|
||
toolchain does not support any optimization and the unoptimized NXFFS image
|
||
hits the PIC32MX2 FLASH size (128K). There is plenty of room to grow using
|
||
the Pinguino toolchain with -O2 optimization.
|
||
* configs/mirtoo/src/up_adc.c. This is just a stub for now, but this is
|
||
where Mirtoo ADC logic will eventually need to go.
|
||
* arch/mips/src/pic32mx/pic32mx-gpio.c: Now supports the PIC32MX1/2 ANSEL
|
||
IOPORT register.
|
||
* lib/string/lib_memchr.c: Add support for memchr() (contributed by Mike Smith)
|
||
* lib/string/lib_memccpy.c: Add support for memccpy()
|
||
* arch/arm/src/lpc17xx/lpc17_serial.c: Now supports ioctl commands to change
|
||
the baud using tcsetattr() (contributed by Chris Taglia).
|
||
* arch/*/src/*_serial.c: Fix ioctl method return values. These methods
|
||
should return a negated errno value; they should not set the errno
|
||
variable.
|
||
* sched/on_exit.c, sched/task_exithook.c, and include/nuttx/sched.c: Add
|
||
support for multiple registered on_exit() functions if CONFIG_SCHED_ONEXIT_MAX
|
||
is defined.
|
||
* drivers/syslog/ramlog.c: Move the RAM SYSLOG device into drivers/syslog
|
||
so that it will be in the same directory as some new SYSLOGing devices
|
||
in the works.
|
||
* include/nuttx/syslog.h and drivers/syslog/ramlog.c: The SYSLOG putc function
|
||
now has a common name that is independent of the device that provides the
|
||
SYSLOG.
|
||
* include/nuttx/syslog.h and drivers/syslog/syslog.c: This is a new, generic
|
||
SYSLOG device that can redirect debug output to any character device or file.
|
||
So you can log debug output to a file or you can put the console on /dev/ttyS0
|
||
and the debug output on /dev/ttyS1.
|
||
* arch/arm/src/lpc43xxl/lpc43_spifi.c: Correct an addressing error in the LPC43
|
||
SPIFI MTD driver
|
||
* drivers/syslog/syslog.c and fs/fs_syslog.c: Moved the generic syslog logic
|
||
from drivers/syslog to fs/ where is belongs. Especially after realizing that
|
||
the syslog logic is going to have to some internal FS operations in order
|
||
to realize a totally thread-independent SYSLOG interface.
|
||
* arch/arm/src/stm32/stm32*_rcc.c and .h: If CONFIG_PM is defined, add a
|
||
function called stm32_clockenable() that can be used by PM logic to re-start
|
||
the PLL after re-awakening from deep sleep modes.
|
||
* fs/fs_foreachinode.c and fs/fs_foreachmountpoint.c: Add logic to traverse
|
||
inodes and mountpoints in the NuttX pseudo-file system.
|
||
* fs/fat/fs_fat32.c: Max. filename length reported by statfs() was wrong
|
||
if FAT long file names were enabled.
|
||
* lib/stdio/lib_libvsprintf.c: Fieldwidth and justification were not
|
||
supported for the %s format. As a result, %s, %12s, and %-12s all
|
||
produced the same output.
|
||
* lib/stdio/lib_libdtoa.c: Fix several issues with presenting floating
|
||
point numbers (conversions are fine, but presentation was bad). This
|
||
is a critical bug fix if you use printf or sprintf to deal with floating
|
||
point numbers.
|
||
* lib/stdio/lib_libdtoa.c and lib_libvsprintf.c: Correct some floating
|
||
point options.
|
||
* arch/arm/lpc43xx/lpc32_usb0dev.c: Add framework for development of
|
||
an USB0, device-side driver for the LPC43XX. The initial check-in,
|
||
however, is simply for the LPC31xx driver with name changes. The
|
||
LPC31xx has the same USB IP, but will require some additional initialization
|
||
(and lots of testing) before it can be used with the LPC43xx.
|
||
* nuttx/Documentation/NuttShell.html: Added a section covering ways to
|
||
customize the behavior of NSH.
|
||
* arch/arm/src/stm32/chip/stm32f1*_pinmap.h: STM32 CAN TX/RX pins reversed;
|
||
inconsistent conditional compilation. Reported by Max Holtzberg.
|
||
* arch/arm/*/stm32: Add support for STM32 F107 "Connectivity Line"
|
||
Ethernet (contributed by Max Holtzberg).
|
||
* configs/olimex-stm32-p107: Add board support for the Olimiex STM32-P107
|
||
board (contributed by Max Holtzberg).
|
||
* arch/arm/src/stm32/stm32f2xx_dma.c, stm32f4xx_dma.c, stm32_serial.c, and
|
||
stm32_spic.c: DMA priority was getting zeroed by STM32 F2/F4 DMA drivers
|
||
so that all DMAs ran at the lowest priority.
|
||
* configs/stm3240g-eval/include/board.h and configs/stm3220: Drop SD card
|
||
frequency from 24 to 16 MHz. Apparently 24 MHz is too fast for the board.
|
||
This (plus the change to the STM32 DMA (above) fixes SDIO DMA on the
|
||
STM3240G-EVAL (and probably STM3220G-EVAL -- untested).
|
||
* arch/arm/src/stm32/stm32f2xx_dma.c and stm32f4xx_dma.c: Backed out the
|
||
DMA priority change just above. The reduced SD card frequency was
|
||
necessary and sufficient to resolve the problem.
|
||
* drivers/serial/serial.c: open, read, write, and poll methods may now
|
||
abort return EINTR (or a short transfer size) if a signal is received
|
||
while waiting to receive or send serial data. This behavior is required
|
||
by POSIX.
|
||
* include/sys/types.h: Define NULL to be (0) if __cplusplus is defined.
|
||
(contributed by Mike Smith)
|
||
* include/ctype.h: Remove a stray semi-colon in a definitions (Thanks
|
||
Mike Smith).
|
||
* configs/.../Make.defs. Fix C++ include path set-up in Make.defs file
|
||
for all 8-bit AVR platforms (Thanks Richard Cochran).
|
||
* lib/stdio/lib_*stream.c: Revised to handle new error return values from
|
||
serial.c.
|
||
* arch/arm/src/stm32/stm32_spi.c: SPI driver can now service re-
|
||
initialization (Mike Smith).
|
||
* tools/mkconfig.c: If CONFIG_DRAM_END is not specified, this tool
|
||
will provide default definition of (CONFIG_DRAM_START + CONFIG_DRAM_SIZE)
|
||
* arch/arm/src/stm32/stm32_otgfshost.c: Renamed from stm32_usbhost.c.
|
||
This is nearly code complete and, with any luck, will be available
|
||
in NuttX-6.21.
|
||
* configs/*/defconfig: Update all defconfig files to remove syntax
|
||
that is incompatible with the mconf configuration tool.
|
||
* arch/arm/src/stm32/stm32_otgfshost.c: This driver now appears to be
|
||
functional (although more testing is necesary).
|
||
|
||
6.22 2012-09-29 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* include/semaphore.h, sched/sem_holders.c, and lib/semaphore/sem_init.c:
|
||
Fix some strange (and probably wrong) list handling when
|
||
CONFIG_PRIORITY_INHERITANCE and CONFIG_SEM_PREALLOCHOLDERS are defined.
|
||
This list handling was probably causing errors reported by Mike Smith
|
||
* sched/sched_waitpid.c: Fix a possible issue with logic logic that
|
||
should be brought into a critical section (suggested by Mike Smith)
|
||
* sched/sched_setuptaskfiles.c: Should be 'struct socket' not
|
||
'struct sockets'. How did this compile before? (found by Kate)
|
||
* syscall/syscall.csv: Fix prototype for usleep() and prctl() (also
|
||
from Kate).
|
||
* arch/arm/src/lpc17xx/lpc17_ethernet.c: Conditionally elide setting PHY
|
||
speed/duplex. This does not work for certain PHYs. Still some unresolved
|
||
issues (also from Kate).
|
||
* tools/Config.mk, Makefile, configs/*/Make.defs: Add a new Makefile
|
||
fragment to de-quote certain strings from the Kconfig logic that
|
||
need to be used at path segments (Richard Cochran).
|
||
* arch/arm/src/stm32/stm32_usbotghost.c: The STM32 USB host driver only
|
||
works with debug turned on. The problem appears to be that with debug
|
||
OFF, there are more NAKs occuring in more places than before and this
|
||
reveals a variety of errors. This check in improves NAK robustness
|
||
for control transfers but does not resolve all of the issues.
|
||
* configs/stm3220g-eval/*/defconfig: Calibrated delay loop. It had
|
||
never been calibrated was way off.
|
||
* sched/sem_holder.c: Add logic to handler some priority inheritance
|
||
cases when sem_post() is called from an interrupt handler. The
|
||
logic is clearly wrong, but it is not known if this is the
|
||
cause of any known bugs.
|
||
* lib/stdio/lib_perror(): Add perror(). Contributed by Kate.
|
||
* lib/string/lib_strerror(): Add option CONFIG_LIBC_STRERROR that
|
||
is now required to enabled strerror(). Add an option
|
||
CONFIG_LIBC_STRERROR_SHORT that can be used to output shortened
|
||
strings by strerror().
|
||
* arch/arm/src/stm32/stm32_usbotghost.c: Finally... the USB OTG FS
|
||
appears to handle NAKing correctly.
|
||
* configs/stm32f4discovery/*: Added and verifed support for USB OTG FS
|
||
host on the STM32F4Discovery board.
|
||
* configs/*/defconfig: Remove configuration documentation from config
|
||
files. It is redundant, error-prone, and difficult to maintain.
|
||
Configuration documentation is available in configs/README.txt for
|
||
common configurations and in configs/*/README.txt for board and MCU-
|
||
specific configurations.
|
||
* configs/stm3240g-eval: Add USB host support.
|
||
* sched/os_bring.c, configs/*/defconfig, tools/mkconfig.c, and others: Added
|
||
configuration variable CONFIG_USER_ENTRYPOINT that may be used to change
|
||
the default entry from user_start to some other symbol. Contributed by
|
||
Kate. NOTE: This change does introduce a minor backward incompatibility.
|
||
For example, if your application uses NSH as its start-up program, then your
|
||
build will now fail because it will be unable to find "user_start". The fix
|
||
for this link failure is to add the following to your configuration file:
|
||
CONFIG_USER_ENTRYPOINT="nsh_main".
|
||
* libs/stdio/lib_libfread.c and lib_*flush*.c: Correct a couple of
|
||
error cases where the lib semaphore was not be released on error
|
||
exits (thanks Ronen Vainish). Also, improved some error reporting:
|
||
the generic ERROR was being used instead of the specific errno
|
||
value; the errno variable was not always set correctly.
|
||
* tools/mkfsdata.pl: The uIP web server CGI image making perl script was
|
||
moved from apps/netutils/webserver/makefsdata to nuttx/tools/mkfsdata.pl
|
||
(Part of a larger change submitted by Max Holtzberg).
|
||
* configs/stm3240g-eval/script/ld.script: All of the identical ld.script
|
||
files for the STM3240G-EVAL were replaced by one version in this directory.
|
||
* configs/stm3240g-eval/webserver: Configuration submitted by Max Holtzberg
|
||
for testing the changes to the uIP web server (see apps/ChangeLog.txt).
|
||
* lib/stdio/lib_perror.c: Remove CONFIG_LIBC_PERROR_DEVNAME. What was I
|
||
thinking? Arbitrary streams cannot be shared by different tasks.
|
||
* tools/mksyscall.c, csvparser.c, and csvparser.h: Separate CSV parsing
|
||
logic from mksyscall.c into files where it can be shared.
|
||
* tools/mksymtab.c: Add a tool that can be used to convert a CSV file
|
||
into a NuttX-style symbol table.
|
||
* sched/work_cancel.c: Fix a bad assertion (reported by Mike Smith)
|
||
* configs/stm3210e-eval/src/up_idle.c: Correct some power management
|
||
compilation errors (reported by Diego Sanchez).
|
||
* include/nuttx/wqueue.h, sched/work*, and others: Added logic to support
|
||
a second, lower priority work queue (CONFIG_SCHED_LPWORK).
|
||
* arch/arm/src/stm32/stm32_dma.c, chip/stm32*_memorymap.h: FSMC SRAM is
|
||
only 16-bits wide and the SDIO DMA must be set up differently.
|
||
* arch/arm/src/stm32/stm32_dma.c: Back out the 16-bit DMA change. It
|
||
is incorrect.
|
||
* configs/: Make use of UART4/5 vs USART4/5 consistent in all places.
|
||
* Kconfig: Serial 2STOP setting must be integer 0/1, not a boolean.
|
||
* lib/misc/sendfile.c and include/sys/sendfile.h: Add a Linux style
|
||
sendfile() (non-standard!)
|
||
* Kconfig: Refactor serial settings (moved from chip to drivers/serial).
|
||
AVR "teensy" now builds with Kconfig (contributed by Richard Cochran).
|
||
* Kconfig: Add configuration settings for the LPC17xx
|
||
* Kconfig: Add configuration settings for the LM3S (from Richard Cochran).
|
||
* Kconfig: Verify configuration settings for the STM32. This includes
|
||
changes in the way that the external SRAM is configured: Define
|
||
CONFIG_HEAP2_SIZE (decimal) instead of CONFIG_HEAP2_END (hex).
|
||
* tools/configure.sh: Don't append the apps directory path setting
|
||
if the correct setting is already in defined in the defconfig file.
|
||
* fs/fat/fs_utils.c: Improperly constructed bool expression. This
|
||
would cause many unnecessary writes to FLASH (Thanks Ronen Vainish).
|
||
* Kconfig: Verify configuration settings for the LPC43xx. This includes
|
||
some corrections to configuration variable names and defconfig settings.
|
||
* Kconfig: Add and verify configuration settings for the LPC31xx.
|
||
* arch/arm/src/stm32/stm32_uart.h and stm32_serial.c: Add logic to
|
||
re-initialize the console UART as needed to enable DMA on the
|
||
console UART (contributed by Mike Smith).
|
||
* net/recvfrom.c, net/Kconfig, include/nuttx/net/uipopt.h: Remove delay
|
||
after receiving data. That has historical reasons to be there (it
|
||
was needed before read-ahead buffering was added), but kills performance.
|
||
(Noted by Max Holtzberg).
|
||
* configs/shenzhou: Add beginnings of a board configuration for the
|
||
Shenzhou STM32107 board (see www.armjishu.com). Very little is in
|
||
place as of this initial check-in.
|
||
* QEMU: Fixes from Richard Cochran to build QEMU with Kconfig files.
|
||
* arch/*/src/Makefile: Remove some old logic that was kicked off
|
||
when CONFIG_BOOT_RUNFROMFLASH=y. The old logic used to use
|
||
objcopy to move sections. Newer logic changes the load position
|
||
of sections in the linker script. As far as I can tell, there
|
||
is nothing in the source tree now that depends on the old way of
|
||
doing things (if I am wrong, they will need a change to the linker
|
||
script).
|
||
* configs/fire-stm32v2: Configuration for the M3 Wildfire board. I
|
||
don't know very much about this board other than is has an
|
||
STM32F103VET6 chip, LCD, touchscreen, and ENC28J60 network. Very
|
||
little is in place on the initial check-in.
|
||
* configs/shenzhou: Coding for the Shenzhou board port is complete,
|
||
but tested has been deferred until I get the right tools.
|
||
* arch/arc/include/stm32/chip.h and arch/arm/src/stm32/chip.h:
|
||
Add support for the STM32F103VET6.
|
||
* fs/fs_fdopen.c: Bad check for failure to allocate memory. (Noted
|
||
by Ronen Vainish).
|
||
* drivers/mmcsd/mmcsd_sdio.c: If the MMC/SD driver were ever
|
||
uninitialized then there would be a double release of memory
|
||
(Noted by Ronen Vainish).
|
||
* fs/mmap/fs_rammap.c: Fix logic error and errno check (contributed
|
||
by Kate).
|
||
* arch/avr/src: Fixes from AVR32 build errors that have crept in
|
||
over the time; incorporated Kconfig for AVR3 (Richard Cochran).
|
||
* fs/fat and include/nuttx/fs/fat.h: The FAT file system allocates
|
||
memory for sector I/O buffers used to exchange data with the
|
||
configured block driver. In some contexts, the block driver may
|
||
require DMA-capable memory. If CONFIG_FAT_DMAMEMORY is defined,
|
||
then the FAT FS will use platform-provided DMA memory allocators
|
||
to allocate the block driver I/O buffers.
|
||
* CONFIG_NET_ENC28J60 renamed CONFIG_ENC28J60 to be consistent
|
||
in all places.
|
||
* drivers/enc28j60.c, include/nuttx/net/enc28j60.h, and
|
||
olimex-strp711/src/up_enc28j60.c: No longer passes IRQ number
|
||
as a parameter. Instead now passes a call table to manage
|
||
ENC28J60 GPIO interrupts. That is because GPIO interrupts are
|
||
handled in different ways by different MCUs and some do not
|
||
support IRQ numbers for GPIO interrupts.
|
||
* mm/mm_gran* and include/nuttx/gran.h: Add a simple granule-
|
||
based allocator. The intent of this allocator is to support
|
||
simple allocation of DMA I/O buffers. The initial check-in
|
||
is code complete but untested (not event built into the
|
||
mm/Makefile yet.
|
||
* configs/fire-stm32v2: The board port is basically functional.
|
||
Not all features have been verified. The ENC28J60 network
|
||
is not yet functional.
|
||
* configs/stm3240g-eval/discover: A configuration for testing
|
||
the UDP discovery utility. Contributed by Max Holtzberg.
|
||
* mm/README.txt: Add a new README file.
|
||
* include/nuttx/usb/usb.h, arch/*/src/*usb.c, and arch/*/src/*otg*.c:
|
||
Add hooks to to use common, external DMA buffer allocation
|
||
implementation.
|
||
* net/recvfrom.c: Don't block in recvfrom if (1) read-ahead buffering
|
||
is enabled and (2) some data was obtained from read-ahead buffers.
|
||
Blocking is a bad idea in that case because there is no timeout!
|
||
(submitted by Max Holtzberg).
|
||
* configs/stm3240g-eval/xmlrpc: An example configuration for the
|
||
Embeddable Lightweight XML-RPC Server at apps/examples/xmlrpc.
|
||
See http://www.drdobbs.com/web-development/
|
||
an-embeddable-lightweight-xml-rpc-server/184405364 for more info.
|
||
Contributed by Max Holtzberg.
|
||
* configs/*/nxwm/defconfig and sched/task_exithook.c: Fixes for
|
||
bugs that crept in during recent changes. (Submitted by Max
|
||
Holtzberg).
|
||
* arch/arm/include/armv7-m/irq.h: Fix a critical bug in irqsave().
|
||
It looks like sometimes the compile will re-order some instructions
|
||
inapproapriately. This end result is that interrupts will get
|
||
stuck off.
|
||
* drivers/mtd/w25.c: Beginning of a driver for the Windbond SPI
|
||
FLASH family (W25x16, W25x32, and W25x64). The initial check-in
|
||
is basically just the SST25 driver with some name changes.
|
||
* arch/arm/include/armv7-m/irq.h and arch/arm/src/stm32/stm32_spi.c:
|
||
Back out the last change in irq.h. It is (most likely) fine the
|
||
way it was. The really interrupt related problem was in stm32_spi.c:
|
||
When SPI3 is not enabled, then the irqrestore() falls in the
|
||
else clause.
|
||
* include/nuttx/compiler.h and other files: Moved always_inline
|
||
and noinline __attributes__ here. Also replaced all occurrences
|
||
of explicit __atributes__ in other files with definitions from
|
||
this header file.
|
||
* drivers/mtd/w25.c: The Windbond SPI FLASH W25 FLASH driver is
|
||
code complete (but still untested).
|
||
* arch/arm/src/stm32/stm32_i2c.c: I2C improvements from Mike Smith.
|
||
Unified configuration logic; dynamic timeout calculations;
|
||
I2C reset logic to recover from locked devices on the bus.
|
||
* configs/*/*/Make.defs, tools/Config.mk, Makefile: Refactor all
|
||
common make definitions from the various Make.defs files into
|
||
the common tools/Config.mk. Add support for a verbosity options:
|
||
Specify V=1 on the make command line in order to see the exact
|
||
commands used in the build (Contributed by Richard Cochran).
|
||
* drivers/net/enc28j60.c: The ENC28J60 Ethernet driver is
|
||
now functional.
|
||
* configs/fire-stm32v2: Add support or the fire-stm32v3 board as
|
||
well (untested because I do not have a v3 board).
|
||
* lib/stdio/lib_sscanf.c: Add %n psuedo-format (from Kate).
|
||
* lib/stdio/lib_sscanf.c: There is an issue of handling input
|
||
when (1) no fieldwidth is provided and (2) there is no space
|
||
seperating the input values. No solutions is in place for this
|
||
case now (either space or a fieldwidth must be provided). But
|
||
at least some of the bad logic that attempted to handle this
|
||
case has been removed (noted by Kate).
|
||
* arch/arm/src/stm32/stm32_eth.c: DMA buffer sizes must be an
|
||
even multiple of 4, 8, or 16 bytes.
|
||
* arch/arm/src/stm32/stm32_idle.c: Fixes STM32F107 DMA issues:
|
||
We cannot go into sleep mode while Ethernet is actively DMAing.
|
||
* configs/shenzhou/src/up_ssd1289.c: Add infrastructure to support
|
||
SSD1289 LCD. Initial checkin is just a clone of the
|
||
STM32F4Discovery's FSMC-based LCD interface. The Shenzhou
|
||
will need a completely need bit-banging interface; this
|
||
initial check-in is only for the framework.
|
||
* configs/shenzhou/src/up_ssd1289.c: Bit-banging driver is
|
||
code complete.
|
||
* configs/shenzhou/src/up_lcd.c: Oops. Shenzhou LCD does not
|
||
have an SSD1289 controller. Its an ILI93xx. Ported the
|
||
STM3240G-EVAL ILI93xx driver to work on the Shenzhou board.
|
||
* configs/shenzhou/nxwm: Added an NxWM configuration for the
|
||
Shenzhou board. This is untested on initial check-in. It will
|
||
be used to verify the Shenzhou LCD driver (and eventually the
|
||
touchscreen driver).
|
||
* configs/shenzhou/src/up_touchscreen.c: Add ADS7843E touchscreen
|
||
support for the Shenzhou board. The initial check-in is untested
|
||
and basically a clone of the touchscreen support for the SAM-3U.
|
||
* tools/cfgparser.c: There are some NxWidget configuration
|
||
settings that must be de-quoted.
|
||
* arch/arm/src/stm32/Kconfig: There is no SPI4. Some platforms
|
||
support SPI3 and some do not (still not clear).
|
||
* nuttx/configs/shenzhou: Various fixes to build new NxWM
|
||
configuration.
|
||
* configs/shenzhou: Oops. The Shenzhou LCD is and SSD1289,
|
||
not an ILI93xx.
|
||
* configs/shenzhou/src/up_ssd1289.c: The LCD is basically functional
|
||
on the Shenzhou board.
|
||
* graphics/nxmu: Correct some bad parameter checking that caused
|
||
failures when DEBUG was enabled.
|
||
* arch/arm/src/armv7-m/nvic.h: Add bit definitions for the AIRCR
|
||
register.
|
||
* drivers/input/ads7843.c: Need semaphore protection in logic
|
||
that samples the position.
|
||
* drivers/lcd/ssd1289.c: On some platforms we are unable to
|
||
read the device ID -- reason unknown; workaround in place.
|
||
* drivers/input/ads7843.c: Add thresholding options and an
|
||
option to swap X and Y positions. Fix some logic errors in
|
||
the SPI locking/selecting logic.
|
||
* arch/arm/src/armv7-m/up_systemreset.c: Add logic to reset
|
||
the Cortex-Mx using the AIRCR register. Contributed by Darcy
|
||
Gong.
|
||
* arch/arm/src/stm32/up_eth.c: Add logic specifically for the
|
||
DM9161 PHY. If the DM9161 failed to initialize, then use the
|
||
up_sysemreset() logic to reset the MCU. Contributed by Darcy
|
||
Gong.
|
||
* arch/arm/src/stm32/stm32_gpio.c: Add missing logic to set bit
|
||
for SPI3 remap. This fixes the XPT2046 touchscreen driver using
|
||
drivers/input/ads7843.c
|
||
* configs/shenzhou/src/up_ssd1289.c: Fix naming error in
|
||
conditional compilation.
|
||
* configs/shenzhou/nxwm/defconfig: Disable reading from the LCD.
|
||
This does not work. The hardware and the driver support the
|
||
capability, but there is some bug that causes memory corruption.
|
||
The work around for now: Just disable reading from the LCD.
|
||
* drivers/lcd/ssd1289.c: Add some logic to reduce the amount of
|
||
output when CONFIG_DEBUG_LCD is enabled.
|
||
* configs/shenzhou/nxwm/defconfig: Bug found and fixed... The
|
||
original configuration had too much stuff turned on. Reducing
|
||
stack sizes, some features, and buffer sizes made the
|
||
configuration reliable (Reading from the LCD is still disabled).
|
||
* net/uip/uip_icmpping.c: Fix problem that prevented ping from
|
||
going outside of local network. Submitted by Darcy Gong
|
||
|
||
6.23 2012-11-05 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32/stm32_rng.c, chip/stm32_rng.h, and other files:
|
||
Implementation of /dev/random using the STM32 Random Number
|
||
Generator (RNG).
|
||
* board.h file for shenzhou, fire-stm32v2, and olimex-stm32-p107:
|
||
Add frequencies for HSE, HSI, LSE, and LSI. These are needed
|
||
by the STM32 watchdog driver.
|
||
* CONFIG_EXAMPLES_*: To make things consistent, changed all occurrences
|
||
of CONFIG_EXAMPLE_* to CONFIG_EXAMPLES_*.
|
||
* drivers/mtd/w25.c and configs/*/src/up_w25.c: Several fixes for the
|
||
W25 SPI FLASH.
|
||
* configs/*/Make.defs: All buildroot tools now use the extension
|
||
xxx-nuttx-elf- vs. xxx-elf-
|
||
* configs/shenzhou/*/Make.defs: Now uses the new buildroot 4.6.3
|
||
EABI toolchain.
|
||
* lib/stdio/lib_libdtoa.c: Another dtoa() fix from Mike Smith.
|
||
* configs/shenzhou/src/up_adc.c: Add ADC support for the Shenzhou
|
||
board (Darcy Gong).
|
||
* configs/shenzhou/thttpd: Add a THTTPD configuration for the
|
||
Shenzhou board (Darcy Gong).
|
||
* include/termios.h and lib/termios/libcf*speed.c: The non-standard,
|
||
"hidden" c_speed cannot be type const or else static instantiations
|
||
of termios will be required to initialize it (Mike Smith).
|
||
* drivers/input/max11802.c/h, and include/nuttx/input max11802.h: Adds
|
||
support for the Maxim MAX11802 touchscreen controller (contributed by
|
||
Petteri Aimonen).
|
||
* graphics/nxtk/nxtk_events.c: Missing implementation of the blocked
|
||
method. This is a critical bugfix for graphics support (contributed
|
||
by Petteri Aimonen).
|
||
* drivers/usbdev/pl2303.c, drivers/usbdev/usbmsc.h, and
|
||
include/nuttx/usb/cdcacm.h: USB_CONFIG_ATTR_SELFPOWER vs.
|
||
USB_CONFIG_ATT_SELFPOWER (contributed by Petteri Aimonen).
|
||
* arch/arm/src/armv7-m/up_memcpy.S: An optimized memcpy() function for
|
||
the ARMv7-M family contributed by Mike Smith.
|
||
* lib/strings/lib_vikmemcpy.c: As an option, the larger but faster
|
||
implemementation of memcpy from Daniel Vik is now available (this is
|
||
from http://www.danielvik.com/2010/02/fast-memcpy-in-c.html).
|
||
* lib/strings/lib_memset.c: CONFIG_MEMSET_OPTSPEED will select a
|
||
version of memset() optimized for speed. By default, memset() is
|
||
optimized for size.
|
||
* lib/strings/lib_memset.c: CONFIG_MEMSET_64BIT will perform 64-bit
|
||
aligned memset() operations.
|
||
* arch/arm/src/stm32/stm32_adc.c: Need to put the ADC back into the
|
||
initial reset in the open/setup logic. Opening the ADC driver works
|
||
the first time, but not the second because the device is left in a
|
||
powered down state on the last close.
|
||
* configs/olimex-lpc1766stck/scripts: Replace all of the identical
|
||
ld.script files with the common one in this directory.
|
||
* configs/stm3220g-eval/scripts: Replace all of the identical
|
||
ld.script files with the common one in this directory.
|
||
* configs/hymini-stm32v/scripts: Replace all of the identical
|
||
ld.script files with the common one in this directory.
|
||
* configs/lpcxpresso-lpc1768/scripts: Replace all of the identical
|
||
ld.script files with the common one in this directory.
|
||
* binfmt/elf.c, binfmt/libelf, include/elf.h, include/nuttx/elf.h: Add
|
||
basic framework for loadable ELF module support. The initial check-
|
||
in is non-functional and is simply the framework for ELF support.
|
||
* include/nuttx/binfmt.h, nxflat.h, elf.h, and symtab.h: Moved to
|
||
include/nuttx/binfmt/.
|
||
* arch/sim/src/up_elf.c and arch/x86/src/common/up_elf.c: Add
|
||
for ELF modules.
|
||
* arch/arm/include/elf.h: Added ARM ELF header file.
|
||
* include/elf32.h: Renamed elf.h to elf32.h.
|
||
* configs/stm32f4discovery/ostest: Converted to use the new
|
||
Kconfig-based configuration system.
|
||
* configs/stm32f4discovery/elf and configs/stm32f4discovery/scripts/gnu-elf.ld
|
||
Add a configuration for testing the ARM ELF loader.
|
||
* binfmt/libelf: Can't use fstat(). NuttX does not yet support it. Damn!
|
||
* binfmt/libelf: The basic ELF module execution appears fully functional.
|
||
* configs/shenzhou/src/up_relays.c: Add support for relays from the
|
||
Shenzhou board. Contributed by Darcy Gong.
|
||
* lib/fixedmath: Moved the old lib/math to lib/fixedmath to make room for
|
||
the math library from the Rhombus OS
|
||
* lib/math: Now contains the math library from the Rhombus OS by Nick Johnson
|
||
(submitted by Darcy Gong).
|
||
* include/float.h: Add a first cut at the float.h header file. This
|
||
really should be an architecture/toolchain-specific header file. It
|
||
is only used if CONFIG_ARCH_FLOAT_H is defined.
|
||
* lib/math: Files now conform to coding standards. Separated float,
|
||
double, and long double versions of code into separate files so that
|
||
they don't draw in so much un-necessary code when doing a dumb link.
|
||
* binfmt/libelf: The ELF loader is working correctly with C++ static
|
||
constructors and destructors and all.
|
||
* Documentation/NuttXBinfmt.html: Add documentation of the binary loader.
|
||
* configs/sim/ostest: Converted to use the mconf configuration tool.
|
||
* configs/sim/cxxtest: New test that will be used to verify the uClibc++
|
||
port (eventually).
|
||
* include/nuttx/fs/fs.h, lib/stdio/lib_libfread.c, lib_ferror.c,
|
||
lib_feof.c, and lib_clearerr.c: Add support for ferror(), feof(),
|
||
and clearerror(). ferror() support is bogus at the moment (it
|
||
is equivalent to !feof()); the others should be good.
|
||
* configs/stm32f4discovery/include/board.h: Correct timer 2-7
|
||
base frequency (provided by Freddie Chopin).
|
||
* include/nuttx/sched.h, sched/atexit.c, and sched/task_deletehook.c:
|
||
If both atexit() and on_exit() are enabled, then implement atexit()
|
||
as just a special caseof on_exit(). This assumes that the ABI can
|
||
handle receipt of more call parameters than the receiving function
|
||
expects. That is usually the case if parameters are passed in
|
||
registers.
|
||
* libxx/libxx_cxa_atexit(): Implements __cxa_atexit()
|
||
* configs/stm32f4discovery/cxxtest: New test that will be used to
|
||
verify the uClibc++ port (eventually). The sim platform turned not
|
||
to be a good platform for testing uClibc++. The sim example will not
|
||
run because the simulator will attempt to execute the static
|
||
constructors before main() starts. BUT... NuttX is not initialized
|
||
and this results in a crash. On the STM324Discovery, I will have
|
||
better control over when the static constructors run.
|
||
* RGMP 4.0 updated from Qiany Yu.
|
||
* configs/*/Make.defs and configs/*/ld.script: Massive clean-up
|
||
and standardization of linker scripts from Freddie Chopin.
|
||
* net/netdev_ioctl.c: Add interface state flags and ioctl calls
|
||
to bring network interfaces up and down (from Darcy Gong).
|
||
* config/stm32f4discovery: Enable C++ exceptions. Now the entire
|
||
apps/examples/cxxtest works -- meaning that the uClibc++ is
|
||
complete and verified for the STM32 platform.
|
||
|
||
6.24 2012-12-20 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32: Support for STM32F100 high density chips
|
||
added by Freddie Chopin.
|
||
* configs/stm32f100_generic: Support for generic STM32F100RC board
|
||
contributed by Freddie Chopin.
|
||
* arch/arm/src/stm32_otgfsdev.c: Partial fix from Petteri Aimonen.
|
||
* drivers/lcd/ug-2864ambag01.c and include/nuttx/lcd/ug_2864ambag01.h:
|
||
LCD driver for the Univision OLED of the same name (untested on
|
||
initial check-in).
|
||
* configs/stm32f4discovery/nxlines: Configure to use mconf/Kconfig
|
||
tool.
|
||
* configs/stm32f4discovery/src/up_ug2864ambag01.c: Board-specific
|
||
initialization for UG-2864AMBAG01 OLED connecte to STM32F4Disovery.
|
||
* libxx/libxx_stdthrow.cxx: Exception stubs from Petteri Aimonen.
|
||
* configs/stm32f4discovery/src/up_ug2864ambag01.c: Driver has been
|
||
verified on the STM32F4Discovery platform. Some tuning of the
|
||
configuration could improve the presentation. Lower resolution displays
|
||
are also more subject to the "fat, flat line bug" that I need to fix
|
||
someday. See http://www.nuttx.org/doku.php?id=wiki:graphics:nxgraphics
|
||
for a description of the fat, flat line bug.
|
||
* libc: Renamed nuttx/lib to nuttx/libc to make space for a true lib/
|
||
directory that will be forthcoming. Also rename libraries: liblib.a -> libc.a,
|
||
libulib.a -> libuc.a, libklib.a -> libkc.a, liblibxx.a ->libcxx.a.
|
||
(I will probably, eventually rename libxx to libcxx for consistency)
|
||
* Makefile, lib/: A new, empty directory that will hold generated libraries.
|
||
This simplifies the library patch calculations and lets me get rid of some
|
||
bash logic. The change is functional, but only partially complete;
|
||
additional logic is needed in the arch/*/src/Makefile's as well. Right
|
||
now that logic generate multiple library paths, all pointing to the lib/
|
||
directory.
|
||
* arch/*/src/Makefile: Now uses only the libraries in lib/
|
||
Replace bash fragments that test for board/Makefile.
|
||
* Makefile.win: The beginnings of a Windows-native build. This is just
|
||
the beginning and not yet ready for prime time use.
|
||
* configs/stm32f4discovery/winbuild: This is a version of the standard
|
||
NuttX OS test, but configured to build natively on Windows. Its only
|
||
real purpose is to very the native Windows build logic.
|
||
* tools/mkdeps.bat and tools/mkdeps.c: mkdeps.bat is a failed attempt
|
||
to leverage mkdeps.sh to CMD.exe. It fails because the are certain
|
||
critical CFLAG values that cannot be passed on the CMD.exe command line
|
||
(like '='). mkdeps.c is a work in progress that will, hopefully,
|
||
replace both mkdeps.sh and mkdeps.bat.
|
||
* tools/Config.mk: Centralize the definition of the script that will be
|
||
used to generated header file include paths for the compiler. This
|
||
needs to be centralized in order to support the Windows native build.
|
||
* tools/incdir.bat: A replacement for tools/incdir.sh for use with the
|
||
the Windows native build.
|
||
* Makefile.unix: The existing top-level Makefile has been renamed
|
||
Makefile.unix.
|
||
* Makefile: This is a new top-level Makefile that just includes
|
||
either Makefile.unix or Makefile.win
|
||
* configs/stm3240g-eval/src: Qencoder fixes from Ryan Sundberg.
|
||
* arch/arm/src/stm32/stm32_qencoder.c: TIM3 bug fix from Ryan Sundberg.
|
||
* tools/mkromfsimg.sh: Correct typo in an error message (Ryan Sundberg)
|
||
* arch/*/src/Makefile: Remove tftboot install and creation of System.map
|
||
for Windows native build. The first is a necessary change, the second
|
||
just needs re-implemented.
|
||
* configs/mirtoo: Update Mirtoo pin definitions for Release 2. Provided
|
||
by Konstantin Dimitrov.
|
||
* Fixed an uninitialized variable in the file system that can cause
|
||
assertions if DEBUG on (contributed by Lorenz Meier).
|
||
* Config.mk: Defined DELIM to be either / or \, depending upon
|
||
CONFIG_WINDOWS_NATIVE. This will allow me to eliminate a lot of
|
||
conditional logic elsewhere.
|
||
* nuttx/graphics: One a mouse button is pressed, continue to report all
|
||
mouse button events to the first window that received the initial
|
||
button down event, even if the mouse attempts to drag outside the
|
||
window. From Petteri Aimonen.
|
||
* nuttx/graphics/nxmu/nx_block.c: One more fix to the NX block message
|
||
logic from Petteri Aimonen.
|
||
* include/nuttx/wqueue.h: Some basic definitions to support a user-
|
||
space work queue (someday in the future).
|
||
* graphics/nxmu: Add semaphores so buffers messages that send buffers
|
||
will block until the buffer data has been acted upon.
|
||
* graphics/nxmw: Extended the blocked messages to cover mouse movement
|
||
and redraw events. These will also cause problems if sent to a window
|
||
while it is closing.
|
||
* arch/several: Change UARTs are enabled for i.MX, LM3S, ez80, and M16C to
|
||
match how they are enabled for other architectures.
|
||
* configs/ez80f910200kitg: Convert to use mconf configuration.
|
||
* sched/pause.c: Implements the POSIX pause() function.
|
||
* ez80: Lots of changes to ez80 configurations and build logic as I
|
||
struggle to get a clean Windows build (still not working).
|
||
* configs/cloudctrl: Darcy Gong's CloudController board. This is a
|
||
small network relay development board. Based on the Shenzhou IV development
|
||
board design. It is based on the STM32F107VC MCU.
|
||
* arch/arm/src/stm32_serial.c and stm32_lowputc.c: Added optional RS-485
|
||
direction bit control. From Freddie Chopin.
|
||
* Lots of build files: ARMv7-M and MIPS32 Make.defs now include a common
|
||
Toolchain.defs file that can be used to manage toolchains in a more
|
||
configurable way. Contributed by Mike Smith
|
||
* configs/stm32f4discovery/winbuild and configs/cloudctrl: Adapted to use
|
||
Mike's Toolchain.defs.
|
||
* tools/configure.sh: Adapted to handle paths and setenv.bat files correctly
|
||
for native Windows builds.
|
||
* More of build files: AVR and AVR32 Make.defs now include a common
|
||
Toolchain.defs file that can be used to manage toolchains in a more
|
||
configurable way. Contributed by Mike Smith
|
||
* tools/incdir.sh and incdir.bat: Add -s option to generate system header
|
||
file paths.
|
||
* nuttx/arch/arm/src/arm/Toolchain.defs: Add support for more ARM toolchains
|
||
(from Mike Smith).
|
||
* arch/arm/src/stm32/stm32f40xxx_rcc.c: Enabled FLASH prefetch (from Petteri
|
||
Aimonen).
|
||
* graphics/nxtk/nxtk_filltrapwindow.c: Correct an offset problem (from
|
||
Peterri Aimonen).
|
||
* graphics/nxglib/nxglib_splitline.c: Fix error in drawing of near horizontal
|
||
lines (from Peterri Aimonen).
|
||
* sched/task_exithook.c: Missing right bracket with certain conditional
|
||
compilation (thanks James Goppert).
|
||
* arch/arm/srch/stm32/stm32_otgfshost.c: Replace timeout handling; use
|
||
system tick instead of frame counter. The frame counter gets reset to
|
||
zero at 0x3fff making it error prone.
|
||
* arch/arm/src/stm32/stm32f20xx_rcc.c and stm32f40xx_rcc.c: Added option
|
||
CONFIG_STM32_FLASH_PREFETCH. FLASH prefetch will now only be enabled
|
||
if this option is selected.
|
||
* configs/ez80f910200zco/ostest: Now uses Kconfig/mconf configuration
|
||
tool. Updated to build in native Windows environment. Other ez80f910200zco
|
||
build scripts also updated.
|
||
* configs/z8f64200100kit/ostest: Update to same level as ez80 configurations.
|
||
* nuttx/configs/z8f64200100kit/scripts/setenv.bat: Add support for native
|
||
Windows build.
|
||
* nuttx/arch/arm/src/lpc17xx/lpc17_i2c.c: Resources not being released when
|
||
I2C is uninitialized.
|
||
* cloudctrl/src/up_chipid.c and shenzhou/src/up_chipid.c: Add functions to
|
||
get chip ID. Contributed by Darcy Gong. These should not be board-dependent,
|
||
but should be in arch/arm/src/stm32 where they can be used from any board.
|
||
* sched/work_thread.c: Fix backward conditional compilation. This might
|
||
has caused a memory leak. From Freddie Chopin.
|
||
* configs/<many>/Make.defs: Fix typo -wstrict-prototypes should be
|
||
-Wstrict-prototypes (From Denis Carilki).
|
||
* arch/arm/src/calapyso/calypso_keypad.c: Add Calypso keypad driver. From
|
||
Denis Carilki.
|
||
* z8encore000zco/ostest and z8f64200100kit/ostest: Converted to use Kconfig/
|
||
mconf configuration tool.
|
||
* arch/arm/src/armv7-m/up_exception.S: missing curly braces for push/pop
|
||
From Freddie Chopin.
|
||
* z8encore000zco/ostest and z8f64200100kit/ostest: Can now be modified to
|
||
support the Windows native builds (see corresponding README.txt files).
|
||
* configs/z16f2800100zcog - All configurations updated to use the ZDS-II
|
||
5.0.1 toolchain.
|
||
* configs/z16f2800100zcog - All configurations updated to use Kconfig/mconf
|
||
configuration tools.
|
||
* configs/z16f2800100zcog/ostest - Now supports a native Windows build
|
||
(other ZNEO configs may also support the native build, but this has not
|
||
been verfiied).
|
||
* include/nuttx/input/keypad.h, arch/arm/src/calypso/calypso_keypad.c, and
|
||
configs/compal_e99/nsh_highram: First cut at a standard keypad interface
|
||
definition. Contributed by Denis Carikli.
|
||
* libc/stdlib/lib_rand.c: Always add one to result congruential generators
|
||
to avoid the value zero. Suggested by Freddie Chopin.
|
||
* tools/b16.c: Fixed precision math conversion utility.
|
||
* graphics/nxglib/nxglib_splitline.c: Fix the "fat, flat line bug"
|
||
* arch/z80/src/*/Toolchain.defs: Add dummy Toolchain.defs files for the
|
||
z80 family.
|
||
* configs/z80sim/ostest: Converted to build with the Kconfig/mconf tool.
|
||
Current configuration failed to build for me (Ubuntu 12.10, SDCC 3.2.0
|
||
pre-built for Linux) due to a glibc memory corruptionerror in SDCC.
|
||
* configs/z80sim/ostest: Default is now the Windows native build. See
|
||
configs/z80sim/README.txt for instructions to convert back to a Linux or
|
||
or Cygwin build.
|
||
* arch/z80/src/Makefile.sdccw: Renamed makefiles with extensions zdiil,
|
||
zdiiw, sdccl, and sdccw for the ZDS-II vs SDCC compilers and for the
|
||
POSIX vs Windows native builds.
|
||
* nuttx/drivers/mtd/ftl.c: Fix for the flash translation layer. Short
|
||
unaligned writes were buggy. From Petteri Aimonen.
|
||
* nuttx/libc/math/lib_round*.c: Add rounding functions to the math
|
||
library. Contributed by Petteri Aimonen.
|
||
* include/cxx/cstdlib: Add stroul(). From Petteri Aimonen.
|
||
* arch/*/include/limits.h: Change signed minimum values from, for example,
|
||
(-128) to (-127 - 1) to avoid overflows under certain conditions. From
|
||
Peterri Aimonen.
|
||
* graphics/nxtk/nxtk_subwindowmove.c: Previously it was very difficult to
|
||
do e.g. "scroll by dx, dy". When given the full window area, nxtk_subwindowmove
|
||
would clip the offset always to 0,0. It makes more sense for it to clip the
|
||
source area and not modify the offset. From Petteri Aimonen.
|
||
* graphics/nxtk/nxtk_getwindow.c: Clipping would change the offset of returned
|
||
data, and caller has no way to know what the new offset would be. This messes
|
||
up font drawing when the text is partially out of window, e.g. when scrolling.
|
||
Also from Petteri Aimonen.
|
||
* include/stdbool.h: Can now be disabled for C++ files if CONFIG_C99_BOOL8 is
|
||
defined. CONFIG_C99_BOOL8 indicates (1) that the sizeof(_Bool) is one in both
|
||
C and C++, and (2) the C compiler is C99 and supports the _Bool intrinsic
|
||
type. Requested by Freddie Chopin.
|
||
* include/stdlib/lib_rand.c: Various additional changes so that the integer
|
||
value zero can be returned. Requested by Freddie Chopin.
|
||
* arch/z80/src/Makefile.sdcc*, z80/up_mem.h: Redesign Z80 build so that it
|
||
no longer depends on Bash scripts.
|
||
* configs/z80sim/nsh and pashello: Converted to (1) use the kconfig-frontends
|
||
configuration tool, and (2) to build natively under Windows. The NSH
|
||
configuration is verified; the pashello configuration needs a more TLC.
|
||
* tools/copydir.sh: Rename tools/winlink.sh to tools/copydir.sh
|
||
* tools/link.bat, unlink.bat, and copydir.bat: Add Windows counterparts
|
||
to the link.sh, unlink.sh, and copydir.sh Bash scripts.
|
||
* configs/z80sim/pashello: Now builds correctly.
|
||
* configs/xtrs/ostest, nsh, and pashello: Converted to (1) use the kconfig-
|
||
frontends configuration tool, and (2) to build natively under Windows.
|
||
* drivers/serial/Kconfig and sched/Kconfig: Two names for same configuration:
|
||
CONFIG_LOWLEVEL_CONSOLE is bogus and CONFIG_DEV_LOWCONSOLE is in the wrong
|
||
Kconfig file. Moved to drivers/serial/Kconfig replacing CONFIG_LOWLEVEL_CONSOLE.
|
||
* arch/z80/include/z180: Add header files for z180 chips. Initial versions
|
||
are just clones of z80 header files.
|
||
* arch/z80/src/z180: Add source files for z180 chips. Initial versions
|
||
are just clones of z80 source files.
|
||
* include/nuttx/arch.h: Add address environment control interfaces (for use
|
||
with CPUs the provide MCUs and support process-like address environments).
|
||
* arch/z80/src/z180/z180_mmu.*: Add MMU support for z180 tasks.
|
||
* configs/p112: Add very basic board support and an examples/ostest
|
||
configuration for the venerable P112 board.
|
||
* sched/os_bringup.c: If CONFIG_PATH_INITIAL is defined, then the initial
|
||
environment of the task started by os_bringup() will have the PATH
|
||
environment variable defined to be that string.
|
||
* binfmt/binfmt_exepath.c: If CONFIG_BINFMT_EXEPATH is defined, then this
|
||
file will be built. It contains logic to search for regular files at
|
||
the absolutes paths found in the current PATH environment variable
|
||
setting. This is untested and not yet hooked into the binfmt exec()
|
||
logic on initial check-in
|
||
* binfmt/binfmt_loadmodule.c: load_module() will now traverse the PATH
|
||
variable to locate files from their relative path.
|
||
* include/nuttx/arch.h and arch/z80/src/z180/z180_mmu.c: Restructure the
|
||
address environment interfaces so that they will better integrate with
|
||
binfmt/.
|
||
* binfmt/libelf/*, binfmt/libnxflat/* and other files: Integrate the
|
||
address environment interfaces. If CONFIG_ADDRENV=y, then binfmt/
|
||
will now create an address environment for new tasks (instead of
|
||
just malloc'ing the task memory).
|
||
* configs/stm32f4discovery/elf: Enable support/test of the PATH
|
||
to find executables using a relative path.
|
||
|
||
6.25 2013-02-01 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* graphics/: Adds 5x8 monospace font. This tiny font is useful for graph
|
||
labels and for small bitmapped display. Contributed by Petteri
|
||
Aimonen.
|
||
* configs/stm3220g-eval/nxwm: Converted to use the kconfig-frontends
|
||
configuration tool.
|
||
* configs/sim/nxwm: Converted to use the kconfig-frontends configuration
|
||
tool.
|
||
* include/pthread.h: In sys/prctl.h because it is needed by
|
||
pthread_[set|get]name_np()
|
||
* tools/kconfig.bat: Kludge to run kconfig-frontends from a DOS shell.
|
||
* sched/sig_timedwait.c: Should always move the time up to the next
|
||
largest number of system ticks. The logic was rounding. Noted by
|
||
Petteri Aimonen.
|
||
* arch/arm/src/up_head.S: Fix backward conditional compilation. NOTE
|
||
there is a issue of ARM9 systems with low vectors and large memories
|
||
that will have to be addressed in the future.
|
||
* libc/misc/lib_kbdencode.c and lib_kbddecode.c: Add logic to marshal
|
||
and serialize speical keyboard commands intermixed with normal ASCII
|
||
data (not yet hooked into anything).
|
||
* drivers/usbhost/usbhost_hidkbd.c: If CONFIG_HIDKBD_ENCODED is
|
||
defined, this driver will now use libc/misc/lib_kbdencode.c to
|
||
encode special function keys.
|
||
* configs/olimex-lpc1766stk/hidkbd: This configuration has been
|
||
converted to use the kconfig-frontends configuration tool.
|
||
* drivers/lcd/ug-2864hsweg01.c and include/nuttx/lcd/ug-2864hsweg01.h:
|
||
Driver for UG-2864HSWEG01 OLED contributed by Darcy Gong.
|
||
* configs/stm32f4discovery/src/up_ug2864hsweg01.c: Support for the
|
||
UG-2864HSWEG01 OLED for the STM32F4Discovery board.
|
||
* drivers/usbhost/usbhost_hidkbd.c: Correct a logic error in how
|
||
tasks waiting for read data are awakened.
|
||
* libc/misc/lib_kbdencode.c and lib_kbddecode.c: Now handles keypress
|
||
events too. However, the USB HID keyboard driver has not yet been
|
||
updated to detect key release events. That is kind of tricky in
|
||
the USB HID keyboard report data.
|
||
* configs/mcu123-214x/nsh: Converted to use the kconfig-frontends
|
||
configuration tool.
|
||
* configs/zp214xpa: Add basic support for the The0.net ZP213x/4xPA
|
||
board (with the LPC2148 and the UG_2864AMBAG01).
|
||
* configs/sim/nxlines: Add an nxlines configuration for the
|
||
simulator.
|
||
* configs/zp214xpa/nxlines: Add an nxlines configuration for the
|
||
ZP213x/4xPA (with the LPC2148 and the UG_2864AMBAG01). Working
|
||
as of 2012-12-30.
|
||
* configs/olimex-lpc1766stk/wlan: Remove non-functional
|
||
configuration.
|
||
* configs/stm32f4discovery/src and nuttx/drivers/lcd/ug-2864hsweg01.c:
|
||
Updates and corrections for the UG-2864HSWEG01 from Darcy Gong.
|
||
* configs/lm326965-ek: All configurations converted to use the
|
||
kconfig-frontends configuration tool.
|
||
* configs/Kconfig: NSH_MMCSDSPIPORTNO should depend on MMCSD_SPI,
|
||
not just SPI (from Jose Pablo Carballo).
|
||
* arch/arm/src/arm/Kconfig and armv7m/Kconfig: Add an option for
|
||
buildroot toolchains: They may be EABI or OABI.
|
||
* include/nuttx/progmem and arch/arm/src/stm32/stm32_flash.c:
|
||
Fix a counting bug plus change interface to use either relative
|
||
or absolute FLASH addressing (from Freddie Chopin).
|
||
* libc/misc/Make.defs: Fix error in conditional for KBD CODEC.
|
||
* libc/Kconfig and configs/*/defconfig (several): The default
|
||
setting should be CONFIG_LIB_KBDCODEC=n
|
||
* tools/configure.c: configure.c can be used to build a work-alike
|
||
program as a replacement for configure.sh. This work-alike
|
||
program would be used in environments that do not support Bash
|
||
scripting (such as the Windows native environment).
|
||
* tools/configure.bat: configure.bat is a small Windows batch
|
||
file that can be used as a replacement for configure.sh in a
|
||
Windows native environment. configure.bat is actually just a
|
||
thin layer that executes configure.exe if it is available. If
|
||
configure.exe is not available, then configure.bat will attempt
|
||
to build it first.
|
||
* arch/arm/src/lpc17xx/lpc17_syscon.h: Correct some typos in bit
|
||
definitions (from Rommel Marcelo).
|
||
* libc/string/lib_strndup.c: strndup() should use strnlen(), not
|
||
strlen(), to determine the size of the string.
|
||
* sched/os_bringup.c: Remove support for CONFIG_BUILTIN_APP_START.
|
||
This is not really a useful feature and creates a violation of the
|
||
OS layered architecture.
|
||
* include/unistd.h, arch/arch/src/*: Implement a simple vfork().
|
||
On initial checkin, this API is available only for ARM platforms.
|
||
* binfmt/binfmt_exec.c: exec() now sets the priority of the new task
|
||
to the same priority as the current task (instead of the arbirtrary
|
||
value of 50).
|
||
* libc/unisted/lib_execv.c and lib_execl.c: New, somewhat flawed,
|
||
implementations of execv() and execl().
|
||
* tools/cfgdefine.c: Strips quotes from CONFIG_EXECFUNCS_SYMTAB
|
||
value.
|
||
* arch/arm/include/lm3s/chip.h: Move chip definitions into
|
||
public include area for compatibility with other architectures.
|
||
* arch/arm/src/lm3s/chip: Move register definition header files
|
||
into a new chip/ sub-directory.
|
||
* arch/arm/src/lm3s/lm3s_internal.h: Broke up into several
|
||
smaller header files.
|
||
* arch/arm/src/lm: Rename the arch/arm/src/lm3s directory to
|
||
arch/arm/src/lm so that is can support other members of the
|
||
Stellaris family.
|
||
* libc/spawn: Add file action interfaces needed by posix_spawn().
|
||
* sched/clock_time2ticks.c: Another case where time was being
|
||
rounded down instead of up (from Mike Smith).
|
||
* libc/spawn: Implementation of posix_spawn() is complete but
|
||
untested and undocumented.
|
||
* drivers/usbdev/pl2303.c: Fix typols in the PL2303 driver
|
||
(from Max Holtzberg).
|
||
* configs/stm32f4discovery/posix_spawn: Added a configuration
|
||
that can be used for testing posix_spawn().
|
||
* arch/arm/src/stm32: Bring F1 support for general DMA and serial
|
||
DMA in paricular up to parity with F2/F4 (from Mike Smith).
|
||
* libc/stdio/lib_libfread.c: Correct some error handling when
|
||
lib_fread() was passed a bad stream. Needed to move the
|
||
releasing of a semaphore inside of some conditional logic
|
||
(cosmetic).
|
||
* include/nuttx/sched.h, sched/task_setup.c, and sched/task_exithook.c:
|
||
Add support for remembering the parent task and sending
|
||
SIGCHLD to the parent when the task exists.
|
||
* sched/task_exithook.c: Fixed a *critical* bug. Here is
|
||
the scenario: (1) sched_lock() is called increments the lockcount
|
||
on the current TCB (i.e., the one at the head of the ready to run
|
||
list), (2) sched_mergepending is called which may change the task
|
||
at the head of the ready-to-run list, then (3) sched_unlock() is called
|
||
which decrements the lockcount on the wrong TCB. The failure case
|
||
that I saw was that pre-emption got disabled in the IDLE thread,
|
||
locking up the whole system.
|
||
* sched/sched_waitpid.c: Use SIGCHLD instead of a semaphore. This
|
||
is a much more spec-compliant implementation. However, there are
|
||
some issues with overruning signals because NuttX does not support
|
||
queueing of signals (POSIX does not require it). I think it may
|
||
need to.
|
||
* sched/sched_waitid.c and sched_wait.c: Add support for waitid()
|
||
and wait(). See issues with waitpid() above.
|
||
* include/nuttx/fs/fs.h and fs/fs_files.c: Add a dup() method to
|
||
the struct mountpt_operations. When dup'ing a file that resides
|
||
on a mounted volume, let the file system's dup() method do the
|
||
work.
|
||
* fs/romfs/fs_romfs.c: Implemented the dup() method for the ROMFS
|
||
file system.
|
||
* fs/fat/fs_fat32.c, fs/nxffs/nxffs_initialize, and
|
||
fs/nfs/nfs_vfsops.c: Add hooks for dup() method (not yet
|
||
implemented).
|
||
* fs/romfs: Remove the rf_open flag. It looks good, but actually
|
||
does nothing.
|
||
* fs/fat: Remove the ff_open flag. Same story as for the ROMFS
|
||
rf_open flag.
|
||
* fs/fat/fs_fat32.c, fs/nxffs/nxffs_initialize, and
|
||
fs/nfs/nfs_vfsops.c: Completed implementation of the dup() methods.
|
||
There is still no good test available.
|
||
* sched/sig_timedwait.c: sigtimedwait() would return a bad signal
|
||
number if the signal was already pending when the function was
|
||
called.
|
||
* configs/ubw32/scripts: All common linker scripts moved to this
|
||
scripts sub-directory
|
||
* configs/ubw32/ostest: Configuration configured to use the
|
||
kconfig-frontends tools.
|
||
* arch/mips/src/mips32/up_vfork.c, up_vfork.h, and vfork.S:
|
||
Implement vfork() for MIPS32 (no floating point support)
|
||
* configs/ubw32/ostest: Enable the vfork() test.
|
||
* fs/binfs: Move apps/builtin/binfs.c to fs/binfs/fs_binfs.c
|
||
CONFIG_APPS_BINDIR rename CONFIG_FS_BINFS
|
||
* include/nuttx/binfmt/builtin.h: Some of the content of
|
||
apps/include/apps.h moved to include/nuttx/binfmt/builtin.h
|
||
* binfmt/libbuiltin/libbuiltin_utils.c: Move builtin
|
||
utility functions from apps/builtin/exec_builtins.c to
|
||
binfmt/libbuiltin/libbuiltin_utils.c
|
||
* binfmt/builtin.c and binfmt/libbuiltin: Add a binary "loader"
|
||
that can be used to execute builtin programs from the BINFS
|
||
file system.
|
||
* configs/sim/nsh: Convert to use kconfig-frontends configuration
|
||
tool.
|
||
* binfmt/binfmt_schedunload.c: Add logic based on SIGCHLD to
|
||
automatically unload and clean-up after running a task that
|
||
was loaded into memory.
|
||
* binfmt/libbuiltin: Extensions from Mike Smith
|
||
* sched/task_reparent.c: Add internal interface to change the
|
||
parent task.
|
||
* sched/task_posixspawn(): Move libc/spawn/lib_ps.c to
|
||
sched/task_posixspawn() now it requires internal, reparenting
|
||
interfaces
|
||
* include/nuttx/spawn(): Move libc/spawn.h to include/nuttx/spawn.h
|
||
* arch/arm/include/lpc17xx/chip.h, irq178x.h: Integrate Marcelo
|
||
Rommel's LPC1788 definitions into the base LPC17xx.
|
||
* configs/olimex-lpc1766stk/nsh: Convert configuration to use
|
||
the kconfig-frontends tools.
|
||
* sched/task_reparent.c: Simplify reparenting interface.
|
||
* arch/arm/src/[many]: More LPC1788 definitions from Rommel
|
||
Marcelo incorporated.
|
||
* configs/open1788: Board configuration for the Wave Share
|
||
Open1788 board. Still fragmentary (contributed by Rommel
|
||
Marcelo, adapted to use kconfig-frontends.
|
||
* net/send(): Add logic to work around delayed ACKs by splitting
|
||
packets (contributed by Yan T.).
|
||
* net/recvfrom(): Fix a bug. When the host closes a connection
|
||
(gracefully). recv[from]() returned success and the closure
|
||
was never detected. Hmmm.. I don't know why the network monitor
|
||
did not catch this event. This is an important bug fix.
|
||
* net/recvfrom(): Fix a introduced with the last bugfix. If
|
||
the peer does an orderly closure of the socket, report 0 not
|
||
-ENOTCONN
|
||
* configs/lm3s6965-ek/README.txt and tools/: Add an OpenOCD
|
||
configuration for the LM3S (from Jose Pablo Carballo).
|
||
* nuttx/lcd/hd4478ou.h and configs/pcblogic-pic32mx/src/up_lcd1602:
|
||
Start of support of LCD1602 alphanumeric LCD. I need a few
|
||
more parts before I can finish integrating this one.
|
||
* arch/arm/src/*/chip.h and arch/arm/include/*/chip.h: Move all
|
||
priority ranges from the src to the include chip.h header file.
|
||
* arch/arm/include/armv7-m/irq.h: Add inline functions to enable
|
||
and disable interrupts via the BASEPRI register.
|
||
* arch/arm/Kconfig: Add new option CONFIG_ARM7VM_USEBASEI
|
||
* arch/arm/src/*/*_irq.c: Set the priority of the SVCALL exception
|
||
to the highest possible value.
|
||
* arch/armv7-m/up_hardfault.c: Fail if a hardfault occurs
|
||
while CONFIG_ARM7VM_USEBASEPRI=y.
|
||
* arch/arm/src/stm32/stm32_serial.c: Add support for USART
|
||
single wire mode (Contributed by the PX4 team).
|
||
* sched/: Implement support for retaining child task status after
|
||
the child task exists. This is behavior required by POSIX.
|
||
But in NuttX is only enabled with CONFIG_SCHED_HAVE_PARENT and
|
||
CONFIG_SCHED_CHILD_STATUS
|
||
* Add support for keyboard encode to the keypad test (from
|
||
Denis Carikli).
|
||
* configs/olimex-lpc1766stk/nettest: Configuration converted to
|
||
use the kconfig-frontends tools.
|
||
* net/net_poll.c: Split net_poll() to create psock_poll() too.
|
||
* net/net_poll.c: Fix poll/select issure reported by Qiang:
|
||
poll_interrupt() must call net_lostconnection() when a
|
||
loss of connection is reported. Otherwise, the system will
|
||
not know that the connection has been lost.
|
||
* sched/group_create.c, group_join.c, and group_leave.c: Add
|
||
support for task groups.
|
||
* sched/group_signal.c and task_exithook.c: Send signal to all
|
||
members for the parent task group.
|
||
* include/nuttx/sched.h and sched/env_*.c: Move environment
|
||
variables into task group structure.
|
||
* sched/: Lots of file changed. Don't keep the parent task's
|
||
task ID in the child task's TCB. Instead, keep the parent
|
||
task group IN the child task's task group.
|
||
* fs/, sched/, include/nuttx/sched.h, and include/nutts/fs/fs.h:
|
||
Move file data from the TCB to the task group structure.
|
||
* libc/stdio/, sched/, include/nuttx/lib.h, and include/nutts/fs/fs.h:
|
||
Move stream data from the TCB to the task group structure.
|
||
* net/, sched/, and include/nuttx/net/net.h: Move socket data
|
||
from the TCB to the task group structure.
|
||
* sched/task_starthook.c, sched/task_start.c, and include/nuttx/sched.h:
|
||
Add a task start hook that will be called before the task main
|
||
is started. This can be used to schedule C++ constructors to run
|
||
automatically in the context of the new task.
|
||
* binfmt/binfmt_execmodule: Execute constructors as a start hook.
|
||
* sched/os_start.c: Fix ordering of group initialization.
|
||
* configs/stm32f4discovery/usbnsh: Add an NSH STM32F4Discovery
|
||
configuration that uses USB CDC/ACM for the NSH console.
|
||
* configs/stm32f4discovery/nsh: Converted to use the kconfig-frontends
|
||
tools.
|
||
* configs/*/src/up_userleds.c: Fix a error that was cloned into
|
||
all STM32 user LED code. The wrong definitions were being used
|
||
to set LEDs on or off.
|
||
* arch/*/common/up_internal.h and arch/*/common/up_initialize.c:
|
||
Serial was driver was not being built if there is no console
|
||
device. Obviously, the serial driver may be needed even in
|
||
this case.
|
||
* arch/arm/src/stm32/stm32_serial.c: If there is a serial console,
|
||
it would be ttyS0 and the others would be ttyS1-5. If there
|
||
is not serial console, was labeling them ttyS1-6; now labels them
|
||
ttyS0-5.
|
||
* fs/fs_syslog.c: Can't handle SYSLOG output to character device from
|
||
the IDLE task (because it can't block). syslog_putc now returns EOF
|
||
on failure and sets errno. Fixed some errors in error handling.
|
||
* libc/stdio/lib_syslogstream.c: Checking of return value from
|
||
syslog_putc was bogus. Switching to EOF for all errors solves
|
||
this.
|
||
* arch/arm/src/lm/chip/lm4f_memorymap.h: More LM4F changes from
|
||
Jose Pablo Carballo.
|
||
* drivers/serial/serial.c, include/nuttx/serial/serial.h,
|
||
drivers/usbdev/cdcacm.c, and drivers/pl2303.c: Add support for
|
||
removable serial devices (like USB serial). This support is enabled
|
||
by CONFIG_SERIAL_REMOVABLE.
|
||
* arch/*/src/*/Toolchain.defs: Change assignment so that we can
|
||
override CROSSDEV with a make command line argument.
|
||
* include/assert.h: Mark assertion functions as non-returning.
|
||
* arch/*/src/*/up_assert.h: Mark _up_assert() as non-returning.
|
||
* drivers/mtd/at25.c: When the AT25 device was not available the
|
||
initialization did not fail like it should. From Petteri Aimonen.
|
||
* fs/fat/fs_configfat.c: Fix some errors in FAT formatting logic
|
||
for large devices and for FAT32. From Petteri Aimonen.
|
||
* fs/fat/fs_fat32util.c: Fix an initialization error found by
|
||
Petteri Aimonen. freecount and next freecount initialization were
|
||
reversed.
|
||
* drivers/mmcsd/mmcsd_spi.c: Some SD cards will appear busy until
|
||
switched to SPI mode for first time. Having a pull-up resistor on
|
||
MISO may avoid this problem, but this patch makes it work also
|
||
without pull-up. From Petteri Aimonen.
|
||
* fs/fat/fs_fat32.c: Fix a compilation error when FAT_DMAMEMORY=y.
|
||
From Petteri Aimonen.
|
||
* arch/arm/src/stm32/chip/stm32_spi.h: STM32F4 max SPI clock freq is
|
||
37.5 MHz. Patch from Petteri Aimonen.
|
||
* arch/arm/src/stm32/stm32_spi.c: Fixes for SPI DMA work on the
|
||
STM32F4. Includes untested additions for the F1 implementation as
|
||
well. From Petteri Aimonen.
|
||
|
||
6.26 2013-03-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/serial/serial.c: Correct some race conditions when checking
|
||
for disconnection of a removable serial device.
|
||
* sched/task_posixspawn.c, task_spawn.c, task_spawnparms.c and
|
||
spawn_internal.h: Create new interface task_spawn() that is
|
||
like posix_spawn(), but uses entry point addresses like
|
||
task_create().
|
||
* Corrected all argv[] arguments. Should be char * const *, not
|
||
const char **.
|
||
* sched/pthread* and include/nuttx/sched: Move pthread join data
|
||
and pthread key calculation data into the "task group" structure.
|
||
* sched/atexit.c, on_exit.c, task_exithook.c and include/nuttx/sched.h:
|
||
Move atexit and on_exit data structures to task group. These
|
||
callbacks are only issued now when the final member of the task
|
||
group exits.
|
||
* sched/waitpid.c, task_exithook.c and include/nuttx/sched.h:
|
||
Move waitpid data data structures to task group. Callers of
|
||
of waitpid() are now only awakened when the final thread of the
|
||
task group exits.
|
||
* sched/mq_descreate.c, mq_open.c, mq_remove.c, group_leave.c, and
|
||
include/nuttx/sched.h: Move list of opened message queues to
|
||
the task group structures. Now all message queues opened by
|
||
members of the group are closed when the last member of the group
|
||
exits.
|
||
* includes/nuttx/sched.h and Lots of files: Change name of _TCB to
|
||
struct tcb_s so that (1) it is consitent with other NuttX naming and
|
||
so that (2) the naming can handle some upcoming changes.
|
||
* includes/nuttx/sched.h and sched/: There are three TCB structures:
|
||
struct tcb_s is a generic common version, struct task_tcb_s is a
|
||
version for tasks and kernel threads and pthread_tcb_s is a version
|
||
for pthreads. By dividing the TCB structure into these variants,
|
||
pthreads do not have to be burdened by task-specific data structures
|
||
(and vice versa).
|
||
* sched/task_exithook.c adn group_create.c: Fix an error, the
|
||
task within the task group may exit early leaving a pthread to
|
||
exit the task group last. In this case, we need to remember the
|
||
the PID of the main task in the task group and use that PID for
|
||
signalling SIGCHILD to the parent task group.
|
||
* included/nuttx/sched.h and sched/sig*.c: Numerous changes to the
|
||
signal deliver logic so that the delivery of signals to threads
|
||
within a task group will be compliant with delivery of signals
|
||
to threads within a POSIX process.
|
||
* sched/mq_recover.c and task_exithook.c: Add logic to handle the
|
||
case where a task is deleted (or pthread canceled) while it is
|
||
waiting on a message queue. task_delete() and pthread_cancel()
|
||
are dangerous interfaces. This is only one feeble recover measure
|
||
of *many* that would be needed to do this safely.
|
||
* sched/group_killchildren.c, task_recover.c, group_foreachchild.c,
|
||
sched/restart.c, sched/task_delete.c, and others: Beef up logic
|
||
to better support task deletion and pthread cancellation. Needed
|
||
to pass need OS test case for task_restart().
|
||
* sched/include/sched.h and all timed functions in sched/: Move
|
||
timer from local variables to TCB. This is needed so that if a
|
||
task is canceled or restarted while it is waiting for a timed
|
||
event, we can gracefully recover. We can't let the timer expire
|
||
after the task has been deleted.
|
||
* arch/arm/include/stm32 and arch/arm/src/stm32: Add support for
|
||
the STM32 F3 family (still missing some things).
|
||
* configs/stm32f3discovery: This will (eventually) be support for
|
||
the STM32F3Discovery board.
|
||
* STM32 F3 and STM32F3Discovery port is complete a ready for test.
|
||
* arch/arm/src/lpc17xx: Add support for the Cortex-M4 FPU and
|
||
Mikes "common vector" logic. The LPC1788 is going to need
|
||
these things.
|
||
* arch/arm/src/stm32/stm32_spi.c: Fix SPI DMA logic that does
|
||
not work if sem_wait() is interrupt by a signal. From Petteri
|
||
Aimonen.
|
||
* drivers/input/max11802.c: MAX11802: Fix a timing bug that
|
||
corrupted coordinates. From Petteri Aimonen.
|
||
* drivers/mmcsd/mmcsd_spi.c: Use SPI locking so that MMC/SD can
|
||
exist on the same bus as other SPI devices. From Petteri
|
||
Aimonen.
|
||
* graphics/nxfonts/nxfonts_sans17x22.h: Small mod to hyphen in
|
||
sans17x22 font. The hyphen did not have any space on its sides.
|
||
This caused it to run together with other characters so that for
|
||
example "+-" would look weird. From Petteri Aimonen.
|
||
* mm/mm_mallinfo.c: Take MM semaphore in mm_mallinfo. From Petteri
|
||
Aimonen.
|
||
* configs/stm32f3discovery/nsh/defconfig: Disable SPI. It is not
|
||
used.
|
||
* drivers/mtd/sst39vf: Add a driver for the SST29VF NOR FLASH parts.
|
||
* sched/os_start.c: Add an additional call-out to support board-
|
||
specific driver initialization during the start phase: If
|
||
CONFIG_BOARD_INITIALIZE is defined, then an additioinal
|
||
initialization function called board_initialize() will be called
|
||
just after up_initialize() is called and just before the initial
|
||
application is started.
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c, drivers/usbdev/usbdev_trprintf.c,
|
||
and include/nuttx/usb/usbdev_trace.h: Add logic to support decoding
|
||
of device-specific trace events to make the trace ouput more readable.
|
||
From Petteri Aimonen.
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c: Need to manually set CNAK in
|
||
the case where we are waiting for a SETUP command with DATA. Otherwise,
|
||
the core may NAK further transactions. From Petteri Aimonen.
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c: Add logic to prevent premature
|
||
to IDLE state. This change (plus the previous) was necessary to get
|
||
the CDC/ACM driver working the certain STM32 F4 hardware (but not others).
|
||
These changes appear to prevent certain race conditions that may or may
|
||
not cause USB problems. From Petteri Aimonen.
|
||
* arch/arm/include/armv6-m and arch/arm/src/armv6-m: First cut at support
|
||
for the Cortex-M0
|
||
* configs/nutiny-nuc120, arch/arm/include/nu1xx, and arch/arm/src/nuc1xx:
|
||
Support for Nuvoton NuTiny NUC120.
|
||
* 2013-02-22: the Cortex-M0, NuvoTron NUC1xx, and NuTiny-SDK-NUC120 port
|
||
is code complete and ready for testing.
|
||
* configs/ekk-lm3s9b96/ostest and nsh: All EKK-LM3S9B96 configurations
|
||
converted to use the mconf configuration tool.
|
||
* configs/zkit-arm-1769: Add support for Zilogic System's ARM development
|
||
Kit, ZKIT-ARM-1769. From Rashid.
|
||
* configs/zkit-arm-1769/hello: Add a "Hello, World!" configuration for
|
||
the KBIT-ARM-1769 board. From Rashid.
|
||
* configs/zkit-arm-1769/thttpd: Add a THTTPD configuration for the
|
||
KBIT-ARM-1769 board. From Rashid.
|
||
* 2013-02-27: All configurations for the Cortex-M0 NuTINY-SDK-NUC120
|
||
appear to be functional and stable.
|
||
* configs/zkit-arm-1769/nsh: Add an NSH configuration for the
|
||
KBIT-ARM-1769 board. From Rashid.
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c: Fixes from Petterri Aimonen
|
||
related to corner cases that can cause infinite interrupts.
|
||
* drivers/usbdev/usbmsc_scsi.c: Change to allow the full name in the
|
||
USB descriptor but a truncated, 8-byte name in the SCSI field.
|
||
From Petteri Aimonen.
|
||
* arch/arm/src/stm32/stm32_spi.c: 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.
|
||
* drivers/mmcsd/mmcsd_spi.c: When bus is shared, the speed has to be
|
||
set every time. Also SD cards require a few dummy clocks to react
|
||
into CS release. From Petteri Aimonen.
|
||
* configs/lm4f120-launchpad: In initial configuration for testing
|
||
the LM4F120 LaunchPad port. This is to support testing only and
|
||
is not yet a functional board port (as of 2013-03-01).
|
||
* arch/arm/include/lm/lm4f_irq.h and arch/arm/src/lm/chip/lm4f_vector.h:
|
||
Add interrupt vector/IRQ number definitions for the LM4F120.
|
||
* arch/arm/src/stm32f20xxx_dma.c and stm32f40xxx_dma.c: Fix a typo
|
||
in assigned base register addresses for each DMA channel. From
|
||
Yan T.
|
||
* Several build fixes from Mike Smith were incorporated. These were
|
||
mostly compilation errors introduced into the system because of the
|
||
large number of recent changes with broad scope (2013-03-04).
|
||
* configs/zkit-arm-17969/src/up_can.c: Add CAN support to the
|
||
Zilogics Technologies ZKIT-ARM-1769 board (From Rashid Fatah, (2013-03-04)).
|
||
* arch/arm/src/lpc17/lpc17*_clockconfig.c: The WaveShare Open1788
|
||
board now boots and passes the OS test. This is the work of
|
||
Rommel Marcelo (2013-03-04).
|
||
* arch/arm/src/lm/lm_gpio.c, lm_gpio.h, and chip/lm4f_pinconfig.h
|
||
Extend GPIO logic to handle LM4F. Add LM4F pin configuration header
|
||
file (2013-03-04).
|
||
* configs/open1788: Enable LED support in all configurations.
|
||
(2013-03-04)
|
||
* configs/open1788/nsh: NSH configuration verified function. By Rommel
|
||
Marcelo (2013-03-05).
|
||
* configs/open1788/src/lpc17_nsh.c: Use the SD card interface, not SPI
|
||
to interface with SD cards (2013-03-05.
|
||
* arch/arm/src/lpc17xx/lpc17_sdcard.c and header files: Clone the STM32
|
||
SD card interface to the LPC1788. It appears to be the same IP.
|
||
(2013-03-05)
|
||
* libc/wqueue: Work queue logic moved from sched/ to libc/wqueue. It
|
||
is not really core OS functionality and this move helps prepare for
|
||
user-space work queues. (2013-03-05)
|
||
* libc/wqueue: Implemented user-space work queues. These will not
|
||
get tested until the next time I attempt a NuttX kernel build.
|
||
(2013-03-05).
|
||
* arch/arm: Correct some bad syscall dispatching logic. This change
|
||
cannot be fully tested until there is a fielded NuttX kernel build.
|
||
(2013-03-06).
|
||
* net/net_poll.c: Correct logic that checks if the socket is
|
||
disconnected when the poll is setup. That is bad logic: Listen
|
||
sockets, for example, are not connected. In that case, the purpose of
|
||
the poll is to wait for connection events. As a result of this,
|
||
poll/select would return immediately with POLLHUP with it was used to
|
||
detect connection events. This fix for now was to check instead if
|
||
the socket is closed (meaning that it was connected at one time but
|
||
was closed by the remote peer). That excludes the listen socket which
|
||
was never connected. This does introduce a new problem, however. If
|
||
the socket was not closed, but lost the connection through an abnormal
|
||
event, then poll/select will hang. That needs to be revisited.
|
||
(2013-03-07)
|
||
* fs/fs_select.c: Was not checking if the timeout parameter was NULL
|
||
but would, instead, setup a bogus timeout based on whatever it found at
|
||
address zero. Also, improved some of the memory allocation logic so
|
||
that it will not use so much memory. (2013-03-07)
|
||
* net/net_poll.c: Handle the missing case. Now tests for not connected
|
||
AND not listening. I think that now covers all of the cases including
|
||
the missing case noted above. (2013-03-07)
|
||
* mm/: Move all memory manager globals into a structure. A reference
|
||
to this structure is now passed internally between mm APIs. This
|
||
change will (eventually) support multiple heaps and heap allocators.
|
||
(2013-03-08).
|
||
* mm/ and include/nuttx/mm.h: Implement support for multiple heaps.
|
||
(2013-03-08).
|
||
* arch/*/src: xyz_addregion() needs to call kmm_addregion, not mm_addregion.
|
||
(2013-03-08).
|
||
* sched/kmm*.c: Move this garbage kmm*.c file to mm/. until I decide what
|
||
to do with them (which is probably to just delete them). (2013-03-08).
|
||
* mm/mm_test.c and Makefile.test: Deleted the memory test. This was
|
||
a good test and helped me a lot when I wrote the memory manager, but
|
||
now it is in the way and paralyzing other efforts. So the memory unit
|
||
test was deleted. (2013-03-08)
|
||
* sched/sched_free.c: Rename sched_free() to sched_ufree(); Add
|
||
sched_kfree() to handler deferred kernel heap allocations. (2013-03-10)
|
||
* arch/: User user-accessible heap to allocate all stacks. (2013-03-10)
|
||
* arch/arm/src/sam3u: The AT91SAM3U will now support a kernel heap if
|
||
so configured. (2013-03-10)
|
||
* configs/sam3u-ek/knsh: This configuration was converted to use the
|
||
kconfigs-frontends build tool. (2013-03-10)
|
||
* configs/*/include/user_map.h and include/nuttx/userspace.h: Remove
|
||
the very kludgy user_map.h file and replace it with a header that
|
||
is expected at the beginning of the user-space blob. (2013-03-10)
|
||
* configs/sam3u-ek/kernel/up_userspace.c: This is the header for
|
||
the SAM3U-EK's user space. (2013-03-10)
|
||
* sched/os_bringup.c: In the kernel build, os_bringup() now uses the
|
||
user-space header to automatically start the user-space work queue,
|
||
if so configured. (2013-03-10)
|
||
* arch/arm/src/lpc17xx/lpc17_mpuinit.c and lpc17_userpace.c: Add
|
||
support for the MPU and kernel build for the LPC17xx family.
|
||
(2013-03-11)
|
||
* configs/open1788/kernel and knsh: Add kernel build support and
|
||
a kernel NSH configuration for the WaveShare Open1788 board.
|
||
(2013-03-11)
|
||
* configs/sam3u_ek/kernel, knsh, and scripts: Move some files around
|
||
for better supportability. (2013-03-11)
|
||
* configs/open1788/kernel, knsh, and scripts: Add a kernel mode build
|
||
configuration for the WaveShare Open1788 board. (2013-03-11)
|
||
* arch/arm/src/armv7-m/up_mpu.c: Several fixes to MPU logic.
|
||
(2013-03-12).
|
||
* arch/arm, configs/sam3u-ek, configs/open1788: Fix memory map for
|
||
kernel mode build; Some regions were overlapping. (2013-03-13).
|
||
* arch/: Rename g_heapbase to g_idle_topstack. This is the same value
|
||
however: The top of the IDLE stack is the same as the base of the
|
||
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).
|
||
* libc/stdlib/lib_itoa.c: Implementation of itoa() contributed by
|
||
Ryan Sundberg. (2013-03-14).
|
||
|
||
6.27 2013-04-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/armv7-m/up_mpu.c: Correct MPU sub-region settings for
|
||
unaligned regions (2013-03-15).
|
||
* arch/arm/src/armv6-m/up_svcall.c: Bring up to equivalent to the
|
||
ARMv7-M version (2013-03-15).
|
||
* configs/lm4f120-launchpad/tools: Add scripts and instructions to
|
||
simplify use of OpenOCD with ICDI (from JP Carballo, 2013-03-15).
|
||
* tools/mkconfig.c: Logic that attempts to suppress buffered I/O
|
||
within the kernel is wrong. sizeof(struct file_struct) must be
|
||
the same in both kernel- and user-spaces (2013-03-16).
|
||
* arch/arm/src/common/up_pthread_start.c, libc/pthread/pthread_startup.c,
|
||
and related files: Implement switch to user-space and user-space
|
||
pthread start-up function (2013-03-16).
|
||
* arch/arm/src/common/up_signal_handler.c, libc/pthread/pthread_startup.c,
|
||
and related files: Implement switch to user-space and user-space
|
||
pthread start-up function (2013-03-16).
|
||
* arch/arm/src/common/up_signal_handler.c, libc/signal/signal_handler.c,
|
||
arch/arm/src/armv[6|7]-m/up_svcall.c, arch/arm/include/armv[6|7]-m/svcall.h,
|
||
include/nuttx/userspace.h, and sched/sig_deliver.c: Implement switch
|
||
to user-space from kernel signal delivery trampoline before calling user-
|
||
space signal handler. Return from user-space signal handler using a
|
||
system call (2013-03-16).
|
||
* arch/arm/src/armv[6|7]-m/up_schedulesigaction.c: Need make sure we are
|
||
in kernel mode before switching to kernel-mode signal handler
|
||
trampoline (2013-03-16).
|
||
* arch/arm/include/armv[6|7]-m/irq.h, and arch/arm/src/armv[6|7]-m/up_svcall.c:
|
||
Add support for nested system calls. In the current design, this can
|
||
happen only under one condition: When the kernel system call logic calls
|
||
back into user space in order to allocate user space memory. So it is
|
||
expected that the maximum nesting level will be only 2 (2013-03-17).
|
||
* libc/stdio/lib_sccanf.c: Correct an error in sscanf. If %n occurs in
|
||
the format statement after the input data stream has been fully
|
||
parsed, the %n format specifier will not be handled. Reported by
|
||
Lorenz Meier (and also earlier by Kate) (2013-03-17).
|
||
* drivers/serial/serial.c: Support for O_NONBLOCK was not supported
|
||
in the "upper half" serial driver. This is normally not an issue
|
||
because UART TX is almost always available, but it does become an
|
||
if the UART uses hardware flow control or if the a "lower half" is
|
||
something like the USB CDC/ACM driver that may need to block for
|
||
significant amounts of time (2013-03-18).
|
||
* arch/arm/src/armv7-h/ram_vectors.h, up_ramvec_*.c, arch/arm/src/*/*_irq.c,
|
||
and Make.defs: Add support for modifiable interrupt vectors in RAM
|
||
(2013-03-18).
|
||
* arch/arm/src/armv7-m/up_exception.S, sam3u/sam3u_vectors.S, and
|
||
lpc17xx/lpc17_vectors.S: In exception handling with CONFIG_NUTTX_KERNEL,
|
||
need to explicity set and clear the privilege bit in the CONTROL
|
||
register on return. I assumed this would be handled automatically
|
||
by the EXC_RETURN. Silly me (2013-03-18).
|
||
* arch/arm/src/lpc17_adc.c: Add a work-around for an ADC errata. From
|
||
Chris Taglia (2013-3-19).
|
||
* arch/arm/src/armv7-m/up_hardfault.c: If the PRIMASK is used to disable
|
||
interrupts, then additional logic is required in the hard fault handler
|
||
(2013-3-19).
|
||
* libc/ and mm/: Directories where the same sources files are used to
|
||
build different objects in the first and second pass kernel builds need
|
||
to keep those objects in separate directories so that they are not
|
||
constantly rebuilt (2013-3-19).
|
||
* fs/fat: Create an error in FAT file creation. The FAT logic was
|
||
not making a distinction between directory non-existence and file
|
||
non-existence so when it you try to create a file in a non-existent
|
||
directory, it would create a file with the name of the missing
|
||
directory. Reported by Andrew Tridgell (2013-03-30).
|
||
* Numerous files: Changed the protoypes of up_create_stack() and
|
||
up_release_stack() so that is includes a task type. Normally you
|
||
can get this type from the TCB parameter, but there are certain
|
||
conditions when the task type is not valid in the TCB when these
|
||
functions are called. Only the prototypes were changed on this
|
||
big, initial checkin. The next step will be to add logic to
|
||
allocate stacks for kernel threads from protected kernel memory
|
||
and all other task types from unprotected user memory (2013-03-20).
|
||
* arch/*/src/common/up_createstack.c, up_use_stack.c, and
|
||
up_release_stack.c: If creating or releasing the stack for a kernel
|
||
thread, use the kernel allocator so that the kernel thread stacks
|
||
are protected from user application meddling (2013-03-20).
|
||
* arch/arm/src/armv[6|7]-m/up_scall.c: Fix parameter passing for
|
||
all system call inline functions with > 3 parameters (2013-03-20)
|
||
* arch/*/src/common/up_stackframe.c and include/nuttx/arch.h: Add
|
||
and new interface to set aside memory on the stack. This will be
|
||
used at least in the kernel build to hold task arguments (2013-03-21).
|
||
* sched/sig_deliver.c: When dispatching signals to user threads,
|
||
copy the siginfo_t from the sigq to the stack. The signal queue
|
||
is allocated from kernel memory; however, the current stack is
|
||
the user's stack and the user code will be able to access the
|
||
signinfo_t data from the stack copy (2013-03-21).
|
||
* arch/arm/src/stm32: Added support for the kernel mode build
|
||
(cloned from the lpc17xx). (2013-03-21).
|
||
* configs/stme32f4discovery/kernel and scripts: Add support for
|
||
the kernel mode build on the STM32F4Discovery (2013-03-21).
|
||
* drivers/st7567.c/h and include/nuttx/lcd/st7567.h: Driver for
|
||
the ST7567 LCD Display Module from Univision Technology Inc.
|
||
contributed by Manikandan.S (2013-03-22).
|
||
* configs/zkit-arm-1769: Now supports the ST7567 LCD display
|
||
module. Added an nxhello configuration for testing (Manikandan.S,
|
||
2013-03-22).
|
||
* configs/stm32f4discovery/kostest: Add a kernel mode version
|
||
of the OS test for the STM32F4Discovery board (2013-03-22).
|
||
* nuttx/include/nuttx, nuttx/configs/sam3u-ek, nuttx/configs/open1788,
|
||
nuttx/configs/stm32f4discovery, and nuttx/arch/arm: Complete
|
||
re-archtecting of how signals are dispatched to user-space code
|
||
in the kernel build. The original implementation was C-based
|
||
and simpler. However, the C code intermixed with SVC calls was
|
||
not properly preserving registers. The more complex, assembly
|
||
language version does not suffer from these issues. I believe
|
||
the kernel build can now be called "feature complete"
|
||
(2013-03-23).
|
||
* binfmt/binfmt_execmodule.c: Here is a place where I forget
|
||
to update the call to sched_releasetcb() to pass the thread
|
||
type as the second parameter (2013-03-23).
|
||
* arch/arm/src/lm, kinetis, lpc32, and nuc1xx: Add kernel build
|
||
support to all ARMv7-M and ARMv6-M chips. There are no
|
||
configurations in place to to verify these additions!
|
||
(2013-03-24).
|
||
* arch/arm/src/lm/lm_gpio.h: Correct typos in alternate function
|
||
definitions (2013-03-24).
|
||
* arch/arm/src/lm/lm_lowputc.c and lm_serial.c: Add support for
|
||
the 7 UARTs on the LM4F120 (2013-03-24).
|
||
* configs/lm4f120-launchpad/ostest/defconfig: Fix the configured
|
||
RAM size. This appears to be the last show-stopper bug: The
|
||
LaunchPad now runs NuttX! (2013-03-24).
|
||
* configs/lm4f120-launchpad/nsh: Add an NSH configuration for the
|
||
LaunchPad (2013-03-24).
|
||
* configs/kwikstik-k40: Converted configurations to use the
|
||
konfig-frontends tool (2013-03-25).
|
||
* configs/twr-k60n512: Converted configurations to use the
|
||
konfig-frontends tool (2013-03-25).
|
||
* arch/arm/src/lpc17xx/lpc17_lcd.c: Add an LCD framebuffer driver
|
||
for the LPC177x/8x family (2013-3-26).
|
||
* arch/arm/src/lpc17xx/lpc17_emc.c and
|
||
configs/open1788/src/lpc17_sdraminitialize.c: Began testing the
|
||
Open1788 SDRAM. The SDRAM is basically functional, but there are
|
||
failures with the SDRAM is stressed by the memory test at
|
||
apps/example/ramtest (SDRAM support and the RAM test can be configured
|
||
into the base configs/open1788/nsh configuration as described in
|
||
configs/open1788/READMT.txt (2013-3-27).
|
||
* configs/open1788/nxlines: Add a configuration to test both the
|
||
Open1788 LCD and SDRAM which is used as a framebuffer (2013-3-27).
|
||
* arch/arm/src/lpc17xx/lpc17_gdma.c and lpc17_sdcard.c: Began
|
||
implementation of the LPC17 DMA and integration into the SDCARD
|
||
driver (2013-3-29).
|
||
* arch/arm/src/lpc17xx/lpc17_gdma.c: LPC17 DMA is code complete and
|
||
under test. Does not yet work (2013-3-30).
|
||
* fs/fat/fs_fat32dirent.c and fs_fat32util.c: Several fixes to the
|
||
FAT file system from Ronen Vainish. These fixes mostly involve the
|
||
logic to extend directory clusters for the case of long file names
|
||
but also include a few important general fixes (such as for storing
|
||
32 bit FAT values) (2013-03-31).
|
||
* arch/arm/src/lpc17xx/lpc17_gdma.c and lpc17_sdcard.c: SD card DMA
|
||
is now functional. Thre may be some issues with DMA from CPU SRAM
|
||
which is apparently disabled in sleep mode; up_idle() always enters
|
||
sleep mode (2013-03-31).
|
||
* arch/arm/src/stm32: Add architecure support for the STM32 F427/F437
|
||
chips. Contributed by Mike Smith (2013-4-01).
|
||
* configs/zkit-arm-1769/src/up_can.c: Add support for both CAN1
|
||
and CAN2. Contributed by M.Kannan (2013-4-01).
|
||
* arch/arm/src/lpc17xx/lpc17_spi.c and lpc17_ssp.c and
|
||
configs/olimex-lpc1766stk, nucleus2g, zkit-arm-1769, and
|
||
lpcxpresso-lpc1768: The initialization function for both the LPC17xx
|
||
SPI and SSP blocks was called up_spinitialize() which is the common API
|
||
definition of include/nuttx/spi.h. But this raises a problem when the
|
||
MCU has multiple blocks for differ SPI implementations as does the
|
||
LPC17xx (and also as does other architectures like STM32 that have
|
||
USARTs that can serve as SPI interfaces as well). These were renamed
|
||
to lpc17_spiinitialize() and lpc17_sspinitialize() in this case.
|
||
Problem reported by M. Kannan (2013-4-01).
|
||
* arch/arm/src/lpc17xx/lpc17_gpdma.c and lpc17_idle.c: In sleep mode,
|
||
DMA can only be performed from peripheral SRAM. CPU SRAM is shutdown
|
||
in sleep mode. In order to simplify DMA memory allocation, the LPC17xx
|
||
IDLE will now hold off going to sleep mode if there is a DMA in progress
|
||
(2013-4-01).
|
||
* configs/open1788/src/lpc17_autoleds.c: Reversed sense of the IDLE LCD.
|
||
It is now off when the LPC17 is sleeping and on when awake. That is
|
||
much more useful because it provides a good visual indication of the
|
||
dynamic CPU load (2013-4-01).
|
||
* configs/open1788/src/lpc17_touchscreen.c and lpc17_ssp.c: Add
|
||
support for the touschscreen on the WaveShare LCD (2013-4-01).
|
||
* configs/several: There were already some functions called
|
||
lpc17_sspinitialize(). So they had to be renamed (2013-4-01).
|
||
* arch/arm/src/lpc17xx/lpc17_ssp.c: Adapted to work with the LPC178x
|
||
family (2013-4-01).
|
||
* arch/arm/src/lpc17xx/lpc17_gpio.c/.h: Separate LPC176x and LPC178x
|
||
logic into separate files. The logic is diverging to much to
|
||
try to retain common code (2013-4-03).
|
||
* net/net_clone.c: Fix compilation error when socket options are
|
||
are disabled. Reported by Daniel O'Connor (2013-4-05).
|
||
* configs/zkit-arm-1769/src/up_leds.c: Fix a typo introduced into
|
||
the button interrupt logic (2013-4-05).
|
||
* arch/arm/src/lpc17xx/lpc178x_gpio.c: Re-design of the GPIO
|
||
logic for the LPC178x family by Rommel Marcelo (2013-4-05).
|
||
* arch/arm/src/lpc17_gpiodbg.c: Updated so that it correctly
|
||
reports LPC177x/8x GPIO registers when GPIO debug is enabled
|
||
(2013-4-05).
|
||
* arch/arm/src/Makefile: The variable NUTTX already includes
|
||
the extension $(EXEEXT). So remove the second extension
|
||
$(NUTTX)$(EXEEXT) in two places (2013-4-7).
|
||
* arch/arm/src/lpc17xx/lpc17_gpioint.c: Disable interrupts in
|
||
lpc17_setintedge(). This logic must be atomic because it can be
|
||
re-entered before it completes enabled interrupts, sometimes
|
||
leaving the interrupts in a strange state (2013-4-7).
|
||
* arch/arm/src/lpc17_lcd.c: Rommel Marcelo got the LPC1788
|
||
framebuffer-based LCD working. Very nice! (2013-4-08).
|
||
* arch/arm/src/lm/lm_clockconfig.c and configs/lm4f120-launchpad:
|
||
Fix handling of the RCC SYSDIV2 field when the PLL output is
|
||
400MHz. Don't forget to set the USERCC2 bit in the register or
|
||
all is for naught (2013-4-09).
|
||
* configs/zkit-arm-1769/src/up_lcd.c, up_ssp.c, and up_spi.c:
|
||
Use SSP0 to LCD and SPI to SD-Card on the Zkit-arm-1769 board.
|
||
From Manikandan. S (2013-4-10)
|
||
* configs/olimex-lpc1766stk/usbserial: Converted to use the
|
||
kconfig-config frontends tools (2013-4-12).
|
||
* drivers/usbdev/pl2303.c: Fix some compilation errors that
|
||
crept in when fixes to the CDC/ACM driver where blindly
|
||
incorporated in the PL2303 driver (2013-4-12).
|
||
* configs/stm3210e-eval/usbserial: Converted to use the
|
||
kconfig-config frontends tools (2013-4-12).
|
||
* configs/nucleus2g/usbserial: Converted to use the
|
||
kconfig-config frontends tools (2013-4-12).
|
||
* arch/arm/src/kl and arch/arm/include/kl: Add support for the
|
||
Kinetis L family of Cortex-M0+ MCUs. Contributed by Alan
|
||
Carvalho de Assis. NOTE: This is still very much a work in
|
||
progress as of this initial commit (2013-04-16).
|
||
* configs/freedom-kl25z: Support for the Freedom KL25Z board
|
||
contributed by Alan Carvalho de Assis. NOTE: This is still
|
||
very much a work inprogress as of this initial commit
|
||
(2013-04-16).
|
||
* arm/arm/src/armv6-m and arch/arm/include/armv6-m: Ooops. Fix
|
||
a major screw-up: The Cortex-M0 has no BASEPRI register but
|
||
the current logic was using it to manage interrupts. Switch
|
||
to using the PRIMASK. This means that hardfaults will (again)
|
||
occur when SVC instructions are executed (2013-4-16).
|
||
* configs/stm3240g-eval/ostest: Converted to use the kconfig-frontends
|
||
tools (2013-4-17).
|
||
* sched/task_exithook.c: Don't flush the streams until the
|
||
final thread of the group exits. Flushing may cause the
|
||
thread to get suspended at a bad time and other threads in the
|
||
group may run while the exiting thread is in an unhealthy state.
|
||
This can cause crashes under certain circumstance. This is a
|
||
critical bugfix (2013-4-18).
|
||
* drivers/mtd/ramtron.c: Extended to support the FM25V01 device.
|
||
Contributed by Lorenz Meier (2013-4-18).
|
||
* sched/task_deletecurrent.c and task_exit.c, arch/*/up_exit.c:
|
||
Renamed task_deletecurrent() and task_exit() since it really
|
||
handles the architecture independent part of _exit(). _exit()
|
||
is used internally, but if it is called from the user, it should
|
||
unregister any atexit() or on_exit() functions (2013-4-18).
|
||
* tools/kconfig2html.c: This is the beginning of a tool to
|
||
replace the hand-generated documentation of the NuttX configuration
|
||
variables with auto-generated documentation. The initial checkin
|
||
is an incomplete, poorly structured prototype that I hope to
|
||
evolve into a useful tool (2014-4-20).
|
||
* libc/string/lib_strchr.c: strchr(str, '\0') should return a
|
||
pointer to the end of the string, not NULL. From Petteri
|
||
Aimonen (2014-4-22).
|
||
* fs/fat/fs_writefat.c: mkfatfs was writing the boot code to the
|
||
wrong location. From Petteri Aimonen (2014-4-22).
|
||
* Documentation: The NuttX documentation now expects to find an
|
||
auto-generated version of the configuration variable documentation
|
||
at Documentation/NuttXConfigVariables.html (2014-4-22).
|
||
* arch/arm/src/lpc17xx/lpc17_adc.c: Only one ADC pin was configured.
|
||
Need to configure all that are in the ADC0 set. From MKannan
|
||
(2014-4-23).
|
||
* configs/zkit-arm-1769/src: ADC and SPI/USB MSC updates from
|
||
MKannan (2014-4-23).
|
||
* arm/src/armv7-m/ram_vectors.h and arm/src/armv7-m/up_ramvec_initialize.c:
|
||
Fixes to RAM vector logic from Paul Y. Zhang (2014-4-23)
|
||
* tools/kconfig2html.c: Improve behavior of Expand/Collapse
|
||
Table of Contents; Handle errors in parsing of strings and in
|
||
some uninitialized variables. Add an option to use jQuery.
|
||
* tools/mkconfigvar.sh: Fix make target (2014-4-23).
|
||
* sched/exit.c, pthread_exit.c, task_exit.c, task_delete,c and
|
||
task_exithook.c: For pthread_exit(), move some logic to an early
|
||
point in the exit sequence where the task may need to block. Add
|
||
conditional logic in the lower end of the eixt logic kicked off by
|
||
_exit() to prohibit blocking after the task has been torn down and is
|
||
no longer cabable of blocking (2014-4-23).
|
||
* arch/arm/src/common/up_initialize.c: Add missing registration
|
||
of /dev/zero. Registration of /dev/null should depend upon
|
||
conditional compilation. From Ken Pettit (2014-4-24).
|
||
* arch/*/src/common/up_initialize.c: Same change required to other
|
||
architectures (2014-4-24).
|
||
* arch/arm/src/kl/kl_clockconfig.c and configs/freedom-kl25z/include/board.h:
|
||
Modify out PLL configuration so that it uses the values in
|
||
board.h; Fix PLL settings in board.h so that the correct core
|
||
and bus clock frequencies are generated. (2014-4-24).
|
||
* arm/src/kl/chip/kl_memorymap.h, kl_sim.h, andkl_uart.h: Correct some
|
||
register definitions (2014-4-25).
|
||
* arch/arm/src/kl/Kconfig, kl_lowputc.c, kl_serial.c, and kl_config.h:
|
||
No UART3-5 (2014-4-25).
|
||
* arch/arm/src/kl/kl_serial.c: Various fixes to various files in the
|
||
KL architecture directory as need to get the interrupt-driven
|
||
serial driver to work. The Freedom KL25Z NSH configuration now
|
||
works (2014-4-25).
|
||
* include/nuttx/assert.h, arch/*/src/*/up_assert.c, and other file:
|
||
Remove up_assert_code(). While asserting with an encoded value
|
||
could be a good feature, the codes have not be well utilized nor
|
||
documented. Give that situation it is better to remove the API
|
||
and reduce the footprint a little (2014-4-25).
|
||
* drivers/serial/Kconfig and arch/*/src/*/*_serial.c: Add
|
||
compilation so that the useless TIOCSERGSTRUCT ioctl logic
|
||
is not build unless CONFIG_DEBUG and CONFIG_SERIAL_TIOCSERGSTRUCT
|
||
are defined.
|
||
* sched/task_delete.c and task_terminate.c: Most task_terminate()
|
||
out of task_delete.c into its own C file. This should prevent
|
||
dragging task_delete() into the link when it is never called.
|
||
|
||
6.28 2013-06-14 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lpc17xx/lpc17_i2c.c: Interrupts were not being
|
||
re-enabled in the I2C initializeation function (2013-4-30).
|
||
* net/sendto.c: Added skeleton of implementation of send timeouts
|
||
for UDP. However, this functionality really does not make
|
||
sense, so it is disabled in the code (2013-4-30).
|
||
* drivers/mtd/mtd_partition.c: Support capability to clone one
|
||
MTD driver into several, MTD partition drivers, each of which
|
||
can manage a sub-region of the FLASH (2013-4-30).
|
||
* configs/sim/nxffs: Converted to use the kconfig-frontends
|
||
tools (20130-4-30).
|
||
* configs/sim/mtdpart: A new configuration to test MTD
|
||
partitions (2013-4-30).
|
||
* configs/sim/mkroe-stm32f4: Support for the MikroElektronika
|
||
Mikromedia for STM32F4 development board (from Ken Pettit, 2013-4-30).
|
||
* fs/smartfs: Add Ken Pettit SMART FS (2013-4-30).
|
||
* include/nuttx/mtd.h and most MTD drivers: Add support for
|
||
(optional) method to perform byte oriented writes if so configured
|
||
(2013-5-1).
|
||
* arch/arm/src/kl/chip/kl25z128_pinmux.h: Corrections fo the
|
||
pin multiplexing definitions from Alan Carvalho de Assis
|
||
(2013-5-2).
|
||
* drivers/mtd/mtd_partition.c: Fix a few bugs and add support for the
|
||
(option) byte write method (2013-5-3).
|
||
* arch/arm/src/kl: Repartitioning of definitions in header files
|
||
from Alan Carvalho de Assis (2013-5-3).
|
||
* drivers/mtd/smart.c, fs/smart, and other files: SMART file system
|
||
now makes use of the MTD byte write capabilities when present (from
|
||
Ken Pettit, 2013-5-3).
|
||
* drivers/mtd/m25px.c: Some rearchitecting to use the byte write
|
||
capability (when possible) and to use 4KB sectors for the erase block
|
||
size when the part supports it (Ken Pettit, 2013-5-3).
|
||
* configs/pirelli_dpl10: Adds a configuration for the pirelli phone
|
||
(from Craig Comstock via Alan Alan Carvalho de Assis, 2013-5-3).
|
||
* arch/arm/src/calypso: Fix some compilation warnings (2013-5-5).
|
||
* configs/pirelli_dpl10/nsh_highram: Converted to use the
|
||
kconfig-frontends tools (2013-5-5).
|
||
* drivers/lcd/mio283qt2.c: LCD was not being selected in setpower
|
||
method (also not being deselected in hwinitialize function)
|
||
(2013-5-6).
|
||
* arch/arm/src/kl/kl_gpio.c and .h, configs/freedom-kl25z/src/freedom-kl25z.h,
|
||
and configs/freedom-kl25z/src/kl_led.c: Fixes LEDs on the Freedom KL25Z
|
||
board (2013-5-6).
|
||
* arch/arm/src/kinetis/kinetis_pin.c and arch/arm/src/kinetis/kinetis.h:
|
||
The Kinetis GPIO logic had some of the same issues as did the
|
||
Kinetis L (2013-5-6).
|
||
* arch/arm/src/stm32/stm32_idle.c: Add an option to conditionally disable
|
||
the "wfi" sleep mode. This is needed with certain JTAG debuggers to
|
||
to prevent the debug session from begin disconnected. From Ken Pettit
|
||
(2013-5-7).
|
||
* configs/mikroe-stm32f4/fulldemo/, nx/, nxlines/, nxtext/: Add more
|
||
configurations for the Mikroelektronika Multimedia STM32-M4 board.
|
||
From Ken Pettit (2013-5-7).
|
||
* configs/mikroe-stm32f4/src/up_mio283qt2.c and other files: Integrate the
|
||
MIO283QT2 display on the Mikroelektronika Multimedia STM32-M4 board.
|
||
From Ken Pettit (2013-5-7).
|
||
* arch/arm/src/lpc17xx/lpc17_i2c.c: Fix for lpc17xx i2c single byte read
|
||
timeout error problem from M.Kannan (2013-5-8).
|
||
* arch/arm/src/stm32/stm32_adc.c: Typo in F2/F4 specific logic: ACD_
|
||
instead of ADC_. From Ken Pettit (2014-5-8).
|
||
* configs/olimex-lpc1766stk/tools: Tweaks to support OpenOCD-0.70
|
||
(2013-5-10).
|
||
* configs/mikroe-stm32f4: Changes to get the Mikroelektronika MultiMedia
|
||
STM32 F4 touchsceen working. From Ken Pettit (2013-5-11).
|
||
* configs/*/nxwm: Default priorities for NxWidget and NxWM threads
|
||
should be 100, not 50, to be consistent with other default priorities.
|
||
* configs/hymini-stm32v/buttons, nsh, and nsh2: Configurations converted
|
||
to use the kconfig-frontends tools (Laurent Latil, 2013-5-14)
|
||
* configs/hymini-stm32v/src: Converted to use the common SSD1289 driver
|
||
(Laurent Latil, 2013-5-14)
|
||
* configs/hymini-stm32v/ostest and usbnsh: Add OS test and USB/NSH
|
||
configurations (Laurent Latil, 2013-5-14).
|
||
* configs/hymini-stm32v/src/up_nsh.c: Add support for the card detect
|
||
(CD) interrupt (Laurent Latil, 2013-5-14).
|
||
* configs/hymini-stm32v/src/nx and nxlines: Removed these configurations
|
||
(Laurent Latil, 2013-5-14).
|
||
* arch/arm/src/stm32/chip/stm32f10xx_dma.h: Fix some bad DMA register
|
||
definitions. From Laurent Latil (2013-5-15).
|
||
* configs/hymini-stm32v: Enable SDIO in nsh2 configuration; remove
|
||
warning from src/up_ssd1289.c. From Laurent Latil (2013-5-15).
|
||
* configs/hymini-stm32v/src/up_r61505u.c: Support for the R65105-
|
||
based LCD that comes with some HY-Mini STM32v board. From Christian
|
||
Faure (2013-5-16).
|
||
* syscall/syscall_lookup.h: Missing underscore character in SYS_onexit.
|
||
Reported by Ken Pettit (2013-5-17).
|
||
* nuttx/syscall/syscall.csv: Type of first parameter of on_exit() is
|
||
wrong. Reported by Ken Pettit (2013-5-17).
|
||
* configs/mikroe-stm32f4/kernel/, kostest/ and scripts/: Add kernel build
|
||
support and kernel mode OS test example for the MikroElektronkia
|
||
MultiMedia STM32 M4 board. From Ken Pettit (2013-5-17).
|
||
* arch/arm/include/stm32/chip.h and arch/arm/src/stme32/chip/stm32l15xxx_pinmap.h:
|
||
Beginning of support for the STM32L15X family (2013-5-18).
|
||
* arch/arm/include/stm32/stm32l15xxx_irq.h and arch/arm/src/stm32/chip/stm32l15xxx_vectors.h:
|
||
Support for STM32L15X interrupt vectors (2013-5-18).
|
||
* arch/arm/src/stm32/chip/stm32l15xxx_gpio.h and related STM32 GPIO files:
|
||
Add GPIO support for the STM32L215X (2013-5-18).
|
||
* arch/arm/src/stm32/chip/stm32l15xxx_memorymap.h: STM32L215X memory map
|
||
(2013-5-18).
|
||
* arch/arm/src/stm32/chip/stm32_pwr.h, stm32fl15xxx_rcc.h, and stm32l15xxx_syscfg.h:
|
||
More updates for the STM32L152 (2013-5-19).
|
||
* configs/stm32ldiscovey: Configuration for the STM32L-Discovery board.
|
||
Still does not build on initial check-in (2013-5-19)
|
||
* STM32L15X: Add DMA and UART start. Correctly initialize the heap
|
||
(2013-5-19).
|
||
* arch/arm/src/stm32/stm32l15xxx_rcc.c chip/stm32_flash.h: Add RCC PLL
|
||
and FLASH configuration logic for the STM32L152X (2013-5-19).
|
||
* include/nuttx/usb/audio.h: Typo- and bug-fixes from Ken Pettit
|
||
(2013-5-19)
|
||
* audio/, drivers/audio, include/nuttx/audio.h: Add a new audio subsystem
|
||
and VS1053 driver to NuttX. Contributed by Ken Pettit (2013-5-19).
|
||
* configs/miroe-stm32f4/: Add audio logic to NSH configuration. From Ken
|
||
Petty (2013-5-19).
|
||
* nuttx/arch/arm/src/lm/chip/lm_flash.h and nuttx/arch/arm/src/lm/lm_flash.c:
|
||
Add support for TI/Stellaris internal FLASH MTD driver. From Max
|
||
Holtzberg (2013-5-20).
|
||
* arm/src/stm32/chip/stm32l15xxx_vectors.h: After correcting errors in the
|
||
vector definition file, the STM32L-Discovery NSH port now seems to be
|
||
fully functional. Also fixed an error that was causing the LEDs to be
|
||
controlled incorrectly (2013-5-21).
|
||
* arch/arm/src/stm32/chip/stm32_lcd.h: Add definitions for STM32L15X
|
||
segment LCD (2013-5-21).
|
||
* configs/lm3s6965-ek/discover: Add an example configuration for UDP
|
||
discovery tool on the lm3s6965-ek board. From Max Holtzberg
|
||
(2013-5-21).
|
||
* audio/, drivers/audio, include/nuttx/audio: Added a callback interface
|
||
to the Audio upperhalf driver for dequeueing, reporting async events,
|
||
etc. Also included is some initial work for the VS1053 driver. From
|
||
Ken Pettit (2013-5-21).
|
||
* include/nuttx/audio/audio.h: Moved from include/nuttx/ to include/nuttx/audio.
|
||
(2013-5-21).
|
||
* configs/lm3s6965-ek/tcpecho: This configuration builds the simple TCP
|
||
echo example based on W.Richard Steven UNIX Programming book to ensure
|
||
correct usage of the socket API. Contributed by Max Holtzberg (2013-5-22).
|
||
* configs/stm32ldiscovery/src/stm32_lcd.c: Framework for support of the
|
||
STM32L-Discovery's segment LCD (2013-5-22).
|
||
* fs/fs_poll.c: Poll setup/teardown logic should ignore invalid (i.e.,
|
||
negative) file descriptors. Max Holtzberg (2013-5-23).
|
||
* net/net_poll.c: When readahead data is available, the network poll
|
||
logic should set POLLIN (or POLLRDNORM), not POLLOUT. Max Holtzberg
|
||
(2013-5-23)
|
||
* fs/fs_poll.c: Actually, it should also set revents == 0. (2013-5-23).
|
||
* libc/misc/lib_slcdencode.c and lib_slcddecode.c: Add logic to marshal
|
||
and serialize special SLCD intermixed with normal ASCII data (2013-5-23)
|
||
* configs/stm32ldiscovery/src/stm32_lcd.c: STM32L-Discovery's segment LCD
|
||
is code complete but completely untested (2013-5-23).
|
||
* include/nuttx/fs/ioctl.h, include/nuttx/lcd/slcd_codec.h, and
|
||
configs/stm32ldiscovery/src/stm32_lcd.c: Add SLCD ioctl commands to get
|
||
SLCD geometry, set bars, and manage contrast (2013-5-23).
|
||
* configs/stm32ldiscovery/src/stm32_usb.c: This file and all references
|
||
to USB removed for the STM32L-Discovery. While the chip supports a
|
||
USB device, the board does not (2013-5-24).
|
||
* arch/arm/src/stm32/stm32_lse.c: Add support for the STM32L CSR register
|
||
and for the LSE LCD clock source (2013-5-24).
|
||
* The STM32L-Discovery segment LCD is now functional and the README file
|
||
includes instructions for adding the apps/examples/slcd segment LCD
|
||
test as an NSH "built-in" command (2013-5-24).
|
||
* configs/pcblogic-pic32mx: Converted all configurations to use the
|
||
kconfig-frontends tool (2013-5-25).
|
||
* configs/pcblogic-pic32mx/src: Renamed files using pic32mx_ vs up_
|
||
prefix. Enable building of LCD1602 LCD (2013-5-25).
|
||
* configs/pcblogic-pic32mx/src/pic32mx_lcd1602.c: Now uses SLCD CODEC
|
||
(2013-5-25)
|
||
* configs/stm32ldiscovery/src/stm32_lcd.c: Now supports ioctl to get
|
||
cursor position (2013-5-25).
|
||
* include/nuttx/lcd/slcd_ioctl.h: Moved ioctls commands and structures
|
||
from slcd_codec.h (2013-5-25)
|
||
* libc/misc/lib_slcdencode.c and lib_slcddecode.c: Several encoding
|
||
and decoding bug fixes (2013-5-26)
|
||
* configs/sure-pic32mx: Converted all configurations to use the
|
||
kconfig-frontends tools, cleaned up the directory structure and
|
||
naming to match some of the more recent configurations, and added
|
||
a segment LCD driver for the board. The initial checkin of the
|
||
LCD driver is just a clone of configs/pcblogic-pic32mx/src/pic32mx_lcd1602
|
||
and it not yet expected to be functional (2013-5-26).
|
||
* include/nuttx/lcd/slcd_ioctl.h and all SLCD drivers: Rename geometry
|
||
structure to attributes; Move MAX contrast to attributes. Add
|
||
attribute and ioctl commands to get and set LCD brightness (2013-5-27).
|
||
* configs/sure-pic32mx/pic32mx_lcd1602.c: This driver appears to
|
||
fully functional (at least to the extent that it has been tested)
|
||
(2013-5-27).
|
||
* arch/mips/src/pic32mx/pic32mx-usbdev.c: Fix NULL packet handling in
|
||
the PIC32 USB device driver. Without this fix the CDC/ACM driver
|
||
cannot be used reliably with the PIC32 USB. With this change the
|
||
configs/sure-pic32mx/usbnsh configuration works great (2013-5-28).
|
||
* configs/sure-pic32mx/src/pic32mx_nsh.c: The NSH configurations will
|
||
support the USB monitor applications (2013-5-28).
|
||
nuttx/arch/arm/include/stm32/chip.h, src/stm32/Kconfig, src/stm32/chip.h,
|
||
and src/stm32/chip/stm32f103c_pinmap.h: STM32F103C4 and F103C8 chip
|
||
support from Laurent Latil (2013-5-28)
|
||
* configs/stm32_tiny: Add support for the STM32 Tiny development board
|
||
based on the STM32 F103C8T6 MCU (2013-5-28).
|
||
* arch/arm/src/stm32/stm32_usbdev.c: Fix an error in NULL packet
|
||
handling: If the NULL-packet needed flag ever gets set, then
|
||
it is not cleared and inifinite NULL packets result. This only
|
||
effects the CDC/ACM class and was the cause of the failure of
|
||
configs/stm32f3discovery/usbnsh configureation which works great
|
||
after this change (2013-5-29).
|
||
* drivers/usbdev/cdcacm.c and pl2303.c and include/nuttx/usb/cdcacm.h:
|
||
Change the default IN request buffer size from 64 to 96. This will
|
||
avoid requests of exactly MAXPACKET size and, hence, avoid so many
|
||
NULL packets. Also, fix the OUT request buffers size to exactly
|
||
the max packet size. It cannot be any other size (2013-5-29).
|
||
* .gitignore: Clean-up of most all .gitignore files: Make scope of
|
||
ignore to be only the current directory; Ignore .dSYM files in
|
||
directories where .exe's may be build. Also, in Makefiles,
|
||
clean .dSYM files in directories where .exe may be built (2013-5-30).
|
||
* drivers/wireless/nrf24101.c/.h and include/nuttx/wireless/nrf24101.h:
|
||
Add new driver for the wireless nRF24L01+ transceiver. From Laurent
|
||
Latil (2013-6-1).
|
||
* drivers/wireless/cc1101: Move files in the cc1101 up one directory.
|
||
From Laurent Latil (2013-6-1).
|
||
* configs/stm32_tiny: Fix nRF24L01+ driver integration for the STM32
|
||
Tiny. From Laurent Latil (2013-6-01).
|
||
* configs/sam3u-ek: All remaining configurations changed to use
|
||
the kconfig-frontends tools (2013-6-2).
|
||
* arch/arm/src/sam3u/chip: All SAM3U register definition files moved
|
||
to this subdirectory. Naming of registers changed from SAM3U_ to
|
||
just SAM_. This is in preparation for a SAM4L port (2013-6-2).
|
||
* arch/arm/src/sam3u: Renamed files to sam_* vs. sam3u_*.
|
||
Eliminated sam3u_internal.h; instead uses individual header
|
||
files for each SAM interface block (2013-6-2).
|
||
* arch/arm/src/stm32/stm32f20xxx_rcc.c and stm32f40xxx_rcc.c, and
|
||
configs/mikroe-stm32f4/src/up_clockconfig.c. Correct some bad
|
||
conditional compilation (CONFIG_ missing from setting name). This
|
||
affects some STM32 FLASH pre-fetch settings. From Lorenz Meier
|
||
(2013-6-2).
|
||
* arch/arm/include/sam34 and arch/arm/src/sam34: The old sam3u/
|
||
directories were renamed sam34/ to make room in the namespace for
|
||
the SAM4L (2013-6-2).
|
||
* libc/stdio/lib_dprintd.c and lib_vdprintf.c: Add dprintf() and
|
||
vdprintf() (the latter from Andrew Tridgell, 2013-6-2).
|
||
* sched/sem_holder.c: Modify assertion that is reported to cause
|
||
false alarm assertions (2013-6-2).
|
||
* arch/arm/include/sam34/sam4l_irq.h and
|
||
arch/arm/src/sam34/chip/sam4l_memorymap.h: Add interrupt and memory
|
||
map definitions for the AT91SAM4L (2013-6-3).
|
||
* arch/arm/src/sam34/chip/sam4l_vectors.h and arm/src/sam34/sam_vectors.S:
|
||
Add interrupt vector support for the SAM4L family (2013-6-3).
|
||
* arch/include/sam34/chip.h: Add chip definitions for the SAM4L
|
||
family (2013-6-3).
|
||
* configs/sam4l-xplained: A partial configuration that will (eventually)
|
||
support the SAM4L Xplained Pro developement board (2013-6-3).
|
||
* arch/arm/src/sam34/chip/sam4l_pinmap.h: Initial cut as SAM4L
|
||
pin mapping (2013-6-3).
|
||
* arch/arm/src/stm32/stm32*_dma.*: Add a new interface function,
|
||
stm32_dmacapable() that can be used to determine if DMA is
|
||
possible from the specified memory address. From Petteri Aimonen
|
||
(2013-6-4).
|
||
* arch/arm/src/stm32/stm32_spi.c: If CONFIG_STM32_DMACAPABLE is
|
||
defined, use stm32_dmacapable() to determine if it is possible
|
||
to perform DMA from the specified address. This change is
|
||
important for the STM32 F4 which may have SPI data buffers
|
||
allocated on the stack in CCM memory which cannot support the
|
||
DMA. From Petteri Aimonen (2013-6-4).
|
||
* nuttx/arch/arm/src/sam34/sam4l_gpio.h: Created GPIO driver
|
||
header file for the SAM4L. Also renamed the SAM3U header
|
||
file to sam3u_gpio.h (2013-6-4).
|
||
* nuttx/arch/arm/src/sam34/sam4l_gpio.c: Created GPIO driver for
|
||
the SAM4L (2013-6-4).
|
||
* nuttx/configs/sam4l-xplained/src/sam_userleds.c: Added.
|
||
(2013-6-4).
|
||
* configs/sam4l-xplained/src/sam_userleds.c: Add application
|
||
LED interfaces (2013-6-5).
|
||
* arch/arm/src/sam34/sam4l_gpio.c and arch/arm/src/sam34/chip/sam4l_gpio.h:
|
||
Fix GPIO port address; fix compilation errors (2013-6-5).
|
||
* arch/arm/src/sam34/chip/sam4l_flashcalw.h: Add header file
|
||
for SAM4L FLASH and PICOCACHE definitions (2013-6-5).
|
||
* arch/arm/src/sam34/chip/sam4l_pm.h: Add header file for SAM4L
|
||
Power Management. Leveraged from AVR32 (2013-6-5).
|
||
* arch/arm/src/sam34/sarm4l_clockconfig.c: SAM4L clock configuration
|
||
logic (leveraged from AVR32).
|
||
* nuttx/arch/arm/src/sam34/sam4l_periphclks.c/h: Add common
|
||
logic to enabled/disable SAM4L peripheral clocking (2013-6-5).
|
||
* nuttx/arch/arm/src/sam34/chip/sam4l_bpm.h and sam4l_scif.h: Add
|
||
register definitions for the SAM4L BMP and SCIF blocks (2013-6-6).
|
||
* nuttx/arch/arm/src/sam34/sam4l_clockconfig.c: Now selects an
|
||
optimal power scaling mode (2013-6-6).
|
||
* nuttx/arch/arm/src/stm32/stm32_serial.c and nuttx/include/termios.h:
|
||
Change for hardware flow control support for STM32. It also fixes
|
||
incorrect operation of USART2 and UART5 in current master. Submitted
|
||
by Lorenz Meier but includes changes by Mike Smith (2013-6-6).
|
||
* nuttx/arch/arm/src/stm32/stm32_otgfshost.c: A backward conditional
|
||
prevent detection of disonnection events. Reported by Scott (2013-6-6).
|
||
* nuttx/arch/arm/src/sam34/chip/sam4l_bscif.h: Add registers definitions
|
||
for the SAM4L BSCIF module (2013-6-6).
|
||
* nuttx/arch/arm/src/sam34/sam4l_clockconfig.c and chip/sam4l_wdt.h:
|
||
Finally finished the SAM4L clock configuration logic; Added a
|
||
WDT register definition header file (2013-6-8).
|
||
* nuttx/arch/arm/src/sam34/chip/sam4l_usart.h and sam4l_picouart.h:
|
||
Add UART/USART register definition files for the SAM4L (2013-6-8).
|
||
* arm/src/sam34/chip/sam3u_periphclks.h: More macros and definitions
|
||
to generalize peripheral clocking and to hide differences between
|
||
the SAM3U and the SAM4L (2013-6-8).
|
||
* configs/sam4l-xplained/ostest: The SAM4L now passed the OS test
|
||
(2013-6-9).
|
||
* configs/sam4l-xplained/nsh: Added an NSH configuration for the
|
||
SAM4L Xplained Pro board (2013-6-9).
|
||
* configs/sam4l-xplained/src/sam_cxxinitialize.c: Added C++ support
|
||
to the SAM4L Xplained Pro board configuration (2013-6-9).
|
||
* arm/src/sam34/chip/sam_irq.c: Extend IRQ support to handle the
|
||
larger number of NVIC interrupts used by the SAM4L (2013-6-9).
|
||
* arch/arm/src/sam45/chip: Beginning updates of SAM3U header files
|
||
to include support for the SAM4S: WDT, SUPC, EEFC, MATRIX, PMC,
|
||
UARTs, USARTs, HSMCI, SPI (2013-6-10).
|
||
* arch/arm/src/chip/sam4s_memorymap.h, sam4s_irq.h, and sam4s_vectors.h:
|
||
Add SAM4S memory map and interrupt definitions (2013-6-10)
|
||
* configs/sam4s-xplained: Add framework for the SAM4S Xplained board.
|
||
There is not much there on initial checkin (2013-6-10).
|
||
* arch/arm/src/sam34: SAM3S support: GPIO, chip characteristics,
|
||
peripheral Kconfig (2013-6-11).
|
||
* arch/arm/src/sam34/chip/sam4s_pinmap.h: Add SAM4S pin configuration
|
||
definitions (2013-6-11).
|
||
* arch/arm/src/sam34/sam4s_periphclks.h: Add macros to manage SAM4S
|
||
peripheral clocks (2013-6-11).
|
||
* configs/sam4s-xplained: Configuration builds error-free (2013-6-11).
|
||
* configs/sam4s-xplained/nsh: Added an NSH configuration for the
|
||
SAM4S Xplained board. Both the OS test and the NSH configurations
|
||
no execute error-free. Delay loops calibrated for both the SAM4L
|
||
and SAM4S boards (2013-6-12).
|
||
* Standardize on CONFIG_NSH_BUILTIN_APPS. Remove all other variants
|
||
of the build-as-an-NSH-application configuration settings
|
||
(2013-6-12).
|
||
* arch/arm/src/sam34/sam_periphclks.h: A header file that just
|
||
includes the right header file. This cleans up the messy logic
|
||
in all of the C files and puts the mess in one place (2013-6-12).
|
||
* arch/arm/src/arm*/Toolchain.mk, Kconfig (and lots of configuration
|
||
files): Add support for a generic Windows EABI toolchain (2013-6-13).
|
||
|
||
6.29 2013-07-31 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/sam34/chip/sam4l_pinmap.h: Change naming of some pin
|
||
configurations to match names used with other SAM part (2013-6-15).
|
||
* arch/arm/src/sam34/sam4l_clockconfig.c: Corrected some typos
|
||
(2013-6-15).
|
||
* configs/sam4l-xplained/src/sam_buttons.c: Eliminate a warning
|
||
(2013-6-15).
|
||
* configs/sam4l-xplained/src/sam_mmcsd.c, sam_nsh.c, sam_spi.c,
|
||
sam3u-ek.h, Kconfig, Makefile, sam4l-xplained.h,
|
||
configs/sam4l-xplained/README.txt, and
|
||
configs/sam4l-xplained/include/board.h: Add support for the SPI-
|
||
based SD card on the I/O1 module (2013-6-15).
|
||
* arch/arm/src/sam34/sam_spi.c: Re-architect the SAM3/4 SPI driver
|
||
so that is it compatible with the SPI drivers of other MCUs
|
||
(2013-6-16).
|
||
* configs/sam3u-ek/src/up_touchscreen.c and configs/sam4l-xplained/src/sam_mmcsd.c:
|
||
Changed needed because of the above change to the SAM3/4 SPI
|
||
interface (2013-6-16).
|
||
* drivers/input/ads7843e.c: Remove the wait for the touchscreen busy
|
||
bit. I don't see the busy bit changing on the SAM3U-EK board. But
|
||
maybe it is not supposed to. From my reading of the ADS7843 spec, it
|
||
would not be appropriate to wait for the BUSY bit to de-asserted
|
||
anyway (since it is only de-asserted when we read the data)
|
||
(2013-6-16).
|
||
* configs/sam3u-ek/src/up_touchscreen.c: Fix polarity of the /PENIRQ
|
||
signal (it is active low) (2013-6-16).
|
||
* configs/sam3u-ek/include/board.h: The SAM3U-EK board now runs at
|
||
96MHz. This might have broken some things? (2013-6-17).
|
||
* drivers/mmcsd/mmcsd-spi.c: Driver need to make sure that the SPI mode
|
||
and data width are correct (2013-6-17).
|
||
* arch/arm/src/kinetis/kinetis_tsi.h: Corrections to the Kinetis
|
||
(2013-6-18)
|
||
* arch/arm/src/sam34/sam_spi.c: Fix SPI mode setting. In the SAM3/4
|
||
family, the clock phase control (CPHA) is inverted (NPHA) (2013-6-18).
|
||
* arch/arm/src/kl/chip/kl_tsi.h: Freescale KL25Z TSI register
|
||
definitions from Alan Carvalho de Assis (2013-6-18).
|
||
* configs/freedom-kl25z/src/kl_tsi.c: Example TSI driver for the
|
||
Freedom KL25Z board from Alan Carvalho de Assis (2013-6-18).
|
||
* arch/arm/src/sam34/sam_spi.c: Correct an incorrect pointer test.
|
||
Was checking if the wrong pointer was NULL (2013-6-18).
|
||
* arch/arm/src/kl/kl_spi.c and chip/kl_spi.h: Add SPI driver and
|
||
register definitions for the Freescale KL25Z (2013-6-19).
|
||
* arm/src/sam34/chip/sam4l_lcdca.h: Register definition file for
|
||
the SAM4L LCD peripheral (2013-6-19).
|
||
* arm/src/sam34/chip/sam_spi.h: SPI register definition file updated
|
||
to include a few differences for the SAM4L (2013-6-19)
|
||
* arm/src/sam34/chip/sam4l_pdca.h: Add SAM4L PDCA register definition
|
||
file; also renamed sam_dmac.* files to sam3u_dmac.* to identify
|
||
them as SAM4U/4S only files (2013-6-19).
|
||
* configs/freedom-lk25z/src/kl_spi.c: Add the framework for
|
||
controlling SPI-related discrete inputs and outputs. Taken from
|
||
work by Alan Carvalho de Assis (2013-6-20).
|
||
* arch/arm/src/kl/kl_dumpgpio.c: Now compiles (2013-6-20).
|
||
* configs/: Several defconfig files were changed that had
|
||
CONFIG_HAVE_CXXINITIALIZE=y. Because of recent changes to
|
||
apps/examples, these configurations may need to have
|
||
CONFIG_EXAMPLES_NSH_CXXINITIALIZE=y so that they behave as they did
|
||
before, i.e., so that C++ initializers will be called when NSH starts
|
||
up (2013-6-21).
|
||
* configs/sam4l-xplained/src/sam_slcd.c: Beginning of a driver for the
|
||
LED1 segment LCD module. This driver is incomplete on initial check-
|
||
in (2013-6-21).
|
||
* drivers/net/enc28j60.c: Change buffer ordering to work around Errata
|
||
#5. From Dave (ziggurat29, 2013-6-22).
|
||
* configs/sam4l-xplained/src/sam_slcd.c: LED1 segment LCD module is now
|
||
functional (2013-6-23).
|
||
* drivers/lcd/ssd1306.c and include/nuttx/lcd/ssd1306.h. Renamed
|
||
ug-2864hsweg01.c and .h to ssd1306.c and .h. Extended to support the
|
||
UG-2832HSWEG04 which is very similar and also based on the SSD1306
|
||
controller (2013-6-23).
|
||
* configs/sam4l-xplained/src/sam_ug2832hsweg04.c: Add support for the
|
||
UG-2832HSWEG04 OLED on the SAM4L Xplained Pro's OLED1 module
|
||
(2013-6-23).
|
||
* include/debug.h: Added macro DEBUGPANIC for forces crashes when debug
|
||
is enabled.
|
||
* drivers/lcd/ssd1306.c: Driver now appears to be function for the
|
||
UG-2832HSWEG04 in landscape mode (2013-6-24).
|
||
* drivers/lcd/ug-2864ambag01.c and ug-9664hswag01.c: Add/updated
|
||
support for reverse portrait mode from lessons learned with the
|
||
UG-2832HSWEG04. Untested changes! (2013-6-24).
|
||
* arch/arm/src/stm32/stm32_ccm.c and .h: Add support for a seperate CCM
|
||
heap. This may be useful for segregating allocations for CCM (which
|
||
cannot be used for DMA) from other allocations (that may be used used
|
||
for DMA) (2013-6-25).
|
||
* arch/arm/src/sam32/sam3u_gpio.h: Correct configuration of PIO pins
|
||
for SAM4S B and C peripherals (2013-6-26)
|
||
* configs/sam4s-xplained/src/sam_sram.c: Added support for on-board
|
||
1MB SRAM (2013-6-26).
|
||
* arch/arm/include/sam34/chip.h and sam3x_irq.h: Add support for
|
||
SAM3X and SAM3A chips (2013-6-26).
|
||
* arch/arm/src/sam34/chip/sam3x_vectors.h: Add support for SAM3X/3A
|
||
interrupt vectors (2013-6-26).
|
||
* arch/arm/src/sam34/sam3x_periphclks.h: Add peripheral clock
|
||
controls for the SAM3X/3A (2013-6-26).
|
||
* arch/arm/src/sam34/chip/sam3x_memorymap.h: Add SAM3X/3A memory map
|
||
(2013-6-26).
|
||
* arch/arm/src/sam34/chip/sam3x_pinmap.h: Add SAM3X/3A pin
|
||
multi-plexing definitions (2013-6-26).
|
||
* arch/arm/src/sam34/sam3x_gpio.h: Add SAM3X/3A gpio encoding
|
||
macros. These differ from the SAM3U only in because of the
|
||
6 PIOs: PIOA-PIOF (2013-6-26).
|
||
* configs/arduino-due: This is an empty directory now with only
|
||
a README file in it but this directory will eventually hold a port
|
||
for the Arduino Due (2013-6-26).
|
||
* arch/arm/src/sam34/Kconfig: Add SAM3X/3A peripherals to the SAM3/4
|
||
configuration logic (2013-6-26).
|
||
* arch/arm/src and include/ and configs/sam*/: Large rename of all
|
||
references to SPI with SPI0. This is because all other SAMs have
|
||
only SPI but the 3X/3A have SPI0 and SPI1 (2013-6-26).
|
||
* configs/arduino-due: Complete the basic board configuration and
|
||
integrate this into the configuration and build system. The Arduino
|
||
Due is now ready to begin test (2013-6-17).
|
||
* configs/arduino-due/nsh: Add an NSH configuration for the Arduino
|
||
Due. Both the OS test and NSH configuration are now functional
|
||
(2013-6-28).
|
||
* configs/arduino-due/src: Add support for the "L" LED (2013-6-28).
|
||
* arch/arm/src/sam34/sam_allocateheap.c: Clocking must be applied
|
||
to the SMC module for the 3X and 3A family in order for the NFC
|
||
SRAM to be functional (2013-6-28).
|
||
* arch/arm/src/sam34/sam3u_gpio.c: Need to disable write
|
||
protection before configuring PIO pins.
|
||
* configs/sam3u-ek/nsh: The touchscreen is now functional. The above
|
||
fix to the sam3u_gpio.c write protection also fixed the touchscreen
|
||
problem (2013-6-28).
|
||
* confgis/sam3u_ek/nxwm: Created a configuration for the NxWM
|
||
window manager for the SAM3U-EK board (2013-6-29).
|
||
* drivers/spi and include/nuttx/spi: New sub-directories to hold
|
||
SPI-related files. includes/nuttx/spi.h moved to include/nuttx/spi/.;
|
||
SPI-related Kconfig info moved from drivers/Kconfig to drivers/spi/kconfig
|
||
(2013-7-1).
|
||
* drivers/spi/spi_bitbang.c and include/nuttx/spi/spi_bitbang.h: Add
|
||
support for a generic bit-bang SPI driver. This checkout is the
|
||
common upper-half logic. Still missing the lower half (2013-7-1).
|
||
* include/nuttx/spi/spi_bitbang.c: This is the common lower-half bit-
|
||
bang SPI logic (2013-7-1).
|
||
* configs/arduino-due/src/sam_nsh.c and sam_mmcsd.c: Add NSH customize
|
||
initialization. If so configured, initialize the SPI bit bang
|
||
interface to the MMC/SD slot on the ITEAD shield (2013-7-1).
|
||
* fs/fs_mount.c: Fix compilation error if no file systems are enabled:
|
||
Change error to ERROR (2013-7-3).
|
||
* arch/arm/src/sam34/sam_gpioirq.c: Fix some errors for interrupts
|
||
on ports D-F (2013-7-3).
|
||
* /drivers/usbdev/composite.c: Fix a typo in the composite device
|
||
driver unitialization logic. DEV1 should be DEV2 in one case
|
||
(2013-7-4).
|
||
* arch/arm/src/sam34/sam3u_gpio.c: sam_configgpio() must protect
|
||
against re-entrancy (2013-7-5).
|
||
* libc/misc/lib_crc16.c and include/crc16.h: Add CRC16 support
|
||
(2013-7-7).
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c: SourceForge bug #16: Fix
|
||
to the endpoint allocation logic. Apparently the same endpoint can
|
||
be allocated as both an IN or an OUT endpoint. The existing
|
||
implementation only supported one allocation, either IN or OUT. This
|
||
resulted in failures to allocate endpoints when used with the CDC/ACM +
|
||
MSC composite driver (From Chia Cheng Tsao, 2013-7-8).
|
||
* arch/arm/src/stm32/stm32_sdio.c: SourceForge bug #17: Add
|
||
support for the data block end (DBCKEND) interrupt to terminate
|
||
transfers (From Chia Cheng Tsao, 2013-7-8)
|
||
* drivers/rwbuffer.c: SourceForge bug #17: Correct typos that can cause
|
||
failures in some configurations (From Chia Cheng Tsao, 2013-7-8).
|
||
* include/nuttx/usb/usbdev.h: Fix some typos that cause compiler errors
|
||
when CONFIG_USBDEV_DMA and CONFIG_USBDEV_DMAMEMORY are selected (From
|
||
Chia Cheng Tsao, 2013-7-12).
|
||
* nuttx/configs/olimex-lpc1766stk/zmodem: Add a new configuration to
|
||
test the Zmodem sz and rz commands (which don't actually exist yet,
|
||
but will). (2013-7-12).
|
||
* arch/arm/include/armv7-a and src/armv7-a: Beginning to add support
|
||
for the ARMv7-A, the Cortex-A5 in particular. The initial checkin
|
||
is only fragmentary: A few header files and some copied ARM9
|
||
assembly files. More to come (2013-7-18).
|
||
* arch/arm/include/sama5, arch/arm/src/sama5, and configs/sama5d3x-e:
|
||
Add a directory framework to support the Atmel AT91SAMA5D3 family and
|
||
the SAMA5D3x-EK board(s) in particular. There is very little here on
|
||
the first check-in, this structure is being used now primarily to
|
||
create the Cortex-A5 support (2013-7-19).
|
||
* arch/arm/src/armv7-a/arm_cache.S: Cortex-A5 cache operations
|
||
(2013-7-20).
|
||
* /arch/arm/src/armv7-a/arm_fpuconfig.S and fpu.h: A few more files for
|
||
the ARMv7-A/Cortex-A5 port (2013-7-21).
|
||
* arch/arm/src/sama5/sam_boot.c, sam_clockconfig.h, sam_lowputc.h, and
|
||
sam_timerisr.c: A few more files for the SAMA5D3 port (2013-7-21).
|
||
* configs/sama5d3x-ek/src/sam_autoleds.c: A few more files for the port
|
||
to the SAMA5D3x-EK board (2013-7-21).
|
||
* arch/arm/src/sama5/sam_irq.c: SAMA5 interrupt handling logic
|
||
(2013-7-22).
|
||
* arch/arm/src/sama5/sam_clockconfig.c: Add SAMA5 PLL configuration
|
||
logic (plus associated header files). Initiali checkin is for the
|
||
SAM3U which is very similar but needs to be verified (2013-7-22).
|
||
* arch/arm/src/sama5/sam_periphclks.h: Add macros to enable and
|
||
disable SAMA5 peripheral clocks (2013-7-22).
|
||
* arch/arm/src/sama5/sam_lowputc.c and sam_serial.c: Add support
|
||
for SAMA5 UARTs. Does not even compile as of initial checkin.
|
||
(2013-7-22).
|
||
* arch/arm/src/sama5/sam_gpio.c: Add GPIO configuration support
|
||
for the SAMA5. Still compilation issues. (2013-7-22).
|
||
* arch/arm/src/sama5/chip/sama5d3x_pinmap.h: Add pin multiplexing
|
||
definitions for the SAMA5D3 (2013-7-23).
|
||
* arch/arm/src/sama5/chip/: New header files for SAMA5 AXI Matrix
|
||
SFR, and BSC blocks (2013-7-23).
|
||
* arch/arm/src/armv7-a/arm_vectors.S: Force 8-byte stack alignment
|
||
in interrupt handlers before calling C code. Other ARM
|
||
architectures need to do this as well (2013-7-23).
|
||
* arm/src/armv7-m/up_copyarmstate.c and armv7-a/up_copyarmstate.c:
|
||
Added a new form of the register copy function that should save quit a
|
||
bit of time for armv7-m (without common vectors) and with armv7-a
|
||
(2013-7-23).
|
||
* arch/arm/src/armv7-a/arm_restorefpu.S, arm_savefpu.S, arm_doirq.c,
|
||
arm_fullcontextrestore.S, arm_saveusercontext.S: Add hardware
|
||
floating point register save/restore logic for the Cortex-A5
|
||
(2013-7-23).
|
||
* arch/Kconfig: Attempt at generic external memory configuration is not
|
||
flexible enough, especially for the SAMA5. Move external memory
|
||
configuration options from arch/Kconfig to
|
||
arch/arm/src/lpc17xx/Kconfig, lpc31xx/Kconfig, sam34/Kconfig, and
|
||
sama5/Kconfig and renamed each from CONFIG_ARCH_ to, for example,
|
||
CONFIG_LPC31_. This renaming also affect many defconfig files
|
||
(2013-7-24).
|
||
* arch/arm/src/sama5/Kconfig and sam_allocateheap.c: Set up
|
||
configuration options for SAMA5 external memory regions; add a custom
|
||
sam_allocateheap.c to add the various configured memory regions to the
|
||
heap (2013-7-24).
|
||
* configs/sama5d3x-ek/src/sam_buttons.c, sam_userleds.c, and
|
||
sam_autoleds.c: Add support for the buttons and LEDs on-board the
|
||
SAMA5D3x-EK (2013-7-24).
|
||
* configs/sama5d3x-ek/ostest/defconfig: Switch console to USART1
|
||
(2013-7-4).
|
||
* arch/arm/src/sam34/Kconfig and drivers/serial/Kconfig: All serial
|
||
configuration logic for USARTs needs to depend on if the USART is
|
||
configured as a UART or not. And this is for all CPUS, not just
|
||
SAM3/4 (2013-7-24).
|
||
* arch/arm/src/arm/up_head.S and arch/arm/src/armv7-a/arm_head.S:
|
||
Fix a bug (uninitialized register error) that crept in the ARM9
|
||
boot-up code several years ago and was cloned into the Cortex-A5
|
||
code. Obviously no one has used the ARM9 NuttX port for years!
|
||
* Many files: Finally... I changed the naming of configuration
|
||
variables like CONFIG_DRAM_ to CONFIG_RAM_. This has bothered
|
||
me for a long time since most boards don't have DRAM. The more
|
||
generic RAM naming should not produce so much cognitive dissonance
|
||
(2013-7-26).
|
||
* configs/sama5d3x-ek/hello: Added a tiny hello world configuration
|
||
to simplify bring up of the SAMA5 (it will probably be removed
|
||
later) (2013-7-26).
|
||
* The sama5d3x-ek/hello now runs correctly (2013-7-28).
|
||
* configs/sama5d3x-ek/ostest/: This configuration has been modified
|
||
to run out NOR flash. More work is still needed to reconfigure the
|
||
SMC so that the NOR flash can work with the high clock (2013-7-28).
|
||
* arch/arm/src/sama5/sam_clockconfig.c/h and
|
||
configs/sama5d3x-ek/src/sam_norflash.c: Add a file structure that
|
||
will (eventually) support reconfiguration of NOR flash when NuttX
|
||
boots from NOR FLASH (2013-7-29).
|
||
* arch/arm/src/sama5/chip/sam_hsmc/h: SAMA5 HSMC register
|
||
definition file (2013-7-29)
|
||
* configs/sama5d3x-ek/src/sam_norflash.c: Add board specific
|
||
logic to re-configure the SAMA5D3x-EK NOR FLASH before while
|
||
running out of NOR FLASH. We need to change the NOR FLASH
|
||
timing BEFORE increasing the main clock (2013-7-29).
|
||
* configs/sama5d3-ek/norboot and src/nor_main.c: The norboot
|
||
configuration to help debug NuttX in NOR flash. It runs
|
||
out of ISRAM, configures NOR FLASH, then waits for you to
|
||
break in with a debugger to start the program in NOR FLASH
|
||
(2013-7-29).
|
||
* arch/arm/src/armv7-a/arm_cache.S: Separate the bigger cache
|
||
operations into separater files (2013-7-29).
|
||
* arch/arm/src/stm32/stm32_dac.c: Fixed numerous DAC driver
|
||
errors and added support for DAC DMA (contributed by John
|
||
Wharington, 2013-7-30).
|
||
* arch/arm/src/stm32/stm32f30xx_i2c.c: An I2C driver for
|
||
the STM32 F3 family from John Wharington (2013-7-30).
|
||
* arch/arm/include/armv7-m: Add irqdisable() (2013-7-30);
|
||
* configs/sama5d3-ek/src/nor_main.c: Now disables interrupts
|
||
before jumping to NOR flash (2013-7-30).
|
||
* configs/sama5d3-ek/nsh: Add an NSH configuration for the
|
||
SAMA5D3x-EK (2013-7-31)
|
||
* configs/sama5d3-ek/src/sam_cxxinitialize.c: Add C++ support
|
||
(2013-7-31).
|
||
|
||
6.30 2013-09-14 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/sama5/arm_pghead.S: Separate the logic that is
|
||
enabled by CONFIG_PAGING out of arm_head.S. That was just
|
||
too much conditional compilation to be supportable
|
||
(2013-8-1).
|
||
* arch/arm/src/sama5/arm_head.S: Setup page table mappings for
|
||
all of .text, .bss, .data, stacks and heap before enabling
|
||
the MMU and caching. This is safer because it avoids the
|
||
caching issues (and much less redundant) (2013-8-1)
|
||
* arch/arm/src/sama5/chip/sam_mpddrc.h: Add DDR controller
|
||
registers definitions for the SAMA5 (2013-8-1).
|
||
* nuttx/configs/sama5d3x-ek/src/sam_sdram.c: Add logic which
|
||
will (eventually) support the SDRAM on the SAMA5D3x-EK
|
||
board. Initial commit is untested and incomplete (2013-8-1).
|
||
* arch/arm/src/armv7-a/arm_mmu.c: Move some generic MMU logic
|
||
out of SAMA5-specific code into this share-able file (2013-8-2)
|
||
* arch/arm/src/armv7-a/mmu.h: Add inline functions to invalidate
|
||
a single TLB.
|
||
* arch/arm/src/sama5/sam_allocateheap.c and chip/sama5d3x_memorymap.h:
|
||
Add logic to handle signed overflow when a memory region is
|
||
greater than or equal to 2GB (2013-8-2).
|
||
* arch/arm/src/sama5/sam_boot.c: Boot logic now initially
|
||
configures DRAM as strongly ordered so that it can be initialized.
|
||
After initialization, the page table entries are modified so
|
||
that DRAM is fully cache-able (2016-8-2).
|
||
* arch/arm/src/sama5/chip/sam_mpddrc.h: Correct typos in the
|
||
SAMA5 DDR controller register definitions (2013-8-2).
|
||
* arch/arm/src/sama5/sam_irq.c: Correct handling of spurious
|
||
interrupts (2013-8-3).
|
||
* arch/*/src/*/*_irq.c: Standardize configuration variables used
|
||
to enable interrupt controller debug output (2013-8-3).
|
||
* arch/arm/src/sama5/chip/sam_dmac.h: Add register definitions for the
|
||
SAMA5 DMA controller (2013-8-3).
|
||
* arch/arm/src/sama5/sam_dmac.c and sam_dmac.h: Add support for the
|
||
SAMA5 DMAC controllers. Initial check-in is untested and is a
|
||
straight leverage from the SAM3/4 (2013-8-4).
|
||
* arch/arm/src/sama5/sam_spi.c, sam_spi.h, and chip/sam_spi.h:
|
||
Leverage SPI support from SAM/3/4. Initial check-in is untested
|
||
and have several limitations: No DMA, no SPI1 support (2013-8-4).
|
||
* arch/arm/src/sama5/sam_spi.c and sam_spi.h: Now supports SPI1
|
||
and a register access debug option (2013-8-4).
|
||
* configs/sama5d3x-ek/src/sam_spi.c: Add board support for the
|
||
AT25 serial flash (2013-8-4).
|
||
* configs/sama5d3x-ek/nsh/defconfig: FAT file system support is
|
||
now enabled by default (2013-8-5)
|
||
* configs/sama5d3x-ek/src/sam_nsh.c: Automatically mount AT25
|
||
file system for NSH if so configured (2013-8-5).
|
||
* configs/sama5d3x-ek/src/sam_nsh.c: Verified that the AT25 FLASH
|
||
works on the SAMA5D3x-EK boards and can support a FAT file system
|
||
(2013-8-5).
|
||
* arch/arm/src/sam34/sam_spi.c: Corrected an error in the SAM3/4
|
||
SPI driver while testing the SAMA5 SPI driver: If CONFIG_SPI_OWNBUS
|
||
is not set, the driver will not configure the SPI mode correctly
|
||
(2013-8-5).
|
||
* configs/sama5d3x-ek/src/sam_at25.c: Move AT25 initialization logic
|
||
out of sam_nsh.c and into a separate file where it can be better
|
||
shared (2013-8-5).
|
||
* arch/arm/src/sama5/sam_hsmci.c, sam_hsmci.h, and chip.sam_hsmci.h:
|
||
Add register definitions and a driver for the (3) HSMCI memory card
|
||
interfaces provided by the SAMA5. Leveraged from the SAM3/4 and
|
||
untested on initial commit (2013-8-5).
|
||
* nuttx/configs/sama5d3x-ek/src/sam_hsmci.c and sam_nsh.c: Add support
|
||
for the (2) SD card slots provided on the SAMA5D3x-EK boards.
|
||
Untested on initial commit (2013-8-5).
|
||
* arch/arm/src/sama5 and nuttx/configs/sama5d3x-ek: Massive renaming
|
||
to get consistent once and for in the usage of PIO vs GPIO. Other
|
||
platforms use the term GPIO more, but Atmel prefers PIO. I prefer
|
||
consistency. Also fixed CONFIG_PIO vs CONFIG_SAMA5_PIO and renamed
|
||
files sam_gpio.* to sam_pio.* (2013-8-6).
|
||
* arch/arm/src/sama5/sam_pioirq.c: Add support for SAMA5 PIO interrupts
|
||
(2013-8-6).
|
||
* configs/sama5d3x-ek/src/sam_hsmci.c: Add support for SD slot card
|
||
detection PIO interrupts (2013-8-6).
|
||
* arch/arm/src/sam34/sam_hsmci.c and sama5/sam_hsmci.c: Fix handling
|
||
of some masked status conditions that can cause false-alarm errors
|
||
(2013-8-6).
|
||
* arch/arm/src/sama5/sam_dmac.c and sam34/sam34_dmac.c: For SAMA5,
|
||
correct some bad register address and some bad assertions that caused
|
||
false alarms. These latter were backported to the SAM34 DMAC driver
|
||
as well (2013-8-6).
|
||
* arch/arm/src/sama5/sam_dmac.c and sam34/sam34_dmac.c: Correct
|
||
some parameters reversed in function call (2013-8-6).
|
||
* arch/arm/src/sama5/sam_spi.c: The SAMA5 SPI driver now supports
|
||
DMA transfers (2013-8-9).
|
||
* arch/arm/src/sama5/sam_dmac.c: Finally after many bugfixes (the
|
||
last being caching issues), the SAMA5 DMA support has been
|
||
verified (with SPI) (2013-8-9).
|
||
* arch/arm/src/sama5/sam_memories.c and .h: Centralize logic for
|
||
conversions between physical and virtual addresses (2013-8-9).
|
||
* arch/arm/src/sama5/sam_hsmci.c and sam34/sam_hsmci.c: Correct a
|
||
race condition in the SAMA5 HSCMI driver: The transfer done
|
||
interrupt was firing before the wait was started. Fix this and
|
||
also backported the changes to SAM3/4 (untested). Now HSCMI is
|
||
functional on the SAMA5 with DMA! (2013-8-10).
|
||
* arch/arm/src/sam34/sam3u_periphclks.h: Correct a typo in a register
|
||
name (2013-8-10).
|
||
* drivers/mmcsd/mmcsd_sdio.c: Correction for a bad return value
|
||
when multiple block SDIO transfers are suppressed. By Andrew Tridgell
|
||
via Lorenz Meier (2013-8-10).
|
||
* drivers/serial/serial.c, drivers/usbdev/cdcacm.c, and
|
||
include/nuttx/fs/ioctl.h: Added support for FIONREAD and FIONWRITE,
|
||
added TERMIOS input / output processing support for UART and CDCACM
|
||
serial ports. Implemented by Mike Smith, Andrew Tridgell and Lorenz
|
||
Meier (2013-8-10).
|
||
* drivers/usbdev/cdcacm.c: Added FIONREAD and FIONWRITE to CDC/ACM
|
||
driver based on serial.c implementation. From Lorenz Meier
|
||
(2013-8-10).
|
||
* arch/arm/src/stm32/Kconfig and stm32_serial.c: Added option to
|
||
disable serial port reordering. From Lorenz Meier (2013-8-10).
|
||
* arch/arm/src/sama5/Kconfig, sam_ohci.c, and
|
||
arch/arm/src/sama5/sam_clockconfig.c: Add a OHCI driver for the SAMA5.
|
||
Untested on initial check-in (2013-8-11).
|
||
* include/nuttx/usb/usbhost.h, arch/arm/src/stm32, arch/arm/src/lpc17xx,
|
||
and include/nuttx/usb/usbhost.h, and nuttx/configs/<stm32-boards>:
|
||
Move prototype of usbhost_initialize() of usbhost.h and into
|
||
architecture specific files. This is necessary because some chips
|
||
(like the SAMA5) have multiple, different USB host interfaces
|
||
(2013-8-11).
|
||
* drivers/usbhost/usbhost_hidkbd.c and usbhost_storage.c: Correct some
|
||
compilation errors when pre-allocated class structures are used. Also
|
||
eliminate some warnings about uninitialized variables (2013-8-11).
|
||
* configs/sama5d3x-ek/src/sam_usb.c and related files: Add support for
|
||
initialization of the USB host and mass storage class device (2013-8-11).
|
||
* arch/arm/src/sama5/sam_ohci.c and sam_usbhost.h (was sam_ohci.h), and
|
||
configs/sama5d3x-ek/src/sam_usb.c, and sama5d3x-ek.h: Add controls
|
||
to enable VBUS power in OHCI host most (2013-8-12).
|
||
* includes/nuttx/usb/usbhost.h, all USB host drivers in arch/, and all
|
||
USB host-side connection monitoring threads in configs/*/src: The
|
||
SAMA5 has three downstream ports; all of the other USB host
|
||
implementations have only one. This will require significant changes
|
||
to the USB host interfaces starting with these chnages to monitor
|
||
connections on a port-by-port basis. This effects a lot of files and
|
||
more changes are coming for this issues. Changes are being blindly
|
||
incorporated into other architrectures. I am being careful to avoid
|
||
breakage, but I expect some (2013-8-12).
|
||
* configs/olimex-stm32-p107/nsh/defconfig and appconfig: Converted to
|
||
use the kconfig-frontends tool. From Max Holtzberg (2013-8-12).
|
||
* includes/nuttx/usb/usbhost.h, et al: Continued changes to the USB
|
||
host interface to support multiple downstream ports. When a class
|
||
is disconnected, it needs to provide the FunctionAddress to the
|
||
USB HCD disconnect method so that the HCD will know which port
|
||
is being disconnected (2013-8-12).
|
||
* nuttx/arch/arm/src/stm32/Kconfig, Make.defs, and /stm32f30xxx_i2c.c:
|
||
STM32 F3 I2C fixes from John Wharington (2013-8-13).
|
||
* nuttx/arch/arm/src/sama5/sam_serial.c: Fix a re-entrancy problem
|
||
in up_putc(). I think all architectures have this re-entrancy
|
||
than can result in serial interrupt being disabled, but I have only
|
||
seen the symptom on SAMA5 (2013-8-13).
|
||
* includes/nuttx/usb/usbhost.h and many other affected files: Separate
|
||
wait() and enumerate() methods from struct usbhost_driver_s and move
|
||
to new interface, struct usbhost_connection_s. This is part of the
|
||
necessary restructuring of the USB host interface to support multiple
|
||
root hub ports (2013-8-13).
|
||
* arch/arm/src/sama5/sam_ohci.c: Major restructuring of the driver due
|
||
in order to handle multiple root hub ports. Basically instead of one
|
||
driver structure with an arrayof root hub port structures, there is no
|
||
one container structure with an array of driver structures, one for
|
||
each root hub port. The advantage is that each class->driver call not
|
||
passes information associated with the RHport implicitly. The klugey,
|
||
procedural alternative was to add the function address to every
|
||
interface method (which I started to do but backed above) (2013-8-13).
|
||
* arch/arm/src/sama5/sam_memories.c and .h: Extended logic so do
|
||
conversions from physical to virtual addresses (2013-8-14).
|
||
* arch/arm/src/sama5/sam_ohci.c: Add D cache contols and conversion
|
||
between physical and virtual address (2013-8-14).
|
||
* arch/arm/src/stm32/stm32_spi.c: nbits() interface extended to
|
||
control bit order as well as bit width (from Teemu Pirinen)
|
||
(2013-8-16)
|
||
* arch/arm/src/sama5/sam_ohci.c: More to be tested, but the SAMA5
|
||
OHCI driver is now basically funtional (2013-8-16).
|
||
* include/nuttx/usb/ehci.h: EHCI header file (2013-8-17).
|
||
* arch/arm/src/stm32/stm32_i2c.c: Correct an error that crept into
|
||
the STM32 F1 I2C driver with some recent changes. From Yiran Liao
|
||
(2013-8-18).
|
||
* drivers/usbhost/usbhost_devaddr.c and include/nuttx/usb/usbhost_devaddr.h:
|
||
Add logic for management of device addresses. This logic does not
|
||
currently hook into into anything. It will someday be a part of the
|
||
NuttX USB hub implementation (2013-8-18).
|
||
* nuttx/arch/arm/src/sama5/sam_ehci.c and other files: Create a skeleton
|
||
environment for development of an EHCI driver. Not much in place yet
|
||
(2013-8-20).
|
||
* nuttx/arch/arm/src/sama5/sam_ehci.c: Now code complete for all
|
||
asynchronous endpoints (control and bulk); nothing yet in place
|
||
for periodic endponts (interrupt and isochronous) (2013-8-22).
|
||
* include/nuttx/serial/serial.h and arch/arm/src/stm32/chip/stm32f40xxx_pinmap.h:
|
||
SourceForge bug #16 Fix IO pin map. Add CONFIG_SERIAL_TERMIOS support.
|
||
Also fixes some STM32 F4 Timer 8 pin configurations. From CCTSAO
|
||
(2013-8-23).
|
||
* arch/arm/src/lpc17xx/lpc17_usbhost.h: Fix #endif with missing #if
|
||
condition. Reported by Andrew Bradford (2013-8-23).
|
||
* nuttx/arch/arm/src/sama5/sam_ehci.c: Now handles low- and full-speed
|
||
connections by giving the port to the OHCI driver (2013-8-24).
|
||
* nuttx/arch/arm/src/sama5/sam_ohci.c: Now uses the work queue to
|
||
defer interrupt processing (2013-8-24).
|
||
* nuttx/arch/arm/src/sama5/sam_ohci.c and nuttx/arch/arm/src/sama5/sam_ehci.c:
|
||
EHCI is now the common interrupt "master." It will receive all UHPHS
|
||
interrupts and route the interrupt event to both the OHCI and EHCI
|
||
logic (2013-8-24).
|
||
* net/uip/uip_arp.c: Correct backward condition in netmask task.
|
||
From Max Holtzberg (2013-8-25).
|
||
* arch/arm/src/sama5/sam_ohci.c: SAMA5 OHCI is again functional by
|
||
itself after all of the changes to integrate with EHCI. (2013-8-25).
|
||
* drivers/net/encx24j600.c/.h and include/nuttx/net/encx24j600.h:
|
||
Support the Microchip ENCX24J600 Ethernet driver from Max Holtzberg
|
||
(2013-8-25).
|
||
* configs/olimex-stm32-p107: Incorporate ENCX24J600 support for the
|
||
Olimex STM32 P107 board. From Max Holtzberg (2013-8-25).
|
||
* fs/romfs/fs_romfsutil.c: Fix an error where long (>15) file names
|
||
were read incorrectly from a ROMFS file system. From Mike Smith
|
||
(2013-8-25).
|
||
* arch/arm/src/stm32/stm32_sdio.c: SourceForge bug #17 Fix if
|
||
CONFIG_SDIO_BLOCKSETUP defined, OS will crash". Generate an error
|
||
if CONFIG_SDIO_BLOCKSETUP is defined; that option is not yet supported
|
||
by the STM32 SDIO driver. From CCTSAO (2013-6-26)
|
||
* drivers/net/encx24j600.c and .h: Use the ENC's SRAM for multiple TX
|
||
packets. From Max Holtzberg (2013-6-26).
|
||
* include/nuttx/usb/usbhost.h, drivers/usbhost/usbhost_enumerate.c, and
|
||
all USB host drivers: Added a new driver method: getdevinfo. This
|
||
method is intended to get various information about the connected device,
|
||
but currently returns only the device speed. The device speed is
|
||
necessary by usbhost_enumerate in order to set a credible initial EP0
|
||
max packetsize. High speed needs 64 bytes, low speed needs 8 bytes,
|
||
and full speed can handle almost any size (2013-8-26).
|
||
* arch/arm: Add hooks for Cortex-A8. Not much more yet (2013-8-27).
|
||
* Lots of files: Fix all occurrents of "the the" in documentation and
|
||
comments (2013-8-27).
|
||
* arch/arm/src/sama5/sam_allocateheap.c: Correct the logic that
|
||
determines which memory regions get added to the heap. When
|
||
CONFIG_MM_NREGIONS > 1, the logic was adding the ISRAM region to
|
||
the heap twice! (2013-6-27).
|
||
* nuttx/arch/arm/src/sama5/sam_ehci.c: Add (untested) support for
|
||
interrupt endpoints (2013-8-28).
|
||
* arch/arm/src/sama5/chip/sam_udphs.h: High-speed USB device register
|
||
definitions for the SAMA5 (2013-8-28)
|
||
* arch/arm/src/sama5/sam-udphs.c: A framework for the USB device
|
||
driver taken from another architecture. There is very little
|
||
useful in this initial check-in (2013-8-29).
|
||
* Remove all empty and most useless README.txt files (2013-8-31)
|
||
* configs/freedom-kl25z/src/kl_spi.c: Correct typo in name of a
|
||
function. From Alan Carvalho de Assis (2013-8-31).
|
||
* drivers/usbdev/cdcacm_desc.c: Fixed some compilation errors that
|
||
only occur when dual speed support is enabled (2013-9-1).
|
||
* arch/arm/src/sama5/sam_clockconfig.c and configs/sama5d3x-ek/include/board_*mhz.h:
|
||
Add logic to support UDPHS clocking (2013-9-13).
|
||
* arm/src/stm32/chip/stm32_tim.h: Some CCER bit settings changed
|
||
per SourceForge bug #18 submitted by CCCTSAO (2013-9-2).
|
||
* apps/examples/cc3000, configs/freedom-kl25z, drivers/wireless/cc3000,
|
||
and nuttx/include/nuttx/cc3000. Initial support for the TI CC3000
|
||
network module on the Freescale Freedom-KL25Z board from Alan Carvalho
|
||
de Assis. This is still very much a work in progress (2013-9-3).
|
||
* configs/*/usbmsc: Renamed from config/*/usbstorage to match the
|
||
change in naming in apps/examples submitted by CCTSAO (2013-9-5).
|
||
* drivers/usbdev/cdcacm.c and pl2303.c: Don't use max packetsize assigned
|
||
to the endpoint when allocating request buffers; The default value of
|
||
the endpoint max packetsize may be incorrect because the endpoint
|
||
has not yet been configured. Verified on CDC/ACM. Corresponding
|
||
changes made to pl2303, but untested (2013-9-5).
|
||
* arch/arm/src/sama5/sam_udphs.c: The high-speed device side driver
|
||
is now functional (although more testing is always needed) (2013-9-5).
|
||
* net/net_monitor.c: Fixes a race condition where a loss of connection
|
||
may not be detected when the connection is lost before it has been
|
||
accepted (from Max Holtzberg) (2013-9-6).
|
||
* configs/sama5d3x-ek/demo: Add a new NSH configuration. The
|
||
original NSH configuration will be a simple platform for testing
|
||
individual features; the demo configuration will be a more complex
|
||
platform for demonstrating multiple interacting features (2013-9-6).
|
||
* net/uip/uip_tcpbacklog.c: Fix a major bug in the TCP/IP backlog
|
||
initialization: Only the first backlog buffer was getting added
|
||
to the free list. From Max Holtzberg (2013-9-6).
|
||
* configs/sama5d3x-ek/demo: Add support for USB MSC device on the
|
||
AT25 serial FLASH (untested) (2013-9-6).
|
||
* drivers/net/enc28j60.c: Changes back-ported from the ENCX24J600
|
||
to the ENC28J60 by Max Holtzberg. These seem like reasonable and
|
||
correct changes, but have yet to be verified on an ENC28J60 (2013-9-6).
|
||
* drivers/usbdev/usbdev_strings.c: Extended decoding and stringifying
|
||
of USB trace output to include trace output from class drivers.
|
||
(2013-9-6).
|
||
* drivers/usbdev/usbmsc_desc.c: Fix a warning when USB MSC is
|
||
compiled for a high-speed device (2013-9-7).
|
||
* drivers/usbhost/usbhost_storage.c: If device is returning fatal
|
||
transfer errors while attempt to initialize, don't bother with
|
||
the startup retries; abort immediately so that the device will
|
||
be reset and we can try again (2013-9-9).
|
||
* drivers/usbhost/usbhost_storage.c: Correct a reference counting
|
||
error: When an MSC device transfer fails while waiting for
|
||
UnitTestReady (see 2013-9-9), the reference count was not being
|
||
decremented. The end result is a memory leak (2013-9-10).
|
||
* arch/arm/src/sama5/chip/sam_twi.h: Added SAMA5 TWI register
|
||
definition file (2013-9-11).
|
||
* arch/arm/src/sama5/sam_twi.c and .h: Framework for a SAMA5
|
||
TWI driver (not much present in initial checkin) (2013-9-11).
|
||
* fs/nxffs: Clean up some compilation warnings (2013-9-12)
|
||
* drivers/mtd/at24xx.c: Add support for the AT 24C512 part
|
||
(2013-9-12).
|
||
* arch/arm/src/sama5/sama5_twi.c: Clean up some errors that
|
||
only occur with CONFIG_DEBUG_I2C (2013-9-12).
|
||
* arch/arm/src/sama5/chip/sam_emac.h and sam_gmac.h: Register
|
||
definition files for the SAMA5 EMAC and GMAC peripherals
|
||
(incomplete on the initial commit) (2013-9-12).
|
||
* arch/arm/src/stm32/stm32_can.c: Make filter register accessible
|
||
for CAN1 and CAN2. Patch provided by Lorenz Meier (2013-9-13).
|
||
* nuttx/include/nuttx/usb/cdcacm.h: Fix backward conditional
|
||
compilation in the CDC/ACM driver with regard to remote
|
||
wakeup and self-powered capabilites. Provided by Lorenz Meier
|
||
(2013-9-13)
|
||
* fs/romfs/fs_romfsutil.c: Fix for filenames > 15 characters.
|
||
Provided by Lorenz Meier (2013-9-13).
|
||
* arch/arm/src/stm32/Kconfig: Fix STM32 UART7/8 kconfig names
|
||
and UART DMA. Provided by Lorenz Meier (2013-9-13).
|
||
* configs/maple: Board configuration for the LeafLabs Maple
|
||
and Maple Mini boards. From Librae (2013-9-13).
|
||
* arch/arm/src/sama5/sam_emac.c and .h: Skeleton files for
|
||
a SAMA5 EMAC driver. Not much in the initial files; these
|
||
are just hacked out and gutted versions of the corresponding
|
||
STM32 files (2013-9-13).
|
||
|
||
6.31 2013-10-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* nuttx/fs/romfs/fs_romfsutil.c: Back out part of a recent
|
||
ROMFS change (2013-9-14).
|
||
* configs/sama5d3x-ek/src/sam_ethernet.c: Add support for
|
||
PHY interrupts (2013-9-15).
|
||
* arch/arm/src/kl/chip/kl_pit.h and kp_tpm.h: Add register
|
||
definitions for the Freescale Kinetis KL25Z from Alan
|
||
Carvalho de Assis (2013-9-15).
|
||
* configs/ and a few Ethernet drivers: Add the prefix ETH0
|
||
to all PHY configuration selections. This will allow us
|
||
to support to Ethernet MAC drivers with two different
|
||
PHYs (identified with ETH0 and ETH1) (2013-9-17).
|
||
* net/Kconfig and drivers/net/Kconfig: Move PHY selections from
|
||
net/Kconfig to drivers/net/Kconfig where they belong. Add the previx
|
||
ETH0_ to each PHY selection. And a new configuration
|
||
CONFIG_NETDEV_MULTINIC that can be set to enable support for multiple
|
||
Ethernet MAC drivers (not fully implemented yet). When Enabled,
|
||
another set of PHY selections are enabled for ETH1_ (2013-9-17).
|
||
* include/nuttx/net/mii.h: Add definitions for the Micrel KSZ8051 PHY
|
||
(2013-9-17).
|
||
* configs/zkit-arm-1768: MMC/SD is on SPI, not SSP0. From Rashid
|
||
Fatah (2013-9-17).
|
||
* configs/: Lots of defconfig files changes. A consequence of the
|
||
above renaming and moving of the PHY configuration settings is
|
||
that the you now also have to set CONFIG_NETDEVICES=y if you
|
||
need to set a PHY configuration (2013-9-17).
|
||
* arch/arm/src/lpc17xx/lpc17_spi.c: Remove undefined spi_select()
|
||
prototype. This was causing compile time warnings (2013-9-17).
|
||
* configs/sama5d3x-ek/src/sam_ostest.c: Add OS test support for
|
||
the FPU test (2013-9-18).
|
||
* arch/arm/src/sama5/sam_usbhost.h and include/nuttx/usb/usbhost_trace.h
|
||
Correct some inconsistencies in the way that USB configuration
|
||
settings are used. This caused compilation errors in SAMA5 OHCI
|
||
when USB debug was ON but USB host tracing was off (2013-9-19).
|
||
* nuttx/arch/arm/src/sama5/sam_clockconfig.c: When 480MHz UPLL
|
||
is used to drive OHCI, it should have a divider of 10. However,
|
||
that does not work. A divider of 5 does. Why? (2013-9-19).
|
||
* Several USB device driver files: Change naming of SELFPOWERED
|
||
and REMOTEWAKEUP to avoid name collisions. Prepend the name
|
||
of the driver (for example CDCACM_SELFPOWERED) (201309-20).
|
||
* configs/sama5d3x-ek/nsh and demo: Increase the number of pre-allocated
|
||
watchdog timers. The default number of 4 was easily being exhausted
|
||
in the more complex configurations. Enable the task name feature
|
||
to provide prettier ps command output. src/sam_usb.c: Use more
|
||
descriptive task names when starting the EHCI and OHCI monitor tasks
|
||
(2013-9-20).
|
||
* arch/arm/src/sama5/sam_ohci.c: Fix a place where DMA-related data
|
||
needed to be flushed to data cache; Fix another where a virtual address
|
||
was being used in a register where a physical address was required
|
||
(2013-9-20).
|
||
* arch/arm/src/armv7-a/cp15_clean_dcache.S and cp15_flush_dcache.S:
|
||
fix an error in the alignment of addresses to cache line boundaries
|
||
(2013-9-21).
|
||
* drivers/usbdev/cdcacm_desc.c: Change the interval for the interrupt
|
||
endpoint from 0xff (invalid) to 10. This is not a critical change
|
||
but will avoid a complaint from the Linux driver when it overrides
|
||
the 0xff value (2013-9-22).
|
||
* configs/zkit-arm-1769: LED1 is now user controllable after booting.
|
||
From Rashid Fatah (2013-9-23).
|
||
* arch/arm/src/sama5/sam_hsmci.c: TX DMA disabled. It is just not
|
||
reliable. No idea why. RX DMA is still used (2013-9-23).
|
||
* driver/net/encx24j600.c: UDP/RXAVAIL backlog support from Max
|
||
Holtzberg (2013-9-24).
|
||
* Standardized stack checking logic so the interfaces can be used
|
||
by common stack monitoring logic (2013-9-24).
|
||
* drivers/net/Kconfig: Move CONFIG_NET_DUMPPACKET out of LPC17
|
||
and STM32 Kconfigs into the common network driver Kconfig (2013-9-25).
|
||
* arch/arm/src/sam_emac.c: EMAC driver is basically functional. More
|
||
testing is needed (as always) (2013-9-25).
|
||
* configs: Changes to many defconfig files resulting from moving
|
||
apps/examples/usbmsc to apps/system/usbmsc (2013-9-25).
|
||
* configs: Changes to many defconfig files resulting from moving
|
||
apps/examples/cdcacm to apps/system/cdcacm (2013-9-25).
|
||
* configs: Changes to many defconfig files resulting from moving
|
||
apps/examples/composite to apps/system/composite (2013-9-25).
|
||
* configs/stm3210e-eval/composite: Converted to use the kconfig-
|
||
frontends tool (2013-9-25).
|
||
* arch/arm/src/sama5/sam_gmac.c: Initial GMAC driver is really
|
||
just the EMAC driver forced to compile with the GMAC register
|
||
definitions (2013-9-26).
|
||
* arch/arm/src/sama5/sam_gmac.c and include/nuttx/net/gmii.h:
|
||
Beginning of support for GMII/RGMII PHY support (2013-9-26)
|
||
* net/netdev_txnotify.c: Look up of device using subnet will fail
|
||
if the packet is being sent out of our subnet (via a router).
|
||
The fallback here is just to use "eth0" if the subnet lookup
|
||
fails. This will, of course, will have to be revisited if/when
|
||
multiple NICs are supported. From Max Holtzberg (2013-9-27).
|
||
* net/send.c: Fix some backward conditional logic in check
|
||
to see if we should check if the ARP address in the table. From
|
||
Max Holtzberg (2013-9-27).
|
||
* drivers/net/encx24j600.c: Removed logic that polls for the
|
||
next outgoing packet from the TX done interrupt handling. From
|
||
Max Holtzberg (2013-9-27)
|
||
* sched/os_start.c: Should not call group_setupidlefiles() if there
|
||
are no file descriptors (and, hence, no file system) (2013-9-27).
|
||
* arch/arm/src/sama5/sam_gmac.c: GMAC driver and GMII logic is
|
||
code complete and ready for test (2013-9-27)
|
||
* configs/compal_e86: Basic board support for the Motorola C139
|
||
(Compal E86) phone. From Craig Comstock (2013-9-27).
|
||
* configs/compal_e86: Converted to use the kconfig-frontends
|
||
tools (2013-9-27).
|
||
* drivers/net/encx24j500.c: Use separate pools for RX and TX
|
||
descriptors. From Max Holtzberg (2013-9-28).
|
||
* nuttx/fs/fs_sendfile.c, nuttx/net/net_sendfile.c, and other file:
|
||
Integrate an optimized sendfile() operation from Max Holtzberg
|
||
(2013-9-28).
|
||
* tools/mkdeps.*, nuttx/mm/Makefile, nuttx/libc/Makefile: Dependency
|
||
generation generation was broken for directories that keep objects in
|
||
a sub-directory. Fixed by adding a object path to the mkdeps.c,
|
||
mkdeps.bat, mkdeps.sh tools (2013-0-29).
|
||
* arch/arm/src/sama5/chip/sam_adc.h: ADC register definition file.
|
||
Incomplete on initial check-in (2013-9-29).
|
||
* arch/arm/src/sama5/sam_adc.c and .h: Framework for an ADC
|
||
driver to come (just empty "skeleton" files on initial commit)
|
||
(2013-9-30).
|
||
* arch/arm/src/sama5/sam_touchscreen.h and .h: Framework for a
|
||
touchscreen driver (also an empty "skeleton" file on the initial
|
||
commit) (2013-9-30).
|
||
* arch/arm/src/kl/kl_lowgetc.c and .h: First cut at low-level
|
||
getc() function for operation with no file system (and, hence,
|
||
no serial driver) (from Alan Carvalho de Assis, 2013-9-30).
|
||
* configs/freedom-kl25z/minnsh: A new configuration that is
|
||
an experiement to see how small we can get the NuttX footprint.
|
||
From Alan Carvalho de Assis. (2013-9-30).
|
||
* net/net_sendfile: The high performance sendfile logic is
|
||
now functional. From Max Holtzberg (2013-9-30).
|
||
* tools/define.sh: 'cut' no longer works as it once did. Script
|
||
adapted to observed behavior (2013-9-30).
|
||
* include/nuttx/net/route.h and net/net_*route.c: Partial
|
||
implementation of a routing table. Not yet hooked into the
|
||
build system (2013-10-1)
|
||
* include/net/route.h: Defines the application interface to
|
||
the routing table (2013-10-2).
|
||
* configs/spark: Add configuration for the Spark Core. The
|
||
initial check-in is basically the Maple Mini board (2013-10-2).
|
||
* include/net/route.h and libc/net/lib_addroute.c and delroute.c:
|
||
Add an application interface to manage the routing table
|
||
(2013-10-2).
|
||
* arch/arm/src/sama5/sam_adc.c and sam_tsc.c: The SAMA5
|
||
touschscreen drive is basically functional) (2013-10-3)
|
||
* arch/arm/src/sama5/chip/sam_lcdc.h: Add SAMA5 LCD register
|
||
definition header file (2013-10-4).
|
||
* net/netdev_findbyaddr.c: Now (1) uses the routing table
|
||
if available to look up the router to get to a remote network,
|
||
and (2) if there is only a single network device and no
|
||
route, then it will simply return that single device. The
|
||
ARP logic will use the default router address associated with
|
||
the interface in this case (2013-10-5).
|
||
* 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,
|
||
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
|
||
target endpoint (2013-10-5).
|
||
* net/netdev_rxnotify.c and others: Use the new signature of rxnotify
|
||
caused by the routing table. From Max Holtzberg (2013-10-6).
|
||
* arch/arm/src/sama5/sam_lcdc.c and .h: Empty "skeleton" file that
|
||
will eventually become an LCDC driver for the SAMA5 (2013-10-6).
|
||
* net/net_close.c, net/uip/uip_tcpcon, and include/nuttx/net/uip/uip-tcp.h:
|
||
Make net_close() nonblocking and free unestablished connections if no
|
||
free connections available. From Max Holtzberg (2013-10-6).
|
||
* net/net_close.c and other: Update of change of 2013-10-6 from
|
||
Max Holtzberg (2013-10-8).
|
||
* arch/arm/src/sama5/sam_lcd.c: LCDC driver is code complete and
|
||
incorporated into the build system (but still untested (2013-10-8).
|
||
* configs/sama5d3x-ek/nx: Add an examples/nx configuration that
|
||
will be used for the SAMA5 LCD bring-up (2013-10-8).
|
||
* configs/arduino-due/Kconfig and include/board.h: Add configuration
|
||
to select revision 3 of the Arduino Due which has some small
|
||
but important differences. Suggested by gdi@embedders.org.
|
||
* arch/arm/src/sama5/sam_allocateheap.c, Kconfig, chip/sama5d3_memorymap.h:
|
||
Add support so that subsets of the total DRAM (and other external
|
||
memory) can be added to the heap, leaving other memory reserved for
|
||
other purposes (like LCDC framebuffers) (2013-10-10).
|
||
* arch/arm/src/sama5/sam_lcd.c: Change how DMA descriptors are
|
||
allocated. My reading of the SAMA5 MATRIX is that the LCDC will
|
||
be unable to DMA from internal SRAM (2012-10-10).
|
||
* arch/arm/src/sama5/Kconfig and configs/sama5d3x-ek/nx/defconfig: The
|
||
default LCD resolution is now RGB565. Added output resolution selection
|
||
which can be different from the software resolution (2013-10-10.
|
||
* arch/arm/src/sama5/sam_lcd.c wait before modifying register if the LCDC
|
||
is re-synchronizing (SIF). Use start-up configuration settings from
|
||
Barebox. They still don't work (2013-10-10).
|
||
* net/net_monitor.c: Notify the socket layer if a connection is lost
|
||
before the monitoring callback has been registered. From Max
|
||
Holtzberg (2013-10-11).
|
||
* net/recvfrom.c, sendto.c, uip/uip_input.c, uip/uip_udpcallback.c,
|
||
uip/uip_udpconn.c, uip/uip_udpinput.c: Changed the meaning of the
|
||
uip_*input functions. They now return success when a packet is
|
||
dropped; This is needed for the ENCX24J600 driver that must make
|
||
a decision to return the packet or not: It should not retry
|
||
dropped packets. From Max Holtzberg (2013-10-11).
|
||
* drivers/net/encx24j600.c and Kconfig: ENCX24J600: Improved descriptor
|
||
handling, free packets on rx abort interrupt. From Max Holtzberg
|
||
(2013-10-11).
|
||
* arch/arm/src/sama4/sam_lcd.c and configs/sama5d3x-ek/include/board.h:
|
||
Fix PWM precealler divider. This eliminiates the backlight flicker
|
||
(2013-10-11).
|
||
* arch/arm/src/sama5/sam_boot.c: Correct how framebuffer memory was
|
||
being mapped. The mapping was getting overrwritten and the
|
||
framebuffer memory was ending up cacheable (2013-10-13).
|
||
* arch/arm/src/sama5/Kconfig, sam_lcdc.c, defconfig, and related files:
|
||
Remove options for obtaining framebuffer memory in other ways. That
|
||
option just really cannot work (2013-10-13).
|
||
* configs/sama5d3x-ek/nxwm: Add NxWM configuration for SAMA5D3x-EK
|
||
(2013-10-13).
|
||
* configs/sama5d3x-ek/nxwm/defconfig: Now uses scaled icons in the
|
||
the NxWM taskbar (2013-10-15).
|
||
* configs/sama5d3x-ek/nxwm/defconfig: Use the 320x320 NuttX logo as
|
||
the NxWM background (2013-10-15).
|
||
* arch/arm/src/stm32/chip/stm32f103c_pinmap.h: Pinmapping corrections
|
||
from David Sidrane (2013-10-16).
|
||
* configs/spark: The Spark device configuration is receiving some
|
||
TLC from David Sidrane (2013-10-16).
|
||
* drivers/mtd/sst25.c: Add support for the SST25VF016B. From David
|
||
Sidrane (2013-10-16).
|
||
* net/net_close.c: Changed net_close debug output to verbose. From
|
||
Max Holtzberg (2013-10-17).
|
||
* net/send.c and net_sendfile.c: Reset the send timeout when the
|
||
data is ACKed, not when the data is sent. Remove conditions on
|
||
checking for timeout. From Max Holtzberg (2013-10-17).
|
||
* net/net_sendfile.c: Correct parameter passed to netdev_txnotify()
|
||
from Max Holtzberg (2013-10-17).
|
||
* include/nuttx/net/uip/uip-tcp.h, net/send.c, uip/uip_tcpconn.c, and
|
||
uip/uip_tcpinput.c: Change how the initial minimum MSS is calculated.
|
||
Max Holtzberg (2013-10-17).
|
||
* net/uip/uip_tcpinput.c: Move tcp connection into SYN_RCVD state
|
||
after aception instead of bypassing and moving directly into ESTABLISHED.
|
||
From Max Holtzberg (2013-10-17).
|
||
* net/net_sendfile.c: Let the ACK callback handle the REXMIT flag and
|
||
don't return until all data has been ACK'd. From Max Holtzberg
|
||
(2013-10-17).
|
||
* arch/arm/src/stm32/chip/stm32f40xxx_dma.h: Typo fixes for UART7 and
|
||
UART8 DMA configs. From Mike Smith (2013-10-18).
|
||
* arch/arm/src/stm32/Kconfig: DMA priority corrections from Mike Smith
|
||
(2013-10-18).
|
||
* arch/arm/src/stm32/stm32*_dma.c, stm32_sdio.c, and stm32_dma.h:
|
||
Changes to the stm32_dmacapable API. In order to correctly verify that
|
||
a buffer can be transferred, the transfer count and the CCR value are
|
||
required. Implemented stm32_dmacapable for stm32f1xx devices. Enhanced
|
||
stm32_dmacapable for stm32f2xx and stm32f4xx devices to check for
|
||
additional conditions that will cause DMA to fail or lose data (2013-10-18).
|
||
* include/nuttx/sdio.h: Add a preflight method to the SDIO interface.
|
||
From Mike Smith (2013-10-18).
|
||
* drivers/mmcsd/mmscd_sdio.c: Enhanced the mmcdd_sdio driver to perform
|
||
DMA preflight operations and fail DMA read/write requests that fail
|
||
preflighting. From Mike Smith (2013-10-18).
|
||
* fs/fat/fs_fat32.c: Enhanced the FAT32 filesystem code to understand DMA
|
||
preflight failures, and to use the file sector buffer as a bounce buffer
|
||
when a user-supplied buffer is not suitable for DMA. From Mike Smith
|
||
(2013-10-18).
|
||
* arch/arm/src/sama5/chip/sam_rtc.h and sam_wdt.h: Add WDT and RTC
|
||
register definition header files (2013-10-18).
|
||
* arch/arm/src/sama5/chip/sam_rtc.c and sam_rtc.h: Basic RTC driver.
|
||
Support for RTC alarms is fragmentary and this has not yet been hooked
|
||
into the build system (2013-10-18).
|
||
* Various Spark and CC3000 files: Update by David Sidrane (2013-10-18).
|
||
* arch/arm/src/sama5/chip/sam_gpbr.h: Add SAMA5 GPBR register
|
||
definitions (2013-10-19).
|
||
* Kconfig: Add support for CONFIG_DEBUG_RTC (2013-10-19).
|
||
* configs/sama5d3x-ek/README.txt, demo/defconfig: Describe how to
|
||
enable RTC support for the nsh/ configuration; RTC is now enabled by
|
||
default in the demo configuration (2013-10-19).
|
||
* arch/arm/src/sama5/sam_rtc.h and other files: Hook the SAMA5 RTC
|
||
driver into the build system; Verify the correct operation of the
|
||
SAMA5 RTC driver (2013-10-19).
|
||
* arch/arm/src/sama5/sam_wdt.c and .h: Add a SAMA5 watchdog timer
|
||
driver. Untested on initial check-in (2013-10-19).
|
||
* arch/arm/src/sama5/sam_trng.c, sam_trng.h, and chip/sam_trng.h: Add
|
||
a /dev/random driver based on the SAMA5D3 TRNG peripheral (2013-10-20).
|
||
* configs/sama5d3x-3k/demo: The TRNG and /dev/random are now enabled
|
||
by default in the demo configuration (2013-10-20).
|
||
* arch/arm/src/sama5/chip/sam_tc.h: SAMA5D3 timer/counter register
|
||
definition header file (2013-10-20).
|
||
* libc/stdio/lib_sscanf.c: scanf() fixes from kfrolov: 1) sscanf()
|
||
function hangs in the following example: sscanf("2", "%u,%u,%u,%u", ...),
|
||
2) sscanf() returns incorrect number of parsed numbers if some arguments
|
||
can't be parsed: sscanf("=2", "%u,%u,%u,%u",...)==1 instead of 0, and
|
||
3) using of char* instead of const char* in vsscanf function leads to
|
||
warnings from GCC (2013-10-21).
|
||
* arch/arm/src/sama5/chip/sam_can.h: SAMA5D3X CAN register definition
|
||
header file (2013-10-21)
|
||
* arch/arm/src/sama5/sam_can.c and .h: Framework for a SAMA5 CAN driver.
|
||
Initial checkin is the STM32 CAN driver with name changes (2013-10-21).
|
||
* arch/arm/src/sama5/sam_can.c and .h: SAMA5 CAN driver is code complete
|
||
but still untested (2013-10-22).
|
||
* configs/spark: Spark configuration updated by David Sidrane (2013-10-23).
|
||
* drivers/wireless/cc3000: CC3000 driver updates from David Sidrane
|
||
(2013-10-23).
|
||
* include/nuttx/wireless/cc3000: More CC3000 driver updates from David
|
||
Sidrane (2013-10-23).
|
||
* net/Kconfig, drivers/net/wireless/cc3000/Kconfig, and Kconfig: Add
|
||
ARCH_HAVE_NET that determines if a network is present or not. This
|
||
currently can happen if CONFIG_NET is set or if CONFIG_WL_CC3000 is
|
||
is set (23013-10-23).
|
||
* arch/arm/src/stm32/stm32f10xxx_dma.c: DMA fix from David Sidrane:
|
||
The DMA_CNDTRx register cannot be modified if the DMA channel is
|
||
disabled (2013-10-23).
|
||
* arch/arm/src/sama5/sam_tc.c and .h: First cut at a timer/counter
|
||
library for the SAMA5D3 (2013-10-23).
|
||
* configs/spark/nsh/defconfig: Spark configuration update from David
|
||
Sidrane (2013-10-24).
|
||
* drivers/wireless/cc3000/cc3000.c: CC3000 driver update from David
|
||
Sidrane (2013-10-24).
|
||
* arch/arm/include/stm32/chip.h and arch/arm/src/stm32/Kconfig:
|
||
Add support for the STM32F207ZE chip. From Martin Lederhilger
|
||
(2013-10-24).
|
||
* arch/arm/src/stm32/stm32_adc.c and stm32_pwm.c: Fix some bits
|
||
that should have been cleared in a register. From Martin Lederhilger
|
||
(2013-10-24).
|
||
* configs/olimex-stm32-p207 and other files: Support for the Olimex
|
||
STM32 P207 board added by Martin Lederhilger (2013-10-24).
|
||
* arch/arm/src/sama5/sam_adc.c, sam_tc.c and sam_tc.h: Hook in the
|
||
timer/counter logic so that it can driver periodic ADC sampling
|
||
(2013-10-24).
|
||
* configs/freedom-kl25z/src/Makefile: Only build kl_wifi.c if
|
||
CONFIG_WL_CC3000 is selected. From Alan Carvalho de Assis
|
||
(2013-10-24).
|
||
* configs/sama5d3x-ek/src/sam_adc.c: Integrate support for the
|
||
apps/examples/adc into the SAMA5D3x-EK configuration (2013-10-24).
|
||
* include/nuttx/fs/ioctl.h and arch/arm/src/sama5/sam_adc.c: Add
|
||
and ioctl command that can be used to trigger ADC/DAC conversion
|
||
(2015-10-25).
|
||
* configs/spark: Spark configuration updated by David Sidrane
|
||
(2013-10-25).
|
||
* drivers/wireless/cc3000 and include/nuttx/wireless/cc3000:
|
||
CC3000 driver update from David Sidrane (2013-10-25).
|
||
* arch/arm/src/sama5/chip/sam_isi.h: Camera interface register
|
||
definitions added (2013-10-26).
|
||
* audio/ and include/nuttx/audio/audio.h: Updated audio subsystem
|
||
from Ken Pettit (2013-10-27).
|
||
* drivers/audio/ and include/nuttx/audio/vs1053.h: Updated
|
||
VS1053 driver from ken Pettit (2013-10-27).
|
||
* configs/mikroe-stm32f4/: Updated configuration for the
|
||
Mikroe STM32F4 board from Ken Pettit (2013-10-27).
|
||
* arch/arm/src/stm32/stm32_spi.c: DMA-related fixes from Ken
|
||
Pettit (2013-10-27).
|
||
* sched/sched_releasetcb.c: Fix a cornercase: If sched_releasetcb()
|
||
is called as part of a failed pthread startup before the flags
|
||
field in the TCB has been initialized, then a crash occurs.
|
||
Pointed out by David Sidrane (2013-10-27)
|
||
* arch/arm/src/sama5/sam_adc.c: ADC now works in all implemented
|
||
modes: single channel or multiple channel with sequencer support.
|
||
software trigger or timer trigger; ADC channel interrupts or
|
||
DMA (2013-10-28).
|
||
* 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).
|
||
|
||
6.32 2013-12-07 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/spark: Spark configuration updated by David Sidrane
|
||
(2013-10-30).
|
||
* drivers/wireless/cc3000 and include/nuttx/wireless/cc3000:
|
||
CC3000 driver updates from David Sidrane (2013-10-13).
|
||
* arch/arm/src/sama5/chip/sam_ssc.h: SSC register definition
|
||
header file (2013-10-30).
|
||
* arch/arm/src/sama5/chip/sam_pwm.h: PWM register definition
|
||
header file (2013-10-31).
|
||
* drivers/mtd/mtd_partition.c: Fix erase block vs page block confusion.
|
||
From Ken Pettit (2013-10-31).
|
||
* arch/arm/src/stm32/stm32_usbdev.c: On a failure to bind the class
|
||
driver, the driver reference was being nullified too soon. This
|
||
caused an exception in usbdev_reset() later. The driver reference
|
||
will be nullified later usbdev_unregister when the caller gets the
|
||
error. From David Sidrane (2013-10-31).
|
||
* 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
|
||
interface to configuration data storage that resides on some storage
|
||
media that is wrapped as an MTD device. From Ken Pettit (2013-11-1).
|
||
* configs/mikroe-stm32f4: Now uses /dev/config for configuration data
|
||
storage. From Ken Pettit (2013-11-1).
|
||
* arch/ stack management functions: 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 (2013-11-1).
|
||
* configs/spark/usbmsc: Add spark USB MSC configuration. From David
|
||
Sidrane (2013-11-1).
|
||
* fs/fat/fs_fat32util.c: In one error return case, the error return
|
||
value was not being set, making the failure look like success. From
|
||
David Sidrane (2011-10-1).
|
||
* drivers/usbdev/usbmsc.c and usbmsc_scsi.c: pthread_join() does not
|
||
work if called from a different task group than the pthread. This
|
||
is correct behavior, but 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 (2013-11-1).
|
||
* drivers/mtd/mtd_config.c: Reduce configuration header size. From
|
||
Ken Pettit (2013-11-1).
|
||
* drivers/mtd/sst25.c: Improved write performance by fixing a bug
|
||
that prevented operation in the faster write mode. The code did
|
||
not wait on the last write complete before issuing the WRDI The
|
||
loop in general failed to wait on the fist 2 bytes after the
|
||
SST25_AAI if the next 2 were FF FF, then it would reissue the
|
||
address but not cancel the write. Reorganized to always wait for
|
||
completion after and address with data write and on any data
|
||
write so that the device is complete before WRDI is sent. From
|
||
David Sidrane (2013-11-2).
|
||
* configs/sama5/src/sam_can.c: Add CAN initialization logic
|
||
and fix a data alignment problem (2013-11-3).
|
||
* drivers/mtd/mtd_config.c: Updated configuration driver from
|
||
Ken Pettit (2013-11-4).
|
||
* configs/sim/configdata: MTD configuration driver unit test for
|
||
the simulation platform. From Ken Pettit (2013-11-4).
|
||
* configs/mikroe-stm32f4/fulldemo: Configuration updated by Ken
|
||
Pettit (2013-11-4).
|
||
* arch/arm/src/stm32/stm32_usbdev.c: Correct EP0 state handling
|
||
logic when buffers larger than the EP0 packet size are sent.
|
||
Also add support for decoded USB trace strings. From David
|
||
Sidrane (2013-11-5).
|
||
* drivers/usbdev/cdcacm.c, composite.c, usbmsc.c: uninitialization
|
||
logic cause re-use of a stale pointer. Changed to a two pass
|
||
uninitialization for the case of the composite driver: Memory
|
||
resources are not freed until the second uninitialization pass.
|
||
From David Sidrane (2011-11-5).
|
||
* arch/arm/src/sama5/sam_pwm.c and .h: Add PWM driver for SAMA5
|
||
untested on initial checkout (not even incorporated in to build
|
||
system) (2013-11-6).
|
||
* arch/arm/src/sama5/Make.defs and Kconfig: SAMA5 PWM driver now
|
||
incorporated into build and configuration system. Builds with
|
||
no errors (2013-11-6).
|
||
* configs/sama5d3x-ek: Add support for the PWM test for the
|
||
SAMA5D3x-EK board (2013-11-6).
|
||
* arch/arm/src/sama5/sam_pwm.c and .h: SAMA5 PWM driver is now
|
||
functional (2013-11-7).
|
||
* include/nuttx/audio/i2s.h: First cut at an I2S interface
|
||
definition. This initial definition is sparse will will
|
||
probably evolve significantly (2011-11-7).
|
||
* arch/arm/src/sama5/sam_ssc.c and .h: Skeleton and build setup
|
||
for a forthcoming SSC (aka I2S) driver for the SAMA5. The
|
||
initial check-in is just the SAMA5 SPI driver gutted and hacked
|
||
to use the I2S interface. More coming (2013-11-7).
|
||
* arch/arm/src/stm32 and arch/arm/include/stm32: Added support for
|
||
the STM32F429. From Ken Pettit (2013-11-7).
|
||
* configs/stm32f429i-disco: Support for the STM32F429I-Discovery
|
||
board from Ken Pettit (2013-11-7).
|
||
* arch/arm/src/stm32/stm32_usbdev.c: The long outstanding bug
|
||
involving the handling of OUT SETUP commands has been fixed in
|
||
the STM32 F1 USB device driver by David Sidrane (2013-11-7).
|
||
* configs/spark/composite/cdc-acm.inf: Windows CDC/ACM driver
|
||
provided by David Sidrane (2013-11-7).
|
||
* configs/spark/usbserial.c: Add an apps/examples/usbserial
|
||
configuration for the Spark. From David Sidran (2013-11-7).
|
||
* arch/arm/src/sama5/sam_ssc.c and .h: First cut of SAMA5
|
||
SSC/I2S driver is code complete (2013-11-9).
|
||
* arch/arm/src/stm32 (numerous files): 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 (2013-11-10).
|
||
* configs/stm32f429i-disco: Add support for the usbnsh and
|
||
usbmsc configurations using the OTG HS peripheral in FS mode.
|
||
From Ken Pettit (2013-11-10)
|
||
* drivers/audio/i2schar.c: A simple character driver 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. (2013-11-10).
|
||
* arch/arm/src/kl/kl_pwm.c and .h: PWM driver for the Freescale
|
||
Kinetis KL family from Alan Carvalho de Assis (2013-11-10).
|
||
* configs/freedom-kl25z: Add PWM support. From Alan Carvalho de Assis
|
||
(2013-11-10).
|
||
* drivers/audio/vs1053: VS1053 worker thread stack size is now
|
||
configurable and assigned a name via pthread_setname_np(). From Ken
|
||
Pettit (2013-11-10).
|
||
* libc/audio/lib_buffer.c: Moved audio/buffer/c to libc/audio/lib_buffer.c.
|
||
This file was moved because it contains buffer management functions
|
||
that must be available to audio applications. If it was left in the
|
||
audio/ directory then it would not be available to applications in the
|
||
NuttX Kernel build (2013-11-10).
|
||
* arch/arm/src/sama5/sam_ssc.c and Kconfig: Add configurable support
|
||
for SSC loopback mode (2013-11-10).
|
||
* include/nuttx/audio/i2s.h, arch/arm/src/sama5/sam_ssc.c, and
|
||
drivers/audio/i2schar.c: Improved I2S interface design: Simplified
|
||
audio buffer queuing (2013-11-10).
|
||
* arch/arm/src/sam34 and arch/arm/include/sam34: Basic support for
|
||
the Atmel SAM4E family. From Mitko (2013-11-11).
|
||
* libc/audio/lib_buffer.c: Remove unused apb_prepare() function
|
||
(2013-11-11).
|
||
* arch/arm/src/stm32: Added header files and driver framework for the
|
||
STM32F429 LTDC framebuffer driver. From Ken Pettit (2013-11-11).
|
||
* configs/sama5d3x-ek/src/sam_i2schar.c: Add support for the
|
||
apps/examples/i2schar test (2011-11-11).
|
||
* arch/arm/src/sama5/sam_ssc.c: I2S loopback test finally works
|
||
(2013-11-11).
|
||
* fs/procfs: Add a little, primitive procfs file system. (2013-11-13).
|
||
* fs/binfs/README.txt: Add a README file for binfs (2013-11-13).
|
||
* arch/arm/src/stm32/Kconfig: Add missing setup of CAN TSEG1 and
|
||
TSEG2 values. From Martin Lederhilger (2013-11-14).
|
||
* arch/arm/src/sama5/sam_pck.c and .h: Add support for programmable
|
||
clock outputs (2013-11-14).
|
||
* configs/ea3131/nsh: Converted to use kconfig-frontend tools
|
||
(2013-11-14).
|
||
* arch/arm/src/lpc31: Create configuration and build support for a
|
||
forthcoming USB host controller driver (2013-11-14).
|
||
* arch/arm/src/lpc31/lpc31_ehci.c: First cut at an EHCI driver
|
||
tailed for the LPC31 (2013-11-14).
|
||
* fs/fs_mount.c: SMART FS must be included in the conditional
|
||
compilation for the set of file systems that require block
|
||
drivers. From Daniel Palmer (2013-11-15).
|
||
* tools/mkconfig.c: SMART FS must be included in the conditional
|
||
compilation for the set of writable file systems. Noted by
|
||
Daniel Palmer (2013-11-15).
|
||
* arch/arm/src/sama5/sam_nand.c and .h: Framework for an MTD driver
|
||
that will provide raw access to NAND (2013-11-15).
|
||
* configs/sama5d3x-ek/src/sam_nandflash.c: Provides board-specific
|
||
memory controller initialize for NAND flash (2013-11-15).
|
||
* include/nuttx/mtd/mtd.h: Move include/nuttx/mtd.h to
|
||
include/nuttx/mtd/mtd.h where it will, hopefully, soon be joined by
|
||
other MTD-related header files (2013-11-15).
|
||
* drivers/mtd/mtd_onfi.c and include/nuttx/mtd/onfi.h: Add shared
|
||
NAND routines for use with ONFI compatible NAND FLASH devices
|
||
(2013-11-15).
|
||
* configs/ea3131/src/up_usbhost.c: Board-specific USB host support
|
||
for the EA3131 board (2013-11-15).
|
||
* drivers/mtd/mtd_nand.c, include/nuttx/mtd/nand.h, nand_config.h,
|
||
and nand_scheme.h: Further NAND support (still incomplete).
|
||
(2013-11-16).
|
||
* drivers/mtd/mtd_modeltab.c: Further NAND support (still incomplete).
|
||
(2013-11-16).
|
||
* drivers/mtd/mtd_nandmodel.c: More NAND support (same story).
|
||
(2013-11-16).
|
||
* drivers/mtd/mtd_rawnand.c and include/nuttx/mtd/nand_raw.h: More
|
||
NAND support (2013-11-17).
|
||
* drivers/mtd/mtd_nandscheme.c: More NAND support (2013-11-17).
|
||
* include/nuttx/mtd/nand_ecc.h: More NAND (2013-11-17).
|
||
* drivers/mtd/hamming.c and mtd_nandecc.c and
|
||
include/nuttx/mtd/hamming.h: Beginning of NAND software ECC
|
||
calculations. (2013-11-18).
|
||
* configs/olimex-lpc-h3131: Add support for the Olimex LPC-H3131
|
||
* board. Does not yet boot (2013-11-18).
|
||
* arch/arm/src/lpc31xx/lpc31_ehci.c: Add USB host trace support
|
||
(2013-11-19).
|
||
* configs/olimex-lpc-h3131/include/board.h, src/lpc31_boot.c,
|
||
lpc31_leds.c, lpc31_usbhost.c, and lpc_h3131.h: Add GPIO
|
||
support for LED1/2 and for USB power enable and overcurrent
|
||
detection (2013-11-19).
|
||
* configs/olimex-lpc-h3131/nsh/defconfig: Drop loops-per-msec
|
||
count for the Olimex-LPC-H3131. It seems to be about 25% as
|
||
fast as the Embedded Artists EA3131 at the same clocking.
|
||
(2013-11-19).
|
||
* arch/arm/src/arm/up_cache.S and cache.h: More cache management
|
||
functions (2013-11-20).
|
||
* configs/olimex-lpc-h3131/src/Makefile: Add SDRAM support.
|
||
Untested and probably needs some fine tuining (2013-11-21)
|
||
* fs/smartfs/README.txt: Add README for SMARTFS file system. From
|
||
Ken Pettit (2013-11-23)
|
||
* tools/mkctags.sh: A script for creating ctags from Ken Pettit
|
||
(2013-11-23)
|
||
* configs/sama5d3x-ek/src/sam_nand.c: Add support for "auto-mounting"
|
||
NAND MTD block driver or NXFFS file system (2013-11-25).
|
||
* include/mtd/mtd.h: Packed the geometry structure so that it can
|
||
support larger erase block sizes without increasing the size of
|
||
the geometry structure (2013-11-27).
|
||
* drivers/mtd/sst25xx.c: Add another SST25 SerialFlash driver. This
|
||
one differs from sst25.c because it supports larger SST25 parts: In
|
||
the larger parts support page write instead of byte/word writes like
|
||
the smaller parts. From Ken Pettit (2013-11-28).
|
||
* drivers/mtd/smart.c: Fixes 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 (2013-11-28).
|
||
* arch/arm/src/stm32/chip/stm32f40xxx_gpio.h: Add support for GPIOK and
|
||
GPIOJ. From Ken Pettit (2013-11-28).
|
||
* configs/stm32f429i-disco/extflash, Kconfig, include/board.h,
|
||
src/stm32f429i-disco-internal.h, up_nsh.c, and up_spi.h: Add a
|
||
configuration and board support for an external SST25 FLASH. From Ken
|
||
Pettit (2013-11-28).
|
||
* 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
|
||
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. (2013-11-28).
|
||
* configs/viewtool-stm32f107: Add board support for the ViewTool
|
||
STM32F103/F107 board with the STM32F107VCT6 installed. Initial
|
||
check-in is the unverified board-support framework only
|
||
(2013-11-30).
|
||
* configs/viewtool-stm32f107/src/stm32_buttons.c and stm32_leds.c:
|
||
Add support for LEDs an buttons on the ViewTools STM32F107 board
|
||
(2013-11-30).
|
||
* fs/nxffs/nxffs_initialize.c: First of probably several changes for
|
||
NAND FLASH. NAND can report read errors because of bad ECC. Logic
|
||
in NXFFS must account for it and not just throw in the towel every
|
||
time a read fails (2013-11-30).
|
||
* 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
|
||
lots of testing to be done (2013-11-30).
|
||
* fs/nxffs/nxffs_dump.c: Do not abort on a read error. Just not
|
||
the error and continue. Otherwise, we would not be able to dump
|
||
NAND FLASH (2013-11-30).
|
||
* fs/nxffs: All read error logic has been revisited and modified in
|
||
most places. If we are using NAND, then read errors probably mean
|
||
that the block that was read contains uncorrectable bit errors. In
|
||
this case, we cannot just give up and abort the operations. Rather,
|
||
we need to treat read error like normal bad blocks in order to work
|
||
with NAND (2013-12-2).
|
||
* fs/nxffs/Kconfig and nxffs_initialize.c: Make the start up scan of
|
||
the media option. It just takes to long! (2013-12-02).
|
||
* drivers/mtd/mtd_nand.c: Fix a typo in calculation of page number
|
||
(2013-12-02).
|
||
* drivers/mtd/README.txt: New README file (2013-12-04).
|
||
* arch/arm/src/lm/lm_start.c: Don't initialize .data if not running
|
||
from FLASH (2013-12-05).
|
||
* fs/fat/fs_configfat.c: Fix a typo in the FAT16 formatting logic.
|
||
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
|
||
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).
|
||
|
||
6.33 2014-01-30 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/include/a1x and src/a1x: Directory structure to support
|
||
the Allwinner A10. Not much there on the initial check-in
|
||
(2013-12-7).
|
||
* configs/pcduino-a10: Directory structure for the pcDuino board. This
|
||
board is based on the Allwinner A10 (2013-12-7).
|
||
* arch/arm/src/a1x/a1x_boot.c and chip/a1x_intc.h: More A10 logic
|
||
(2013-12-8).
|
||
* arch/arm/src/a1x/a1x_irq.c: A10 interrupt handling logic (partial)
|
||
(2013-12-8).
|
||
* drivers/video/ov2640.c: An OV2640 camera driver that will be used to
|
||
verify the SAMA5D3x-EK ISI peripheral (2013-1209).
|
||
* sama5d3x-ek/ov2640 and src/sam_ov2640.c. Board logic to test the SAMA5D3
|
||
ISI peripheral usign the OV2640 camera (2013-12-9).
|
||
* arch/arm/src/a1x/chip/a1x_uart.h: A10 UART register definition
|
||
header file (2013-12-9).
|
||
* include/nuttx/video/fb.h: Move fb.h to include/nuttx/video/
|
||
(2013-12-10).
|
||
* include/nuttx/video/rgbcolors.h: Move rgbcolors.h to include/nuttx/video.
|
||
(2013-12-10).
|
||
* include/nuttx/fs/smart.h: Move smart.h to include/fs/smart.h
|
||
(2013-12-10).
|
||
* include/nuttx/fs/ramdisk.h: Move ramdisk.h to include/fs/ramdisk.h
|
||
(2013-12-10).
|
||
* arch/arm/src/a1x/chip/a1x_pio.h and a10_piocfg.h: PIO register
|
||
definition header files (2013-12-10).
|
||
* arch/arm/src/a1x/a1x_pio.c and .h: Support for PIO configuration
|
||
(2013-12-11).
|
||
* libc/misc/lib_match.c: Pattern matching logic extended to handle
|
||
matches to sets of characters and ranges of character values. From
|
||
Ken Pettit (2013-12-12).
|
||
* fs/procfs, drivers/mtd, fs/smartfs, includes/nuttx/fs, .. to many
|
||
files to list: Extensive changes by Ken Pettit to extend procfs/
|
||
functionality. Includes some incomplete changes related to
|
||
SmartFS (2013-12-12).
|
||
* configs/stm32f429i-disco: Add support for procfs/ MTD part names.
|
||
From Ken Pettit (2013-12-12)
|
||
* arch/arm/src/a1x/chip/a1x_timer.h: Timer register bit definitions
|
||
(incomplete on initial check-in) (2013-12-12).
|
||
* lbc/time/lib_strftime.c: Need null-termination on the string
|
||
generated by strftime(). From Max Holtzberg (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
|
||
usleep() from sched/sleep.c and usleep.c to libc/unistd. These
|
||
functions now just call nanosleep(). (2013-12-13).
|
||
* syscall/ and include/sys/syscall.h: Remove sleep and usleep
|
||
system calls. Add nanosleep system call (2013-12-13).
|
||
* arch/arm/src/a1x/a1x_timerisr.c: Timer interrupt handler for the
|
||
A10 (2013-12-13).
|
||
* arch/arm/src/a1x/a1x_config.h: Header file to keep track of A10
|
||
configuration decisions (2013-12-13).
|
||
* arch/arm/src/a1x/a1x_lowputc.c, a1x_serial.c, and a1x_serila.h:
|
||
Beginning of an A10 serial driver. From Alan Carvalho de Assis
|
||
(2013-12-13).
|
||
* fs/procfs/procfs_utils.c: Move some re-usable functions out of
|
||
fs_procfsproc.c into a utility file (2013-12-14).
|
||
* fs/procfs/fs_procfsuptime.c: Supports /proc/uptime (2013-12-14).
|
||
* graphics/nxconsole/nxcon_font.c: Fix a typo that causes a compile
|
||
error when CONFIG_NXCONSOLE_BPP < 8. From Librae (2013-12-15).
|
||
* fs/procfs/fs_procfsproc.c: procfs now shows information about
|
||
the group that each thread belongs: Like parents, group member,
|
||
open file, and open sockets (2013-12-15).
|
||
* fs/procfs/fs_procfsproc.c: Now shows task stack information
|
||
(2013-12-15).
|
||
* arch/arm/src/armv7-a/cp15.h: Review A9 TRM and updated CP15
|
||
register definitions accordinglyg (2013-12-16).
|
||
* Makefile.unix: Now has supports qconfig and gconfig targets.
|
||
These tools will use the Qt and GTK versions of the kconfig-
|
||
frontends configuration tools (if you built them) (2013-12-16)
|
||
* 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).
|
||
* Kconfig and all Make.defs files: Add CONFIG_DEBUG_NOOPT. Now
|
||
you can independently enable/disable debug symbols and optimization
|
||
(2013-12-20).
|
||
* configs/README.txt and Documentation/NuttxPortingGuide.html:
|
||
Remove documentation of NuttX configuration variables. Since
|
||
converting to the kconfig-frontend tools, the NuttX configuration
|
||
is now documented in the Kconfig files and summarized in the
|
||
autogenerated Documentation/NuttXConfigVariables.html file.
|
||
This old configuration variable documentation is now a liability
|
||
and, hence, was removed (2013-12-20).
|
||
* arch/Kconfig, arch/arm/Kconfig, arch/arm/include/x/chip.h, and
|
||
and arch/arm/src/x/x_irq.c where x={kinetis, lm, lpc17xx, lpc43xx,
|
||
sam34, or stm32}: Beginning of support for nested, high priority
|
||
interrupts. Lots more still needs to be done (2013-12-21).
|
||
* arch/arm/src/armv7-m/up_exception.S and arch/arm/src/x/x_vectors.S:
|
||
where x={kinetis, lm, lpc17xx, lpc43xx, sam34, or stm32}: completes
|
||
the basic implementation of nested, high priority interreupts.
|
||
Still untested and need documentation (2013-12-21).
|
||
* configs/stm3210e-eval/buttons: Converted to use kconfig-frontends
|
||
tools (untested) (2013-12-22).
|
||
* configs/Kconfig, configs/viewtool-stm32f107/include/board-stm32f103vct6.h,
|
||
and /board-stm32f107vct6.h: The viewtool board can now be configured
|
||
to support either the STM32F103VCT6 or the STM32F107VCT6 (2013-12-22).
|
||
* configs/Kconfig, README.txt, viewtool-stm32f107/highpri, Kconfig,
|
||
README.txt, and src/stm32_highpri.c: This is the initial framework
|
||
for a test of the high priority, nested interrupt logic. Still
|
||
incomplete and does not yet run (2013-12-22).
|
||
* arch/arm/src/armv7-m/ram_vectors.h and up_ramvec_initialize.c:
|
||
Correct alignment of the RAM vector table (2013-12-22).
|
||
* Kconfig: Support configuration of interrupt controller debug output
|
||
(2013-12-22).
|
||
* configs/viewtool-stm32f107/scripts: Need to do some special things
|
||
in linking of the common vectors are used (2013-12-22).
|
||
* arch/arm/include/*/irq*.h: Add definition NR_VECTORS so that the RAM
|
||
vector logic can know how many vectors there are. NR_IRQS is often
|
||
not equal to NR_VECTORS (2013-12-23).
|
||
* arch/arm/src/*_vectors.S: Standardize the name of the vector table
|
||
and the name of the common vector handling logic so that the MCU-
|
||
independent logic and work with these (2013-12-23).
|
||
* configs/viewtool-stm32f107/scripts: Move the RAM vector tables to the
|
||
beginning of SRAM. It seems to require this alignment. Also, we
|
||
don't need different scripts for the CMNVECTOR case now that the vector
|
||
table has a common name.
|
||
* arch/arm/src: armv-7/up_exception.S and xxx/xxx_vectors.S where
|
||
xxx={kinetis, lm, lpc17xx, sam34, and stm32}: Modified register usage
|
||
when saving the context on the stack: In order to handler nested
|
||
interrupts, the stack pointer must be used so that when it is
|
||
decremented, the contents on the stack are protected from the nested
|
||
interrupt handling (2013-12-23).
|
||
* arch/Kconfig: The CONFIG_ARCH_INT_DISABLEALL feature is disabled (i.e.,
|
||
depends on EXPERIMENTAL). That is because the current implementation
|
||
will not work because interrupts get disabled in the interrupt handler
|
||
too, defeating the nesting of interrupts. The fix is easy: It just
|
||
needs more levels of priority of disabling interrupts vs interrupt
|
||
handling (2013-12-23).
|
||
* configs/viewtool-stm32f107/src/stm32_highpri.c: Improved debug output
|
||
(2013-12-23).
|
||
* drivers/lcd/memlcd.c and include/nuttx/lcd/memlcd.h: Support for the
|
||
Sharp Memory LCD from Librae (2013-12-23).
|
||
* configs/maple/nx and src/: Add support for a custom Sharp Memory
|
||
LCD on the Maple board. From Librae (2013-12-23).
|
||
* configs/viewtool-stm32f107/netnsh: Add a NSH configuration that
|
||
supports networking with the DP83848C module installed (2013-12-25).
|
||
* configs/viewtool-stm32f107/src/stm32_nsh.c, stm32_mmcsd.c, stm32_usb.c,
|
||
and stm32_usbmsc.c: Lay out basic framework for USB and SD card
|
||
support. Code is incomplete and has been neither built nor tested
|
||
(2013-12-25).
|
||
* nuttx/arch/arm/src/stm32/Kconfig, chip/stm32f103vc_pinmap.h,
|
||
stm32f105vb_pinmap.h, and stm32f107vc_pinmap.h: Fix configuration and
|
||
pin definition that would prevent building USB for the connectivity and
|
||
performance lines (2013-12-25).
|
||
* stm32l15xxx_pinmap.h: Fix a typo in USB pin definitions (2013-12-25).
|
||
* configs/viewtool-stm32f107: Fix building of USB for F103 and F107.
|
||
F103 has device only; F107 has OTG FS (2013-12-25).
|
||
* arch/arm/src/stm32/stm32f10xxx_rcc.c and chip/stm32f10xxx_rcc.h: Add
|
||
clocking support for STM32F107 USB OTG FS (which does not work)
|
||
(2013-12-26).
|
||
* configs/viewtool-stm32f107: Updates to USB for F103 and USB OTG FS
|
||
for F107 (2013-12-16).
|
||
* arch/arm/src/stm32/chip/stm32f3xxxx_pinmap.h: Fix pin definition names
|
||
for SPI2 MOSI and MISO. Noted by Brian Webb (2013-12-27).
|
||
* graphics/nxmu, nxsu, and nxglib and libc/nx, nxmu, and nxglib: Massive
|
||
reshuffling of files with (hopefully) no logic changes. This
|
||
reshuffling is necessary if we ever want to build graphics applications
|
||
as kernel builds. There is still more today (NXTK and NXFONTS need to
|
||
be moved to libc as well) (2013-12-27).
|
||
* Move libc/nx, nxmu, and nxglib to a new library, libnx. The NX
|
||
graphics is not properly a part of libc (2013-12-28).
|
||
* Move graphics/nxfonts to libnx/nxfonts (2013-12-28).
|
||
* Move graphics/nxtk to libnx/nxtk (2013-12-28).
|
||
* syscalls: Need to add sem_timedwait() (2013-12-28)
|
||
* Move more files from graphics/nxmu to libnx/nxmu (2013-12-29).
|
||
* graphics/nxmu/nx_start.c: NX server start-up wrapper function to
|
||
simplify starting the NX server from within the RTOS (2013-12-29).
|
||
* configs/stm3240g-eval/kernel and configs/stm3240g-eval/scripts: Port
|
||
kernel build logic from the STM32F4Discovery to the STM3240G-EVAL.
|
||
This will eventually support testing of the kernel mode NX server
|
||
(2013-12-29).
|
||
* configs/stm3240g-eval/nxwm: Converted to use the kconfig-frontend
|
||
tools (2013-12-29).
|
||
* configs/stm3240g-eval/knxwm: Add a kernel mode NxWM build
|
||
configuration (not yet verified) (2013-12-29).
|
||
* Moved configs/stm3240g-eval/src/up_cxxinitialize.c to
|
||
apps/platform/stm3240g-eval/up_cxxinitialize.c: Now it is available
|
||
in user-space in the kernel mode build (2013-12-29).
|
||
* graphics/nxbe, nxsu, libnx/nxmu, and nxtk: Need to be consistent with
|
||
which allocator is used in the different configurations. Always uses
|
||
the user-space allocator because that one is required in certain
|
||
configurations (2013-12-30).
|
||
* include/nuttx/kthread.h: Move kernel thread definitions out of
|
||
os_internal.h so that the rest of the OS can start kernel threads as
|
||
well (2013-12-30).
|
||
* configs/sim/mount/defconfig: Converted to use kconfig-frontends
|
||
tools (2013-21-31).
|
||
* configs/z16f2800100zcog/nsh: Add a Z16F NSH configuration. Does not
|
||
yet work (2014-1-1).
|
||
* arch/arm/src/stm32/stm32_serial.c: Single-wire UART support from
|
||
Thomas Grubler (2014-1-2).
|
||
* tools/configure.c and mkdeps.c: Fixes for Windows build issues
|
||
from Max Holtzberg (2014-1-4).
|
||
* configs/olimex-stm32-p107/nsh/Make.defs: Add native Windows build
|
||
support for the Olimex STM32 P107. From Max Holtzberg (2014-1-4).
|
||
* Makefile.win: 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
|
||
(2014-1-4).
|
||
* configs/viewtool-stm32f107/src/stm32_ssd1289.c: Add support for
|
||
Viewtool SSD1289-based LCD (untested on initial checkin) (2013-1-5).
|
||
* arch/arm/include/syscall.h and armv7-a/syscall.h: Add the syscall.h
|
||
header file needed for the Cortex-A architecture (2014-1-5).
|
||
* arch/arm/src/a1x/a1x_serial.c: Remove bad flow control logic. Add
|
||
missing interrupt handling logic for UART4-7 (2014-1-6).
|
||
* nuttx/tools/mkconfig.c: Cast size to unsigned in calculation of
|
||
CONFIG_RAM_END to avoid complains about integer overflow (2013-1-6).
|
||
* nuttx/tools/mkconfig.c: Back out the last change, this causes
|
||
problems for assembly language. How to prevent the integer over-
|
||
flow warnings? (2014-1-6).
|
||
* arch/arm/src/a1x/a1x_serial.c: Handle BUSY interrupt (2014-1-6).
|
||
* arch/arm/src/armv7-a/arm_head.S and arm_pghead.S: Add more nop's
|
||
after enabling the MMU. The cortex-a8 seems to need these
|
||
(2014-1-7).
|
||
* arch/arm/src/a1x/a1x_serial.c: Correct handling of the BUSY
|
||
interrupt (2014-1-7).
|
||
* include/sys/types.h: Add a bogus rsize_t type (2014-1-7).
|
||
* libc/stdio/lib_gets_s.c: Add a quick'n'dirty implementation of
|
||
gets_s() which replaces gets() in C11 (2014-1-7).
|
||
* libc/stdio/lib_fopen.c: Add support for new C11 exclusive open
|
||
("x") (2014-1-7)
|
||
* include/threads.h: First crude cut at a C11 threads.h header
|
||
file (just maps to pthreads) (2014-1-7).
|
||
* libc/stdio/lib_libfgets.c: Common implementation supports all
|
||
of the slightly different requirements of gets(), gets_s(), and
|
||
fgets() (2014-1-7).
|
||
* arch/arm/include/stm32/chip.h and chip/stm32f103ze_pinmap.h:
|
||
various fixes for STM32F103ZE SPI3. From Steve Redler IV
|
||
(2014-1-7).
|
||
* graphics/nxsu/Make.defs: Typo that crept into build in recent
|
||
NX reorganization. Found by Steve Redler IV (2014-1-7).
|
||
* graphics/nxsu/: Another typo from the
|
||
recent NX reorganization from Steve Redler IV (2014-1-7).
|
||
* graphics/nxbe/nxbe_closewindow.c, nx_close.c, nx_constructwindow.c,
|
||
nx_open.c, and nx_openwindow.c: Needs to use kuzalloc and kufree,
|
||
not umm_zalloc and umm_free. Additional typo in nx_constructwindow.c
|
||
(wnd should be hwnd). Also noted by Steve Redler IV (2014-1-7).
|
||
* configs/viewtool-stm32f107/src/stm32_touchscreen.c (and other
|
||
files): Add support for the XPT2046 touchscreen controller on
|
||
the Viewtool LCD module connected to the Viewtool STM32F103
|
||
board (2014-1-9).
|
||
* libc/strings/lib_stpcpy.c: Add stpcpy() (2014-1-9).
|
||
* arch/arm/src/a1x/a1x_lowputc.c and a1x_serial.c: Mystery
|
||
finally solved: The A10 serial clock is the OSC24M clock.
|
||
Thanks to Alan Carvalho de Assis (2014-1-10)
|
||
* binfmt/binfmt_loadmodule.c: Fix a memory leak (2013-1-11).
|
||
* configs/stm3vldiscovery: Support for the STM32VL-Discovery board.
|
||
Contributed by Alan Carvalho de Assis (2014-1-12).
|
||
* net/net_close.c, net/Kconfig, include/nuttx/net/net.h, and
|
||
include/sys/socket.h: Add support for the SO_LINGER socket option.
|
||
Extended from logic provided by Jason Jiang. Enabled with
|
||
CONFIG_NET_SOLINGER. At this point, it has only been verified that
|
||
the changes does not seem to do any harm (2014-1-13).
|
||
* net/connect.c and net/uip/uip_callback.c: prevent tcp_connect
|
||
callback from being double freed. From Max Holtzberg (2014-1-13).
|
||
* net/Kconfig and include/nuttx/net/uip/uipopt.h: Add configuration
|
||
support for forthcoming TCP write buffering (2014-1-13).
|
||
* net/net_send_buffered.c, net_send_unbuffered.c, and
|
||
uip/uip_tcpwrbuffer.c: First set of changes to bring in Jason
|
||
Jiang's TCP write buffering logic. Still not complete but
|
||
apparently harmless if not selected. (2014-1-13).
|
||
* All of Jason Jiang's TCP write buffering logic is checked in.
|
||
Unfortunately, it does not yet work (2013-1-14).
|
||
* configs/px4fmu-v2_upstream: Configuration for testing simple
|
||
configurations on the PX4FMU v2. This version is incomplete
|
||
for the PX4 application and is not a replacement for the version
|
||
in the PX4 GIT repository.
|
||
* fs/fat/fs_fat32.c: A correction to FAT cluster allocation from
|
||
Tridge via Lorenz Meier (2014-1-14).
|
||
* net/net_clone.c: If CONFIG_NET_TCP_WRITE_BUFFERS is selected,
|
||
then the socket-related write buffering information must copied
|
||
with the other cloned socket data (2014-1-14).
|
||
* net/net_close.c: If CONFIG_NET_TCP_WRITE_BUFFERS is selected,
|
||
then it is necessary to free the write buffer callback structure
|
||
when the socket is closed (2014-1-14).
|
||
* fs/fat/fs_fat32.c: Fix some root directory logic that was
|
||
conditionally done only for FAT 32. Apparently this needs to
|
||
done for all FAT types. From Tridge via Lorenz Meier
|
||
(2014-1-14).
|
||
* arch/arm/src/armv6-m/up_doirq.c and armv7-m/up_doirq.c and all
|
||
implementations of up_maskack_irq() for all Cortex-M architectures: Do
|
||
not disable and enable the IRQ on each interrupt. Because (1)
|
||
interrupts are already disabled on interrupt 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 (2014-1-15).
|
||
* 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 registet 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 spurious STM32 ADC interrupts have been
|
||
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
|
||
unmasked bugs that leave devices in the disabled state? Thanks to
|
||
Manuel St<53>hn for the tip(2014-1-15).
|
||
* libc: Move strtol(), strtoll, strtoul(), strtoull(), and strtod() from
|
||
libc/string to libc/stdlib where they belong (2014-1-16).
|
||
* configs/Kconfig: Board configuration sub-directory can now be
|
||
specified. The default need not be used. This is really only
|
||
useful when CONFIG_ARCH_BOARD_CUSTOM is selected and there is no
|
||
meaningful default sub-directory (2014-1-16).
|
||
* configs/Kconfig: Backed out the previous change for two reasons:
|
||
(1) it has a bad side effect in that the sub-directory setting
|
||
no longer tracks the board setting, and (2) you still can't
|
||
source the Kconfig file from the custom board directory (2014-1-16).
|
||
* Makefile.unix, Makefile.win, and configs/Kconfig: After thinking a
|
||
little harder, I re-implemented the backed-out custom configuration
|
||
feature. The new version does not have bad side-effect (1) (but still
|
||
has bad side-effect (2)) (2014-1-16).
|
||
* arch/x86/Kconfig and configs/qemu-i486/nsh/Make.defs and
|
||
ostest/Make.defs: Add a configuration option to select the -m32
|
||
compiler option when building for a 32-bit target on a native 64-bit
|
||
compiler (2014-1-18).
|
||
* 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
|
||
getopt() will leave the optind variable in an undefined state (2014-1-20).
|
||
* configs/olimex-stm32-p107: Fails to build if SPI3 for UEXT is not
|
||
remapped. From Max Holtzberg (2014-1-21).
|
||
* Several network related files: Changes from Max Holtzberg to improve
|
||
how network status is reported. New controls to manage carrier
|
||
detect. (2014-1-21).
|
||
* configs/16z: Add basic support for the 16z board. The 16z board is
|
||
based on the ZiLOG ZNEOZ16F2811AL20EG part. See
|
||
https://github.com/toyaga/16z for further information (2014-1-22),
|
||
* tools/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 (2014-1-23).
|
||
* /arch/arm/src/Makefile: dependency directory list is now computed
|
||
from the VPATH. From Richard Cochran (2014-1-23).
|
||
* arch/arm/src/efm32 and include/efm32: Basic support for the EFM3
|
||
processor family from Richard Cochran (2014-1-23).
|
||
* configs/efm32-dk3650: This is Energy Micro's development kit for
|
||
the Leopard Gecko MCU, which is an ARM Cortex-M3 device. From Richard
|
||
Cochran (2014-1-23).
|
||
* arch/arm/src/armv7-m/up_memcpy.S: 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 (2014-1-23).
|
||
* Many files: renamed up_buttoninit() to board_button_initialize to
|
||
better conform to the naming standard. Now ONLY prototypes in
|
||
include/nuttx/arch.h (2014-1024).
|
||
* Rename up_buttons() to board_buttons() for the same reason (2014-
|
||
1-14).
|
||
* Rename up_irqbutton() to board_button_irq() (2014-1-24).
|
||
* Rename up_ledinit() to board_led_intialize() (2014-1-24).
|
||
* Rename up_ledon() to board_led_on() and up_ledoff() to board_led_off()
|
||
(2014-1-24).
|
||
* arch/x86/src/qemu-i486/gemu_head.S: Patch from Matt Campbell
|
||
to fix 'Error: .size expression for idle_stack does not evaluate to
|
||
a constant" (2014-1-25).
|
||
* arch/arm/include/efm32, arch/arm/src/efm32, and configs/efm32-dk360:
|
||
Removed all EFM32 support. Not yet ready to be fielded (2014-1-27).
|
||
* arch/arm/src/armv7-a/arm_head.S, sama5/sam_boot.c, and several other
|
||
files: Now supports execution from NOR FLASH with .data and .bss in
|
||
SDRAM. This was not possible prior to this because .bss and .data
|
||
were initialized before SDRAM was configured. This logic is still
|
||
kind buggy. (2014-1-28).
|
||
* arch/arm/src/armv7-a/arm_head.S and arm_pghead.S: Back off to a
|
||
somewhat less efficient loop for initializing .data and .bss. The
|
||
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
|
||
bugginess reported on 2014-1-28. (2014-1-29).
|
||
|
||
7.1 2014-03-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/lm/lm_serial.c: Fix cut'n'paste error that prevented
|
||
UARTS2-7 from being used with the LM4F120 Launchpad (2014-02-03).
|
||
* configs/stm32f4discovery/src: Almost everything renamed to conform
|
||
to the ever-evolving naming standard (2014-02-03).
|
||
* arch/arm/src/a1x/a1x_serial.c: Had the same cut'n'paste error
|
||
that the LM4f120 Launchpad had (2013-02-03).
|
||
* Documentation/NuttXCCodingStandard.html: Add a coding standards
|
||
document. Very boring stuff (2014-2-6).
|
||
* Several changes to restore the native Windows build (2014-2-7).
|
||
* arch/arm/src/lpc17xx/lpc17_usbhost.c: Fix an compilation error
|
||
that crept into the LPC17xx USB host driver. What happened here?
|
||
(2014-2-9).
|
||
* drivers/usbhost/usbhost_hidmouse.c and other files: Add support
|
||
for a HID boot mouse device. It compiles but is otherwise
|
||
completely untested on initial check-in (2014-2-9).
|
||
* configs/olimex-lpc1766stk/src/lpc17_hidmouse.c and hidmouse: Add
|
||
support of a test of the USB HID mouse (2014-2-9).
|
||
* drivers/usbhost/usbhost_hidmouse.c: The driver appears to be
|
||
functional. But there are usability issues: How do you use the
|
||
mouse with no cursor? The HID mouse currently emulates a touchscreen
|
||
driver. That would work in the long run for several reasons (see the
|
||
top-level TODO list for details) (2014-2-9).
|
||
* include/nuttx/input/mouse.h and drivers/usbhost/usbhost_hidmouse.c:
|
||
Defined a mouse interface that is very similar to a touchscreen
|
||
interface, but allows reporting of all mouse buttons. Also, unlike
|
||
touchscreen drivers, mouse drivers need to report positional data
|
||
with no button is pressed so that the mouse position can drive a
|
||
cursor (2014-2-10).
|
||
* drivers/usbhost/usbhost_hidmouse.c, include/nuttx/input/mouse.h, and
|
||
include/nuttx/usb/hid.h: Add support for a mouse wheel (2014-2-10).
|
||
* drivers/lcd/mio283qt9a.c and include/nuttx/lcd/mio283qt9a.h: Support
|
||
for the MIO283QT9A LCD. From Toby Duckworth (2014-2-10).
|
||
* configs/mikroe-stm32f4/src/up_mio283qt9a.c: The Mikroe STM32F4 can
|
||
now support the newer MIO283QT9A LCD. From Toby Duckworth (2014-2-10).
|
||
* MANY files changes based on complaints from the tool CppCheck. Several
|
||
latent bugs were fixed (and most likely some new typos were introduced)
|
||
(2014-2-10).
|
||
* arch/arm/include/samd and src/samd: Basic framework to support Atmel
|
||
SAMD20 Cortex-M0+ chips. Initial check-in is incomplete; this is a
|
||
work in progress (2014-2-12).
|
||
* configs/samd20-xplained: Framework to support the Amtel SAMD20
|
||
Xplained Pro. Initial check is just an unverified, rough port of
|
||
the SAM4L Xplained Pro configuration (2014-2-12).
|
||
* arch/arm/src/stm32/stm32_serial.c: Fix cloned typo: FLOWCONTROL
|
||
vs FLOWCONROL (2014-2-14).
|
||
* net/uip/uip_tcptimer.c: Back out a small part of the 6.33 write
|
||
buffering changed. David G says that this causes problems in
|
||
connecting to a server (2014-2-15).
|
||
* The basic SAMD20 Xplained Pro port is complete but still untested
|
||
(2014-2-16).
|
||
* sched/task_terminate.c: Always returns an error because the
|
||
return value was not being set correctly. From Gosha (2014-2-18).
|
||
* stm32f429i-disco/ostest-fpu: OS test for FPU-enabled system from
|
||
David Alessio (2014-2-18).
|
||
* Other misc changes to support FPU on STM32F429 Discovery from
|
||
David Alessio (2014-2-18)
|
||
* stm32f429i-disco/src: Files renamed to make more consistent
|
||
with current board file naming conventions (2014-2-18).
|
||
* stm32 SPI: Disable SPI before changing CR1 register. From David
|
||
Sidrane (2014-2-18).
|
||
* stm32 TIM: Set CCMR when selecting timer channel. From David
|
||
Sidrane (2014-2-18).
|
||
* configs/spark: Board configuration updated by David Sidrane
|
||
(2014-2-19).
|
||
* libc/stdio/lib_sscanf.c: Bug fixes from David Sidrane (2014-2-18).
|
||
* nuttx/drivers/wireless/cc3000 and nuttx/include/nuttx/wireless/cc3000:
|
||
Numerous updates to the CC3000 driver from David Sidrane (2014-2-18).
|
||
* nuttx/configs/stm3240g-eval/webserver: Converted to use the
|
||
kconfig-frontends tools by Alan Carvalho de Assis (2014-2-18).
|
||
* configs/mbed: All mbed configurations have been converted to use
|
||
the kconfig-frontends tools (unverified) (2014-2-18).
|
||
* fs/fs_opendir.c, fs_readdir.c, et al: Modified so that errors
|
||
will not be reported if you attempt to list a empty pseudo-directory
|
||
(2014-2-19).
|
||
* fs/fs_rmdir.c: 'rmdir' can now be used to remove empty directories in
|
||
the pseudo-filesystem such as might be left after umounting a
|
||
file system (2014-2-19).
|
||
* fs/fs_mkdir.c: 'mkdir' can now be used to create empty directories in
|
||
the pseudo-filesystem (2014-2-19).
|
||
* drivers/lcd/mio283qt9a.c: Bug fix from Toby Duckwork (2014-2-19).
|
||
* fs/fs_rename.c: 'rename' can now be used to rename nodes in the
|
||
pseudo-filesystem (2014-2-19).
|
||
* arch/arm/src/samd/sam_sercom.c: Move some common SERCOM logic
|
||
from the USART-specific files to a share-able file where it can
|
||
also be used by SPI and I2C drivers (2014-2-19).
|
||
* arch/arm/src/samd/sam_spi.c: Add framework for a SAMD SPI driver.
|
||
The initial check-in is a crude port of the SAMA5 SPI driver with
|
||
a lot of missing logic (2014-2-19).
|
||
* arch/arm/src/lm/lm_lowputc.c and lm_serial.c: Several errors
|
||
are unmasked with UARTs > UART2 are enabled. From Gosha (2014-2-19).
|
||
* arch/arm/src/samd/sam_spi.c: The SPI driver is code complete,
|
||
but untested (2014-2-20).
|
||
* configs/olimex-lpc1766stck/ftpc: Configuration convert to use
|
||
the kconfig-frontends tools by Alan Carvalho de Assis (2014-2-20).
|
||
* fs/fs_mkdir.c: 'unlink' can now be used to remove things from the
|
||
pseudo-filesystem. A new configuration option as been added:
|
||
CONFIG_DISABLE_PSEUDOFS_OPERATIONS that effectively can be set
|
||
back out these recent changes in rmdir, mkdir, unlink, and rename
|
||
for operations on the pseudo-filesystem (2014-2-20).
|
||
* Kconfig: Add an option to select default values for configuration
|
||
variables based upon whether you want a smaller footprint or more
|
||
features. CONFIG_DEFAULT_SMALL is used in sched/Kconfig and
|
||
fs/Kconfig and in apps/. It turns out this this is not very useful
|
||
if you are modifying existing configurations because then the
|
||
defaults do not apply (2014-2-20).
|
||
* arch/arm/src/sam34/chip/sam4e_vectors.h: Add vector definitions
|
||
for the SAM4E (2014-2-21).
|
||
* arch/arm/src/sam34/chip/sam4e_memorymap.h: Add SAM4E memory map
|
||
(2014-2-21).
|
||
* arch/arm/src/sam34/sam4e_gpio.h, sam4e_periphclks.h, and chip/sam4e_pio.h:
|
||
Add PIO support for the SAM4E (2014-2-21).
|
||
* configs/stm3220g-eval/nsh/defconfig: Converted to use kconfig-frontends
|
||
by Alan Carvalho de Assis (2014-2-10)
|
||
* configs/*/defconfig: Comment out all CONFIG_APPS_DIR settings. These
|
||
should not be set in the default configurations because we don't know
|
||
where the apps/ directly will reside until configuration time (2014-2-21).
|
||
* arch/arm/src/sam34/chip/sam4e_pinmap.h: SAM4E pin multiplexing
|
||
definitions (2014-2-21).
|
||
* sched/sched_processtimer.c and fs/procfs/fs_procfscpuload.c: Add
|
||
logic to measure and calculate the CPU load percentage. From David
|
||
Alessio (2014-2-22).
|
||
* sched/sched_processtimer.c, sched_cpuload.c, fs/procfs/fs_procfscpuload.c,
|
||
and fs_procfscpuload.c: CPU load logic extended to keep counts on each
|
||
thread. The per-thread CPU is now reported in the procfs under
|
||
<pid>/loadavg (2014-2-23).
|
||
* include/stddef.h: ptrdiff_t is defined twice in stddef.h and also in
|
||
sys/types.h. stdef.h is the correct location for the definition, but
|
||
it includes sys/types.h so, at least for now, the definition will be
|
||
retained in sys/types.h (2014-2-25).
|
||
* net/net_close.c: Fix one place where the connection reference count
|
||
was not being decremented. This is really a cosmetic change BUT
|
||
when CONFIG_DEBUG_NET is enable, it will cause assertions (2014-2-25).
|
||
* arch/arm/src/sama5/sam_adc.h: Fix typos in the SAMA5 ADC register
|
||
definition header file (2014-2-26).
|
||
* arch/arm/src/sam34: The port to the SAM4E is code complete (2014-2-16).
|
||
* include/cxx: Fix some bad idempotence definitions in header files
|
||
(2014-2-27).
|
||
* sched/sched_cpuload.c: Change calculation of the total count when the
|
||
time constant related delay elapsed. The total count is now always
|
||
guaranteed to add up to 100% (excepting only truncation errors)
|
||
(2014-2-27).
|
||
* fs/procfs/fs_procfscpuload.c and fs_procfsproc.c: Remove the newline
|
||
at the end of the percentage so that the returned strings can be
|
||
printed on the same line as other values (2014-2-27).
|
||
* sched/Kconfig, sched_cpuload.c, and nuttx/sched/sched_processtimer.c:
|
||
An asynchronous, "external" clock may now be used to drive the CPU
|
||
load calculations for more accurate load measurements when needed
|
||
(2014-2-27).
|
||
* configs/*/defconfig: If CONFIG_NSH_LIBRARY=y then set CONFIG_NSH_READLINE=y
|
||
otherwise the CLE will be selected by default the next time that
|
||
make menuconfig is used (2014-2-28).
|
||
* include/cxx/cstdbool: Ignore _Bool8 if CONFIG_C99_BOOL8=y. (2014-2-28).
|
||
* configs/*/defconfig: Set CONFIG_DEFAULT_SMALL on all tiny MCU
|
||
configurations (2014-2-28).
|
||
* configs/stm3240g-eval/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-2-28).
|
||
* configs/*/ostest: Removed most OS test configurations (except in a few
|
||
cases where there wass some good argument to retain the ostest
|
||
configuration) (2014-2-28).
|
||
* configs/stm3240g-eval/nsh2: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/stm3220g-eval/nsh2: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/stm3210e-eval/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/stm3210e-eval/nsh2: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/lincoln60/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/lpcxpresso-lpc1768/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/nucleus2g/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/vsn/nsh: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-1).
|
||
* configs/mirtoo/nsh: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-1).
|
||
* configs/pic32-starterkit/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/pic32-starterkit/nsh2: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1)
|
||
* configs/pic32mx7mmb/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/ubw32/nsh: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-1).
|
||
* configs/sim/nsh2: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-1).
|
||
* configs/lm3s6432-s2e/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1)
|
||
* configs/lm3s8962-ek/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/eagle100/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/stm32f4discovery/src/Makefile: Fix typo: stm32_pwm.c not
|
||
stm32_psm.c. Noted by Max Kriegleder (2014-3-1).
|
||
* configs/lpc4330-xplorer/nsh Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/ea3152/ostest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-1).
|
||
* configs/stm3210e-eval/RIDE, nxlines, and nxtext: Remove some old
|
||
style configurations that are not worth converting to use the
|
||
kconfig-frontends tools (2014-3-2).
|
||
* configs/stm3210e-eval/nx: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-2).
|
||
* configs/mirtoo/nxffs: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-2).
|
||
* arch/arm/src/lpc2378/Kconfig: Create Kconfig file for the LPC2378.
|
||
Change most configuration variable names to avoid collisions with
|
||
other platforms (2014-3-2)
|
||
* configs/olimex-lpc2378/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-2)
|
||
* configs/olimex-lpc1766stk/nx: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-2)
|
||
* configs/lpcxpresso-lpc1768/nx: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-2)
|
||
* configs/lm3s8962-ek/nx: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-2)
|
||
* configs/sim/nx: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-2)
|
||
* configs/c5471evm/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/olimex-strp11/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/eagle100/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/ez80f910200zco/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/stm3220g-eval/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/stm3240g-eval/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/sim/nettest: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-3).
|
||
* configs/ez80f910200zco/dhcpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/stm3220g-eval/dhcpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/stm3240g-eval/dhcpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3).
|
||
* configs/lpcxpresso-lpc1768/dhcpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/olimex-lpc1766stk/usbmsc: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/nucleus2g/usbmsc: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/lpcxpresso-lpc1768/usbmsc: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/stm3210e-eval/usbmsc: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/hymini-stm32v/usbmsc: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/ea3131/usbmsc: Configuration removed. It could not possible
|
||
useful because there is no MCI driver for the EA3131 (2014-3-3)
|
||
* configs/mcu123-lpc214x/usbmsc: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-3)
|
||
* configs/teensy/nettest: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-3).
|
||
* configs/*/dhcpd: Add missing DHCPD configuration settings (2014-3-3).
|
||
* configs/stm32f4discovery/pm: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/stm3210e-eval/pm: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/stm3240g-eval/nxconsole: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/stm3210e-eval/nxconsole: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/stm3240g-eval/telnetd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/stm3220g-eval/telnetd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* fs/fat/fs_fat32.c: Fix an error in the FAT logic that can cause file
|
||
corruption. The error conditions are rare and only seen with very
|
||
large files. From Andrew Tridgell. This replaces a previous, partial
|
||
fix for the same problem (2014-3-4).
|
||
* configs/hymini-stm32v/usbserial: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/ea3131/usbserial: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/mcu123-lpc214x/usbserial: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/olimex-lpc1766stk/thttpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/lpcxpresso-lpc1768/thttpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/eagle100/thttpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/eagle100/httpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/ez80f910200zco/httpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/c5471evm/httpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/eagle100/nxflat: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/sim/touchscreen: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/sim/pashello: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/sim/nx11: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/ez80f910200zco/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/ez80f910200zco/poll: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/olimex-lpc1766stk/slip-httpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-4)
|
||
* configs/c5471evm/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/compal_e99/nsh_compalram: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/compal_e99/nsh_highram: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/mcu123-lpc214x/composite: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/olimex-strp711/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/amber/hello: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/micropendous3/hello: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/teensy/hello: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/teensy/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* arch/avr/Kconfig, avr32/Kconfig, at32uc3/Kconfig, atmega/Kconfig, and
|
||
at90usb/Kconfig: Reshuffle lots of AVR-related configuration names to
|
||
make space for AVR32. Populate AVR32 Kconfig file (2014-3-5).
|
||
* configs/avr32dev1/ostest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/avr32dev1/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/ntosd-dm320/nettest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/ntosd-dm320/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/ntosd-dm320/poll: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/ntosd-dm320/thttpd: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/ntosd-dm320/udp: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/ntosd-dm320/uip: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* arch/Kconfig, arch/arm/Kconfig, configs/ea3131/Kconfig,
|
||
configs/ea3131/pgnsh/defconfig, configs/ea3131/src/up_fillpage.c,
|
||
configs/ea3152/Kconfig, nuttx/configs/ea3152/src/up_fillpage.c,
|
||
include/nuttx/page.h, and tools/cfgdefine.c: Add configuration
|
||
settings for the on-demand paging option (2014-3-5).
|
||
* configs/ea3131/pgnsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/qemu-i486/ostest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* configs/qemu-i486/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-5)
|
||
* Many files: Use common naming for all buildroot toolchains
|
||
(2014-3-5).
|
||
* Many files: Use common naming for rest of the toolchains (2014-3-5).
|
||
* configs/ne64badge/ostest and demo9s12nec64/ostest: Configurations
|
||
converted to use the kconfig-frontends tools (2014-3-5)
|
||
* fs/nxffs/nxffs_open.c: Missing call to nxffs_freeentry() causes
|
||
memory leak. From Lzyy (2014-3-6).
|
||
* fs/nxffs/nxffs_stat.c: Looks like stat() has the same problem as
|
||
the one reported by Lzyy (2014-3-6).
|
||
* configs/skp16c26/ostest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/us7032evb1/ostest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/us7032evb1/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/mx1ads/ostest: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/pjrc-8051: Configuration converted to use the kconfig-frontends
|
||
tools (2014-3-6)
|
||
* configs/rgmp/arm/default: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/rgmp/arm/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/rgmp/x86/default: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/rgmp/x86/nsh: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/rgmp/x86/helloxx: Configuration converted to use the
|
||
kconfig-frontends tools (2014-3-6)
|
||
* configs/rgmp/x86/cxxtest: Configuration converted to use the
|
||
kconfig-frontends tools. This completes the conversion of all
|
||
configurations to the newer format (2014-3-6)
|
||
* Removed the CONFIG_NUTTX_NEWCONFIG setting from every defconfig
|
||
file (2014-3-6).
|
||
* The legacy, manual configuration is no longer supported by the
|
||
NuttX build system. Only the newer configurations generated by
|
||
the kconfig-frontends tools will generate viable NuttX
|
||
configurations. All board configurations in the NuttX source tree
|
||
have been converted to use the newer configuration, but if you have
|
||
some older style configurations for you board, you will need to
|
||
convert those configurations to use the kconfig-frontends tools.
|
||
See http://www.nuttx.org/doku.php?id=wiki:howtos:convertconfig for
|
||
some guidelines (2014-3-6).
|
||
* drivers/serial/Kconfig: Correct an error introduced in this file
|
||
in very recent commits (2013-3-6).
|
||
* configs/*sam*: Refresh all SAM* configurations with the latest
|
||
Kconfig files (2014-3-6).
|
||
* configs/stm32f4discovery: Refresh all configurations (except
|
||
winbuild) with the latest Kconfig files (2014-3-6).
|
||
* configs/viewtool-stm32f107: Refresh all configurations with the
|
||
latest Kconfig files (2014-3-6).
|
||
* configs/16z, mikroe-stm32f4, olimex-lpc1766stk, px4fmu-v2_upstream,
|
||
sim, and stm32f429i-disco: Refresh all configurations (2014-3-6).
|
||
* Documentation/NuttShell.html: Update per recommendations from Max
|
||
Kriegleder (2014-3-6).
|
||
* configs/pic32-starterkit, pic32mx7mmb, stm3210e-eval, stm3220g-eval,
|
||
and stm3240g-eval: Refresh all configurations with the latest
|
||
Kconfig files (2014-3-7).
|
||
* configs/qemu-i486/src: Files renamed to correspond with current
|
||
thinking about naming (2014-3-8).
|
||
* arch/x86/src/qemu/qemu_keypad.c and qemu_vga.c: New QEMU keyboard
|
||
and VGA drivers from Lizhuoyi (2014-3-8).
|
||
* configs/olimex-lpc2378/src: Files renamed to correspond with current
|
||
thinking about naming (2014-3-8).
|
||
* arch/arm/src/lpc2378/lpc23xx_i2c.c and lpc23xx_spi.c: I2C and SPI
|
||
drivers for the LPC23xx from Lizhuoyi (2014-3-8).
|
||
* arch/arm/include/tiva and src/tiva: The old lm/ directories were
|
||
renamed tiva/ to better support new products coming down the pipe
|
||
from TI (2014-3-8).
|
||
* arch/arm/include/tiva, src/tiva, and configs/: All files and all
|
||
all functions beginning with the name lm_ changed to tiva_
|
||
(2014-3-8).
|
||
* configs/: Refresh all LM3/4/Tiva configurations (2014-3-9).
|
||
* arch/arm/src/tiva/chip/tm4c_pinmap.h: Add pin multiplex definitions
|
||
for the TM4C123 (2014-3-9).
|
||
* arch/arm/src/tiva/chip/tm4c_memorymap.h: Add memory map for the
|
||
TM4C123 (2014-3-9).
|
||
* arch/arm/src/tiva/: Add GPIO and SYCONTROL register bit definitions
|
||
for the TM4C123 (2014-3-10).
|
||
* configs/tm4c123g-launchpad: Add basic board support for the
|
||
TM4C123G-Launchpad (2014-3-10).
|
||
* configs/sam4e-ek: Add basic board support for the SAM4E-EK board.
|
||
More work is needed. The initial commit is little more than the
|
||
SAM3U-EK with name changes (2014-3-10).
|
||
* configs/spark: Refresh all spark configurations (2014-3-11).
|
||
* arch/arm/src/tiva/chip/tm4c_memorymap.h: Fix typos reported by
|
||
Daniel Pereira de Carvalho (2014-2-12).
|
||
* arch/arm/src/sam34/sam_emac.c: Add an Ethernet MAC driver for the
|
||
SAM4E. The initial checkin is essentially the SAMA5D3 EMAC driver
|
||
with naming changes as appropriate (2014-3-12).
|
||
* arch/arm/src/sam34/sam_cmcc.c: Add logic to manage the Cortex-M
|
||
Cache Control block. Untested on initial check-in (2014-3-12).
|
||
* arch/arm/src/sam34/sam_emac.c: Fix EMAC pin configuration (was been
|
||
set up for RMII instead of MII). Now the driver EMAC appears to be
|
||
functional (2014-3-13).
|
||
* configs/sam4e-ek/nsh: Networking support is now enabled by default
|
||
in the NSH configuration (2014-3-13).
|
||
* arch/arm/src/sam34/sam_spi.c: Backported the SAMA5 SPI driver to
|
||
the SAM3/4 architecture. The SAMA5 version supports both multiple
|
||
SPI peripherals as needed by the SAM3A and SAM3X and also supports
|
||
DMAC (but not PDC). The initial commit is untested and may very
|
||
well have (temporarily) broken SPI for the SAM3/4/ family (2014-3-13).
|
||
* configs/sam4e-ek/src/sam_at25.c and sam_hsmci.c: Added support for
|
||
the AT25 serial FLASH. Restructured the logic that registers the
|
||
HSMCI block driver (2014-3-13).
|
||
* arch/arm/src/sam34/sam_dmac.c and sam_spi.c: Fixes to DMA in general
|
||
and to SPI in particular (2014-3-14).
|
||
* configs/sam4e-ek/nsh: DMA-based SPI and a FAT file system on the
|
||
AT25 Serial FLASH are now supported by default in the NSH configuration
|
||
(2014-3-14).
|
||
* sched/nanosleep.c: Fix a missing call to re-enable interrupts. From
|
||
Jason Jiang (2014-3-15).
|
||
|
||
7.2 2014-04-29 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/sam34/sam_udp.c and .h: Add a USB full speed device
|
||
driver (UDP) for the SAM4E (2014-3-17).
|
||
* Documentation/NuttxPortingGuide.html: Typo fixes from Vijay Kumar
|
||
(2014-3-18).
|
||
* arch/arm/Kconfig: Improved documentation of the use of the
|
||
BASEPRI register from Vijay Kumar (2014-3-19).
|
||
* include/nuttx/i2c.h: More typo fixes from Vijay Kumar (2014-3-19).
|
||
* arch/Kconfig and *_assert.h: Add a configuration option to enable
|
||
dumping of the USB trace buffer on assertion (2014-3-19).
|
||
* drivers/usbdev/Kconfig, arch/arm/src/sam34/Kconfig, and
|
||
drivers/usbdev/usbmsc_scsi.c: If DCD can support queuing of stall
|
||
requests, then the USB MSC stall work around delays are not necessary
|
||
(2014-3-20).
|
||
* net/netdev_findbyaddr.c: Skip network devices that are in the
|
||
"down" state. It does not make sense to consider an address match
|
||
with a "down" device. From Brennan Ashton (2014-3-20).
|
||
* configs/sam4e-ek/usbnsh: Add a NSH configuration that uses the
|
||
NSH console (2014-3-22).
|
||
* arch/arm/src/stm32/stm32_eth.c: Add IGMP hashing support. From
|
||
Manuel St<53>hn (2014-3-24).
|
||
* net/netdev_ioctl.c and uip/uip_input.c: IGMP-related bug fixes
|
||
from Manuel St<53>hn (2014-3-24).
|
||
* arch/arm/src/sam34: Add missing HSCMI configuration settings to
|
||
Kconfig; update naming to include SAM34_ (2014-3-24).
|
||
* configs/sam4e-ek/include/board.h: Update HSMCI timing to use the
|
||
CLKODD bit (2014-3-24).
|
||
* drivers/include/mtd/Kconfig, sector512.c, and include/nuttx/mtd/mtd.h:
|
||
Add a new MTD driver that can be used to contain another driver and
|
||
force its apparent sector size to be 512 bytes (2014-3-24).
|
||
* arch/arm/src/sam34/sam_lowputc.c sam_serial.c: Fix a mysterious
|
||
multithreading bug that can lock up the serial port (2014-3-14).
|
||
* drivers/usbdev/Kconfig, usbmsc.c, usbmsc.h, and usbmsc_scsi.c:
|
||
Redesign threading module used with the USB MSC driver. It was using
|
||
pthreads before and these were changed to a kernel thread. The reason
|
||
for this has to do with task grouping: A pthread is a memory of the
|
||
group of the task that started it. A kernel thread is independent of
|
||
the task that started in (other than knowing it as the parent). This
|
||
allows me to remove so kludge logic to "deparent" the pthread on
|
||
startup (2014-3-25).
|
||
* tools/astyle.sh: A code formatting tool from Lorenz Meier. This
|
||
tool should do a better job than the old tools/indent.sh tool
|
||
(2014-3-26).
|
||
* arch/arm/src/sam_hsmci.c and sam_spi.c: Add support to invalidate
|
||
cached memory if the CMCC is enabled (not yet tested, 2014-3-26).
|
||
* arch/arm/src/sam_spi.c: Add logic to handle SPI word widths > 8
|
||
(also untested on initial checkin, 2014-3-26).
|
||
* configs/sam4e-ek: All configurations updated to run with 120MHz
|
||
CPU speed and with the CMCC enabled. Calibrated delay loop
|
||
(2014-3-26).
|
||
* drivers/lcd/Kconfig: Add missing configuration for the MIO283QT-9A
|
||
LCD. Reported by Toby Duckworth (2014-3-27).
|
||
* arch/arm/include/sama5/chip.h and arch/arm/src/sama5/Kconfig: Add
|
||
support for the SAMA5D36 (2014-3-28).
|
||
* libc/strings/lib_strncpy.c: Change ordering of test and copy. Logic
|
||
would have failed if n=0; one byte was always copying before testing
|
||
for the end of the copy.
|
||
* nuttx/configs/sama5d3-xplained/: Add a board support configuration
|
||
for the Atmel SAMA5D3 Xplained board. The initial check in is not
|
||
finished. For example, it still builds to run out of NOR FLASH but
|
||
the SAMA5D Xlpained has no NOR FLASH (2013-4-28).
|
||
* arch/arm/src/sama5/sam_pmc.c and .h: Add functions to calculate
|
||
PLLACK, PCK, and MCK frequencies given the main clock frequency
|
||
(2014-3-29).
|
||
* configs/sama5d*/include/board.h, board_sdram.h, and other files:
|
||
When booting from SDRAM, we need to query the PMC registers (using
|
||
the functions in sam_pmc.c) to determine the MCK, PCK, etc. We assume
|
||
that the MCK input clock is well known main crystal oscillator
|
||
frequency (2014-3-29).
|
||
* configs/sama5d3x-ek: Change all configuration names to board-
|
||
specific names so that this are no name collisions with other
|
||
boards that have similar configuration variables (2013-3-30).
|
||
* configs/nuttx/compiler.h: Add macro UNUSED() that can be used
|
||
to eliminate warnings about variables that are set to values
|
||
that are not used (2014-3-30).
|
||
* arch/arm/src/sama5/sam_hsmci_clkciv.c: Remove HSCMI-related
|
||
functions that did not belong in sam_pmc.c and give them their
|
||
own file (2014-3-30).
|
||
* arch/arm/src/sama5/sam_boot.c: Fix some backward conditional
|
||
compilation (2014-3-30).
|
||
* libc/stdio/lib_sccanf.c: Fix a counting error in the return
|
||
value from sscanf(). Noted by kfrolov. Also, sscanf() should
|
||
return EOF if no values were converted (2014-3-30).
|
||
* include/time.h and sched/clock_settime(): Add support for
|
||
CLOCK_REALTIME. From Macs N (2014-3-31).
|
||
* libc/stdio/lib_ferror.c, lib_fread.c, lib_libfflush.c,
|
||
lib_libfread.c, and lib_libfwrite.c: Finish incomplete support
|
||
for ferror(). From Macs N (2014-3-14).
|
||
* libc/stdio/lib_ftell.c: Fix a logic error in ftell(). It was
|
||
simply using the file offset and did not take into account data
|
||
buffered in memory. From Macs N (2013-3-31).
|
||
* Add CONFIG_CLOCK_MONOTONIC that case used to disable CLOCK_MONOTONIC
|
||
for a smaller footprint (2013-3-31).
|
||
* sched/Kconfig: Menu has gotten too long. And another layer of
|
||
menuing in order to simplify this layer (2014-3-31).
|
||
* arch/arm/src/sama5_boot.c: Fix double mapping of SDRAM when executing
|
||
out of SDRAM. In this case, the SDRAM was already mapping in
|
||
arm_head.S (2014-3-31).
|
||
* arch/arm/src/sama5/chip/sam_dbgu.h: Add SAMA5D3 DBGU definition
|
||
header file (2014-3031).
|
||
* arch/arm/src/sama5/sam_dbgu.c and .h: Add support for the SAMA5D3
|
||
DBGU (2014-4-1).
|
||
* configs/sama5d3-xplained/nsh: Configurations now use the DBGU for
|
||
the serial console (instead of USART1) (2014-4-1).
|
||
* libc/stdio/lib_sccanf.c: Use stroul() vs strol() with %u format
|
||
otherwise, range of values is restricted because of sign bit
|
||
from kfrolov (2014-4-2).
|
||
* arch/arm/src/sama5/sam_boot.c, sam_irq.c, chip/sama5d3x_memorymap.h:
|
||
When running from SDRAM, vectors must lie in SRAM (2014-4-2).
|
||
* arch/arm/src/armv7-a/arm_head.S and cache.h: On start-up, make
|
||
certain that the MMU and caches are disabled (probably un-necessary)
|
||
(2014-4-2).
|
||
* arch/arm/src/sama5/sam_boot.c: If we have to copy vectors, then
|
||
make sure to clean the DCache to be sure that the copied vectors are
|
||
in the physical RAM (2014-4-2).
|
||
* arch/arm/src/sama5/sam_irq.c: After we modify the AXI MATRIX, make
|
||
sure to invalidate all caches and TLBs (probably un-necessary)
|
||
(2014-4-2).
|
||
* arch/arm/src/sama5/sam_irq.c: Set the VBAR register to zero. If
|
||
were started by a bootloader (vs. a RESET), then the VBAR register
|
||
may not be in its reset state (zero, 2014-4-3).
|
||
* arch/arm/src/sama5/sam_boot.c, sam_irq.c, and chip/sama5d3x_memorymap.h:
|
||
When booting from SDRAM, don't relocated vectors to ISRAM. Instead,
|
||
just set the VBAR register to address of the vectors in SDRAM.
|
||
* arch/arm/src/sama5/sam_clockconfig.c: BMS Fixed to match what the HW
|
||
does. From David Sidrane (2014-4-3).
|
||
* arch/arm/src/sama5/Kconfig, sam_boot.c, andsam_clockconfig.c: On some
|
||
hardware, reconfiguring the PLL while executing out of NOR FLASH causes
|
||
crashes. This was fixed by David Sidrane by implementing RAM functions.
|
||
The killer code is copied and executed from ISRAM and the crash is
|
||
avoided (2014-4-3).
|
||
* configs/sama5d3-xplained/Kconfig and include/board*.h;
|
||
configs/sama5d3x-ek/Kconfig and include/board*.h: Add support for
|
||
528MHz CPU clock (2014-4-3).
|
||
* arch/arm/src/sama5/Make.defs: Fix a build error that occurs when
|
||
only USB device tracing is enabled (2014-4-4).
|
||
* Documentation/UsbTrace.html: Add some discussion of the USB monitor
|
||
(2014-4-4).
|
||
* nuttx/arch/arm/src/armv7-a/mmu.h: Bufferable bit did not do what
|
||
I thought it was going to do. Result was the NOR FLASH accesses
|
||
were very slow (2014-4-3).
|
||
* arch/arm/src/sama5/sam_udphs.c: Fix a case where received status
|
||
was not being cleared, causing OUT SETUP commands to fail (2014-4-6).
|
||
* arch/arm/src/tiva/tiva_syscontrol.c: Add logic for TM4C125GXL based
|
||
on logic from Daniel Carvalho with modifications. I think the
|
||
LM4F120 may have broken before as well(?). In any event, the LM4F120
|
||
also works well with this change (2014-4-7).
|
||
* Back out part of 610e2aa0c224e2936fe8009ef4a2351ce607067a: Need to
|
||
be able to select USB console devices when there is no /dev/console
|
||
enabled. Noted by Librae (2014-4-8).
|
||
* configs/*/defconfig: Increase the number of preallocated watchdogs
|
||
in all configurations that use networking or USB (2014-3-9).
|
||
* include/nuttx/syslog/syslog.h and ramlog.h: Move syslog.h and
|
||
ramlog.h to include/nutt/syslog (2014-4-10).
|
||
* sched/errno_getptr.c and getpid.c: Add some checks. If these
|
||
functions are called early in initialization before the tasking
|
||
structures are initialized, they will not behave properly
|
||
(2014-4-10).
|
||
* arch/arm/src/sama5/sam_twi.c: TWI data sending is fails to increment
|
||
the number of byes transferred on first byte sent. from David Sidrane
|
||
(2014-4-10).
|
||
* configs/sama5d3x-ek/src: The red LED is controlled by PE24 which is
|
||
also the camera/ISI interface reset line. So if the a camera is
|
||
installed, then we must avoid controlling the red LED or we inadvertently
|
||
also reset the camera module. Noted by David Sidrane (2014-4-11).
|
||
* arch/arm/src/stm32/stm32_usbhost.c/.h and stm32_otgfshost.c: USB host
|
||
tracing added by Leo (2014-4-12).
|
||
* arch/arm/src/sama5/sam_adc.c, sam_can.c, sam_emac.c, sam_gmac.c,
|
||
sam_ssc.c, and sam_twi.c: If running from SDRAM, then BOARD_MCK_FREQUENCY
|
||
is not a constant and cannot be used in conditional compilation (2014-4-16).
|
||
* drivers/lcd/mio283qt9a.c and include/nuttx/lcd/mio283qt9a.h: Update the
|
||
MIO183QT-9A LCD driver to support reading from the LCD. From Toby
|
||
Duckworth (2014-4-16).
|
||
* arch/arm/src/stm32/chip/stm32f20xxx_pinmap.h: Correct a mapping for
|
||
SPI MOSI pin. From dlsitzer (2014-4-26).
|
||
* arm/src/sama5/sam_clockconfig.c and common/up_internal.h: Move the
|
||
un-definitions of __ramfuncs__ from the .c file to the .h file or,
|
||
otherwise, the attribute will be applied differently for the prototype
|
||
and the function definition. Sourceforge patch 38 from Luciano Neri
|
||
(2014-4-17).
|
||
* arch/arm/src/sama5/sam_emac.c: Add missing right parentheses. This
|
||
introduced in the above change and is Sourceforge patch 39 from Luciano
|
||
Neri (2014-4-17).
|
||
* configs/sama5dx-ek/include/board.h and sama5d3-xplained.h: These files
|
||
reference type xcpt_t and so must include nuttx/irq.h. This is
|
||
Sourceforge bug 25 submitted by Luciano Neri (2014-4-17).
|
||
* arch/arm/src/stm32/stm32_otgfshost.c: Some fixes related to low-speed
|
||
devices and interrupt endpoints from Leo (2014-4-17).
|
||
* configs/stm32f4discovery/src/stm32_usb.c: Add support to register
|
||
keyboard and mouse classes if so configured. From Leo (2014-4-17).
|
||
* include/nuttx/usb/usbhost: Fix some USB HID-related conditional
|
||
compilation. From Leo (2014-4-17).
|
||
* drivers/usbhost/usbhost_hidmouse.c: Don't include NAKs from the device
|
||
in the error count. From Leo (2014-4-17).
|
||
* arch/arm/src/sam34/sam_irq.c: Fix initialization of the default
|
||
priorities (2014-4-17).
|
||
* arch/arm/src/kinetis/kinetis_irq.c, lpc17xx/lpc17_irq.c, and
|
||
tiva/tiva_irq.c: Modify the logic to disables the interrupts and sets
|
||
the default interrupt priority so that it uses the ICTR to get the
|
||
number of interrupt lines/registers. This is instead of using some
|
||
fixed number of initializations based a priori knowledge of the number
|
||
of interrupt lines in the MCU. This logic is untested on some MCUs
|
||
on initial check-in0 (2014-4-17).
|
||
* arm/src/lpc17xx/Kconfig and lpc17_ethernet.c: The default interrupt
|
||
priority should be default, not the highest priority (2014-4-19).
|
||
* configs/lpcxpresso-lpc1768: Refreshed all defconfig files (2014-4-19).
|
||
* configs/olimex-lpc1766stk: Refreshed all defconfig files (2014-4-19).
|
||
* configs/zkit-arm-1769: Refreshed all defconfig files (2014-4-19).
|
||
* include/nuttx/binfmt/ieee695.h: Beginning of header file for IEEE
|
||
695 OMF header file (2014-4-19).
|
||
* arch/arm/include/stm32/chip.h and src/stm32/Kconfig: Add support
|
||
for the STM401RE. From Frank Bennett (2014-4-20).
|
||
* README.txt, Documentation/README.html, configs/Kconfig and README.txt,
|
||
configs/nucleo-f401re: Add support for the Nucleo-F401RE board. From
|
||
Frank Bennett (2014-4-20).
|
||
* arch/arm/src/sam34/sam_rtc.c/.h: Port RTC driver from SAMA5 to
|
||
SAM3/4. From Bob Doiron (2014-4-21)
|
||
* arch/arm/src/sam34/sam4s_periphclks.h: Fix error in macros that
|
||
disable peripheral clocking. From Bob Doiron (2014-4-21)
|
||
* drivers/mmcsd/mmcsd_sdio.c/.h: Misc improvements from Bob Doiron
|
||
(2014-4-21)
|
||
* arch/arm/src/sam34/sam_hsmci.c and chip/sam_hsmci.h: Extensions
|
||
from Bob Doiron needed to support PDC-based HSMCI DMA transfers
|
||
(2014-4-21).
|
||
* configs/sam4s-xplained-pro: Support for the SAM4S Xplained Pro
|
||
board from Bob Doiron (2014-4-21).
|
||
* configs/sam4s-xplained-pro: Added card detect (kind of broken
|
||
still); added proc/vfat mounting during init to save some typing.
|
||
From Bob Doiron (2014-4-21).
|
||
* configs/sam4s-xplained-pro: Boost PLLA to 240MHz to allow USB. From
|
||
Bob Doiron (2014-4-21).
|
||
* arch/arm/src/sam34/sam_wdt.c/.h: Add watchdog driver. From Bob
|
||
Doiron (2014-4-21).
|
||
* nuttx/configs/sam4s-xplained-pro: Add board-specific watchdog
|
||
timer support. From Bob Doiron (2014-4-21).
|
||
* drivers/timer.c and include/nuttx/timer.h: Timer "upper half"
|
||
driver and lower half interface definition from Bob Doiron
|
||
(2014-40-22).
|
||
* arch/z16/src/z16f/z16f_espi.c: Add ZNEO ESPI driver (2014-4-24).
|
||
* arch/arm/src/stm32/stm32_sdio.c: The dmaflight method must
|
||
be conditioned on CONFIG_SDIO_PREFLIGHT. Noted by Pelle
|
||
Windestam (2014-4-25)
|
||
* configs/nucleo-f401re: Removed bogus references to the MPU
|
||
(2014-4-25).
|
||
* arch/z16/src/z16f_timerisr.c: Fix calculation of timer
|
||
reload and prescaler. The timer frequency was way too fast
|
||
(2014-4-25).
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c and others: Sourceforge
|
||
Ticket #26. up_prioritize_irq should not be called if
|
||
CONFIG_ARCH_IRQPRIO is not defined (2014-4-25).
|
||
|
||
7.3 2014-06-25 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/sama5/sam_clockconfig.c: Needed function sam_pmcwait()
|
||
is needed when UDPHS, EHCI, or OHCI is configured but may not be
|
||
compiled in due to insufficient conditional logic. From Luciano Neri
|
||
(SourceForge patch #40) (2014-4-29).
|
||
* arch/arm/include/stm32/chip.h, src/stm32/Kconfig, stm32_allocateheap.c,
|
||
configs/nucleo-f401re/nsh/defconfig, and scripts/ld.script: Numerous
|
||
changes, most correcting memory usage on the Nucleo-F401RE (2014-4-30).
|
||
* /drivers/mtd/w25.c: Extended by Mark Whitehorn to support the 8Mbit
|
||
W25Q80BV part (2014-4-30).
|
||
* configs/sam4s-xplained-pro: Update LED control logic from Bob Doiron
|
||
(2014-4-30).
|
||
* drivers/timer.c and include/nuttx/timer.h: Enhanced timer interface
|
||
from Bob Doiron (2014-4-30).
|
||
* arch/arm/src/sam34/Kconfig and sam_tc.c: Enhanced timer/counter driver
|
||
from Bob Doiron (2014-4-30).
|
||
* configs/sam4s-xplained-pro/Kconfig, nsh/defconfig, and src/sam_tc.c:
|
||
The SAM4S Xplained Pro now uses the extended timer/counter features.
|
||
From Bob Doiron (2014-4-30).
|
||
* include/nuttx/arch.h and sched/os_internal.h: If the CPU load
|
||
measurements are being driven by an external clock, then the prototype
|
||
for sched_process_cpuload() must be available in include/nuttx/arch.h
|
||
(2014-4-30).
|
||
* Documentation/NuttShell.html and many defconfig files: The alternate
|
||
console device CONFIG_NSH_CONDEV must not be defined unconditionally.
|
||
This causes errors when using Telnet sessions. This was solved by
|
||
adding CONFIG_NSH_ALTCONDEV: CONFIG_NSH_ALTCONDEV enables or disables
|
||
the feature then, if enabled, CONFIG_NSH_CONDEV provides the alternative
|
||
console device name (2014-5-5).
|
||
* arch/arm/src/sam34/sam_rtt.c/.h: RTT driver from Bob Doiron. Also
|
||
added high resolution RTC emulation using the RTT for the sub-second
|
||
counter (2014-5-5).
|
||
* configs/sam4s-xplained-pro: Clean-up of LED usage and also some
|
||
integration of new timer features. From Bob Doiron (2014-5-5).
|
||
* drivers/timer.c and include/nuttx/timer.h: Timer driver updates from
|
||
Bob Doiron (2014-5-5).
|
||
* binfmt/symtab_findorderedbyname.c: Fix an error in the symbol search
|
||
function. Noted by Pelle Windestam (2014-5-6).
|
||
* arch/arm/src/stm32/stm32f40xxx_rcc.c and configs/nucleo-f401re/include/board.h:
|
||
The Nucleo-F401RE has no on-board crystals and, hence, needs to run
|
||
with the PLL input from the on-chip HSI clock (2014-5-6).
|
||
* arch/arm/src/armv7-a/arm_memcpy.S: This is the same optimized memcpy()
|
||
function that Mike Smith brought in for the ARMv7-M with minor tweaks
|
||
by David Sidrane to work with the ARMv7-A (2014-5-6).
|
||
* binfmt/libpcode, pcode.c, include/nuttx/poff.h, and binfmt/pcode.h:
|
||
Framework to support Pascal P-Code as a binary format. At present this
|
||
logic is incomplete and really nothing more than a thought experiment
|
||
to determine the feasibility of the P-code binary format (2014-5-7).
|
||
* drivers/sensors/Make.defs: Correct build dependency. Sourceforge
|
||
ticket #41 from Kosma Moczek (2014-5-8).
|
||
* drivers/serial.c, include/nuttx/serial.h, arch/arm/src/stm32/stm32_serial.c
|
||
and minor updates to all other drivers using the serial interface: Add an
|
||
rxflowcontrol method to the serial interface to better support RX flow control.
|
||
From Jussi Kivilinna (2014-5-8).
|
||
* arch/arm/include/stm32 and src/stm32: Add support for the STM32152 and
|
||
STM32162 Medium+ density parts (plus miscellaneous other improvements to
|
||
the original STM32151 logic). From Jussi Kivilinna and Sami Pelkonen
|
||
(2014-5-8).
|
||
* binfmt/binfmt_dumpmodule.c, binfmt_loadmodule.c, binfmt_unloadmdoule.c,
|
||
builtin.c, elf.c, nxflat.c, pcode.c, and include/nuttx/binfmt/binfmt.h:
|
||
Extend the binfmt interface to handle error conditions where format-specific
|
||
binfmt clean-up is needed in the event of error conditions. This is needed
|
||
by the P-Code binfmt (2014-5-8).
|
||
* binfmt/libpcode, pcode.c, include/nuttx/poff.h, and binfmt/pcode.h:
|
||
Now uses apps/interpreters/prun and is basically functional. More work
|
||
is needed because (1) it is too coupled with apps/ and (2) will not work
|
||
with CONFIG_NUTTX_KERNEL (2014-5-9).
|
||
* arch/arm/src/stm32/stm32_i2c.c: Bring in PX4 fix for I2C in very high
|
||
noise environments or with rogue perpipherals. Taken from the PX4 commit
|
||
099b2017ccfa0fc7696f168db2a0c2e13fe5edbc by Tridge here:
|
||
https://github.com/PX4/NuttX (2014-5-10).
|
||
* include/nuttx/video/rgbcolors.h: Fix typo in several macros: RBG -> RGB.
|
||
(2014-5-12).
|
||
* drivers/mtd/ramtron.c: Add support for Fujitsu MB85RS1MT part. From
|
||
Charles Ash (2014-5-12).
|
||
* configs/sam4e-ek/src/sam_ili9325.c: Add an LCD driver for the SAM4E-EK
|
||
board. Untested on initial check-in (2014-5-13).
|
||
* configs/sam4e-ek/src/sam_ads7843e.c: Add a touchscreen driver for the
|
||
SAM4E-EK board. Untested on initial check-in (2014-5-13).
|
||
* arch/arm/src/stm32/stm32_i2c_alt.c: Add an alternative I2C implementation
|
||
for the STM32 F03 that works around errata in that part. From Patrizio
|
||
Simona (2014-5-14).
|
||
* arch/arm/src/sam34/sam_gpio.c: Fix some SAM4E compiler errors when
|
||
CONFIG_DEBUG_GPIO is enabled (2014-5-15).
|
||
* sched/sig_mqnotempty.c: Test for a valid signal number is inverted; this
|
||
function could not have been working correctly??? From eero.nurkkala
|
||
(2014-5-20).
|
||
* arch/arm/src/stm32/stm32_lowputc.c: Fix error in conditional
|
||
compilation. From Sami PelKonen (2014-5-20).
|
||
* arch/*/src/* (several files): Make sure that all references to
|
||
up_prioritize_irq() are conditioned on CONFIG_ARCH_IRQPRIO. Problem
|
||
noted by Mike Smith (2014-05-20).
|
||
* drivers/wireless/cc3000/Kconfig: Correct SPI mode for CC3000 is CPOL=0
|
||
CHPA=1. See http://processors.wiki.ti.com/index.php/CC3000_Serial_Port_Interface_(SPI)
|
||
From Jussi Kivilinna (2014-5-21).
|
||
* drivers/wireless/cc3000/cc3000.c and include/nuttx/wireless/cc3000/include/cc3000_upif.h:
|
||
Configuration has CC3000_SPI_MODE settings but source uses
|
||
CONFIG_CC3000_SPIMODE. From Jussi Kivilinna (2014-5-21).
|
||
* drivers/wireless/cc3000/cc3000drv.c: unsoliced_thread does
|
||
initialization of message queue, but main thread might block that
|
||
thread from running and use the uninitialized message queue. The main
|
||
thread must wait until unsolice_thread initializes the required
|
||
structures before proceeding. From Jussi Kivilinna (2014-5-21).
|
||
* drivers/wireless/cc3000/cc3000.c: Fix build when POLL is enabled.
|
||
From Jussi Kivilinna (2014-5-21).
|
||
* arch/arm/include/armv7-m/irq.h: Change bne to bne.n in irqrestore()
|
||
(2014-5-22).
|
||
* Many files: Convert all old-style variadic macros to the C99 form.
|
||
Recent GCC changes tightens up that behavior and can cause some problems
|
||
(at least for the IAR compiler for some reason). See
|
||
https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html#Variadic-Macros.
|
||
Noted by Bob Grimes (2014-5-22).
|
||
* configs/viewtool-stm32f107/nsh: Configuration refreshed (2014-5-23).
|
||
* arch/arm/src/stm32/stm32_i2c_alt.c: Final driver from Max Kriegleder et al.
|
||
Reduces footprint and fixes a bug. (2014-5-23).
|
||
* tools/configure.sh: In-place SED edit messes up permissions on windows.
|
||
From Hannes Delago (2014-5-25).
|
||
* include/nuttx/mtd/mtd.h: Needs forward reference to struct spi_dev_s.
|
||
(2014-5-25).
|
||
* arch/arm/src/stm32/stm32_i2c.c and stm32_i2c_alt.c: Back out PX4 fixes
|
||
that were reverted in the PX4 repositories (2014-5-25).
|
||
* sched/Kconfig: CONFIG_START_YEAR/MONTH/DAY are not required if the
|
||
RTC is enabled (2014-5-26).
|
||
* arch/arm/src/stm32/stm32_rtcc.c: Add retry logic to RTC initialization.
|
||
It sometimes takes longer for the RTC to initialize, at least as noted
|
||
on an F2 part. From dlsitzer (2014-5-27).
|
||
* libc/stdio/lib_snprintf.c: If the size passed to snprintf() is zero,
|
||
then snprintf() must write nothing, but instead return the size of the
|
||
buffer needed to hold the entire string. From Sami Pelkonen (2014-5-30).
|
||
* net/arp: Move arp related files from net/uip to net/arp. Files renamed
|
||
with arp_ prefix (2014-5-30).
|
||
* include/nuttx/net/arp.h and net/arp/arp_timer.c: Moved
|
||
include/nuttx/net/uip/uip-arp.h to include/nuttx/net/arp.h; moved
|
||
net/net_arptimer to arp/arp_timer.c. (2014-5-30).
|
||
* net/igmp: Moved IGMP files from net/uip to net/igmp (2014-5-30).
|
||
* net/icmp: Moved ICMP files from net/uip to net/icmp (2014-5-30).
|
||
* net/uip/uip_tcptimer.c: NET: Notify upper layer when TIME_WAIT or
|
||
FIN_WAIT_2 timeout occurs. Otherwise connections possibly won't get
|
||
freed. From Max Holtzberg (2014-6-2).
|
||
* TCP fallback allocation: Added all states in which the connections are
|
||
about to be closed. Fallback mechanism is disabled when SO_LINGER is
|
||
enabled to prevent deadlocks in netclose_disconnect(). From Max Holtzberg
|
||
(2014-6-2).
|
||
* configs/olimex-stm32_h405: Support for the Olimex STM32 H405 board
|
||
contributed by Martin Lederhilger (2014-6-3).
|
||
* net/arp/Make.defs: Fix an error introduced recently in the net/ build
|
||
(2014-6-3).
|
||
* net/iob: Add generic I/O buffering. Not currently used by anything.
|
||
(2014-6-4).
|
||
* arch/arm/include/sama5 and arch/arm/src/sama5: Basic framework to
|
||
support the SAMA5D4 family. Incomplete on initial check-in (2014-6-3).
|
||
* arch/arm/src/sama5/chip/sam_xdmac.h: Beginning of XDMAC register
|
||
definition header file (incomplete) (2014-6-4).
|
||
* arch/arm/src/sama5/chip/sam_l2cc.h: Add SAMA5D4 L2CC register definition
|
||
header file (incomplete on initial check-in) (2014-6-5).
|
||
* drivers/usbdev/cdcacm.c: Reset RX head to avoid resending last serial
|
||
data when USB cable disconnected/re-connected. From Lizhuoyi (2014-6-6).
|
||
* drivers/usbdev/pl2303.c: Same change cloned for PL2303 (2014-6-6).
|
||
* arch/arm/src/lpc2378: Fix several typos. From Lizhuoyi (2014-6-6).
|
||
* arch/arm/src/lpc17xx/lpc17_gpdma.c: Fix an error when DMA is
|
||
started: The read-modify-write fails when the DMA is started. This
|
||
is because the value read is not the same as the value set (on write
|
||
it is the number of transfers to do; on read it is the number of
|
||
transfers completed). From Lizhuoyi (2014-6-6).
|
||
* configs/sama5d4-ek: Initial board support for the SAMA5D4-EK board.
|
||
This initial check-in is basically the SAMA5D3-Xplained board support
|
||
with appropriate name changes (2014-6-6).
|
||
* stm32/arch/arm/src/stm32_serial.c: Handle configuration for the
|
||
case of 8-bit data with parity. From Freddie Chopin (2014-6-11).
|
||
* binfmt/libelf/elf.c: Fix a compilation error when CONFIG_ELF_DUMPBUFFER
|
||
is defined. From Pelle Windestam (2014-6-12).
|
||
* net/, include/nutt/net, and include/netpacket: Add support for "raw"
|
||
sockets. From Lazlo Sitzer (2014-6-12).
|
||
* arch/arm/src/sama5: Add SAMA5D4 XDMAC driver. Initial check-in is
|
||
just the DMAC driver with a few naming changes (2014-6-12).
|
||
* configs/sama5d4x-ek/ramtest: Add an SDRAM test configuration
|
||
(2014-6-14).
|
||
* libc/stdio/lib_libsnoflush.c, lib_memsistream.c, and lib_memsostream.c:
|
||
Add support for seekable memory streams (2014-6-14).
|
||
* libc/stdio/lib_rawsistream.c, and lib_rawsostream.c: Add support for
|
||
seekable raw streams (2014-6-14).
|
||
* libc/stdio/lib_stdsistream.c, and lib_stdsostream.c: Add support for
|
||
seekable standard streams (2014-6-14).
|
||
* configs/sam4x-xplained*/src/sam_buttons.c: Button interrupts not being
|
||
disabled after being detached. (2014-6-15).
|
||
* binfmt/binfmt_exec.c: Fix a critical error in exec(); argv was not
|
||
being passed (2014-6-15).
|
||
* arch/arm/src/sama5/sam_dmac.h: Fix some critical typos in the SAMA5D3
|
||
DMA definitions (2014-6-17).
|
||
* nuttx/net/net_send_unbuffered.c: Notify the device driver of the
|
||
availability of TX data. From Daniel Lazlo Sitzer (2014-6-18).
|
||
* net/net_close.c, net_send_unbuffered.c, socket.c, and uip_poll.c:
|
||
Various fixes for raw sockets from Daniel Lazlo Sitzer: (1) properly
|
||
free the socket in psock_close(), (2) socket() returns failure when
|
||
there is no free socket/connection, and (3) Set number of bytes to
|
||
transmit is set in the uip_driver_s instance (2014-6-18).
|
||
* net/tcp: Move all TCP files from net/uip to net/tcp (2014-6-18).
|
||
* net/udp: Move all UDP files from net/uip to net/udp (2014-6-18).
|
||
* net/pkt: Move all AF_PACKET files from net/uip to net/pkt (2014-6-18).
|
||
* net/Kconfig: Add option to select CONFIG_NET_GUARDSIZE (2014-6-18).
|
||
* net/net_send_buffered.c: Add checks from buffer allocation failures.
|
||
from Max/Himax (2014-6-19).
|
||
* tools/mkfsdata.pl: Apparently, the trailing the 0x00 in http server
|
||
files is seen as a bug in javascript and images. From Max/Himax
|
||
(2014-6-19).
|
||
* net/ and include/nutt/net (many files): Conversion of the TCP
|
||
write buffering logic to use I/O buffer chains (not tested on initial
|
||
check-in) (2014-6-22).
|
||
* include/time.h and sched/clock_gettime.c: Fix typo in conditional
|
||
compilation: CONFIG_CLOCK_MONOTONIC vs. CLOCK_MONOTONIC. From Manuel
|
||
St<53>hn (2014-6-23).
|
||
* arch/avr/Kconfig and arch/avr/src/avr32/Kconfig: Fix typos in
|
||
Kconfig files from Stefan Sperling (2014-6-23).
|
||
* net/net_send_unbuffered.c: Remove some spurious white space from
|
||
field selectors. SourceForge ticket #42 (2014-6-23).
|
||
* arch/arm/src/lpc17xx and configs/lpcexpresso-lpc1768: Added support
|
||
for the lpcxpresso's rtc handler, adc, dac, timers, pwm and mcpwm
|
||
drivers. From Max (himax) (2014-6-23).
|
||
* net/tcp/Kconfig: Cannot enable bother TCP write buffering AND raw
|
||
packet sockets. This should not logically be the case, but is because
|
||
the implementations are presently too coupled. The logic packet
|
||
socket logic in net/net_send_unbuffered.c needs to be broken out into
|
||
a separate file so that write buffered TCP and packet socket transfers
|
||
can co-exist (2014-6-23).
|
||
* net/uip/uip_pktsend.c: Move the logic that copies data into the
|
||
device buffer from net/net_send_unbuffered.c to net/uip/uip_pktsend.c.
|
||
This makes the packet socket design more consistent with TCP and UDP
|
||
(2014-6-23).
|
||
* net/: Separate net/net_send_buffered.c and net/net_send_unbuffered.c
|
||
to net/tcp/tcp_send_buffered.c, net/tcp/tcp_send_unbuffered.c, and
|
||
pkt/pkt_send.c (2014-6-24).
|
||
* include/net/if.h and /net/arp/arp_inout.c: Suppress ARP requests on
|
||
data sent from packet sockets (2014-6-24).
|
||
* include/nuttx/net/netconfig.h: Move include/nuttx/net/uip/uipopt.h to
|
||
include/nuttx/net/netconfig.h (2014-6-24).
|
||
* include/nuttx/net/netdev.h: Move include/nuttx/net/uip/uip-arch.h to
|
||
include/nuttx/net/netdev.h (2014-6-24).
|
||
* include/nuttx/net/tcp.h: Move include/nuttx/net/uip/uip-tcp.h to
|
||
include/nuttx/net/tcp.h (2014-6-24).
|
||
* include/nuttx/net/udp.h: Move include/nuttx/net/uip/uip-udp.h to
|
||
include/nuttx/net/udp.h (2014-6-24).
|
||
* include/nuttx/net/pkt.h: Move include/nuttx/net/uip/uip-pkt.h to
|
||
include/nuttx/net/pkt.h (2014-6-24).
|
||
* include/nuttx/net/icmp.h: Move include/nuttx/net/uip/uip-icmp.h to
|
||
include/nuttx/net/icmp.h (2014-6-24).
|
||
* include/nuttx/net/igmp.h: Move include/nuttx/net/uip/uip-igmp.h to
|
||
include/nuttx/net/igmp.h (2014-6-24).
|
||
* include/nuttx/net/ip.h: Move include/nuttx/net/uip/uip-ipopt.h to
|
||
include/nuttx/net/ip.h (2014-6-24).
|
||
* include/nuttx/net/uip.h: Move include/nuttx/net/uip/uip.h to
|
||
include/nuttx/net/uip.h (2014-6-24).
|
||
* net/uip/uip.h: Rename net/uip/uip_internal.h to net/uip/uip.h
|
||
(2014-6-24).
|
||
* net/iob: Add support for throttling read-ahead buffering if the
|
||
read-ahead buffering is competing with write buffering for I/O
|
||
buffers (2014-6-24).
|
||
* net/: Many files changed. Convert existing TCP read-ahead logic
|
||
to use I/O buffer chains (2014-6-24).
|
||
* net/: Clean up all TCP and UDP related naming (204-6-24).
|
||
* net/: Clean up all ICMP, IGMP, ARP, and PKT related naming
|
||
(204-6-25).
|
||
* arch/arm/src/sam34 and include/sam34: Add support for the SAM4CM
|
||
family. From Max Neklyudov (2014-6-25).
|
||
|
||
7.4 2014-08-15 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/stm32/stm32_i2c.c: Fix missing configuration of
|
||
GPIO pins in I2C driver. Fix from Alex D. (2014-6-25).
|
||
* NET: Fix an include file ordering problem when CONFIG_NET_STATISTICS=y.
|
||
(2014-6-26).
|
||
* include/nuttx/net/netstats.h: Move statistics from uip.h to new netstats.h
|
||
to remove nasty circular inclusion problem (2014-6-26).
|
||
* arch/arm/src/sama5: Add logic to redirect all SAMA5D4 interrupts to
|
||
the AIC (2014-6-26).
|
||
* net/route: Move routing table functions to net/route (2014-6-26).
|
||
* net/utils: Move some files into net/utils (2014-6-26).
|
||
* net/: Repartition initialization logic so that net/uip is at the bottom
|
||
of the food chain, instead of at the top.
|
||
* apps/include/hex2bin.h: The hex2bin library did not build with
|
||
debug disabled (2014-6-26).
|
||
* configs/sama5d4-ek/dramboot and src/dram_main.c: Add a boot loader that
|
||
runs from ISRAM and loads an Intel HEX file into DRAM (2014-6-26).
|
||
* configs/sama5d4-ek/nsh and scripts/: Setup the SAMA5D4-EK NSH
|
||
configuration to use the DRAMBOOT loader by default (2014-6-26).
|
||
* binfmt: Various changes associated with symbol tables. Most from Pelle
|
||
Windestam (2014-6-27).
|
||
* Networking: Add network device ioctl to access PHY registers. From Daniel
|
||
Lazlo Sitzer (2014-6-27).
|
||
* net/netdev: Move net/netdev*.c to net/netdev/netdev*.c (2014-6-27).
|
||
* arch/arm/src/sam34/chip/sam4cm_ipc.h: Add SAM4CM IPC register header
|
||
file. From Max Neklyudov (2104-6-27).
|
||
* arch/arm/src/sam34: Various fixes PMC and clock configuration for the
|
||
SAM4CM port from Max Neklyudov (2104-6-27).
|
||
* configs/sama5d4-ek/src/dram_main.c: SAMA5D4: Bootloader needs to flush
|
||
D-Cache to memory before disabling the caches (2014-6-27).
|
||
* net/Makefile: Fix a Make.defs inclusion omitted in a previous check-in
|
||
(2014-6-17).
|
||
* net/utils: Move net/uip/uip_chksum.c to net/utils/net_chksum.c
|
||
(2014-6-17).
|
||
* configs/sama5d4-ek/at25boot and src/at25_main.c: Add a configuration
|
||
that will load a bootloader into AT25 Serial FLASH (2014-6-28).
|
||
* libc/math: Change double_t to double in rint(). Add rintf() and rintl()
|
||
while we are at it (2014-6-28).
|
||
* net/iob: Fix some errors in recent network I/O buffering when stack runs
|
||
from interrupt level. Reported by Manuel St<53>hn (2014-6-28).
|
||
* net/sockets: Create the net/sockets directory and hook it into the
|
||
build system. Move all socket-related C files into net/socket. Move
|
||
net/net.h to net/socket/socket.h (2014-6-28).
|
||
* net/ipv6: Move IPv6 files from net/uip to net/ipv6 (2014-6-28).
|
||
* net/devif: Rename net/uip to net/devif. Rename uip/uip.h to
|
||
devif/devif.h (2014-6-28).
|
||
* net/devif: Rename many functions in net/devif from uip_* to devif_*
|
||
(2014-6-28).
|
||
* configs/sama5d4-ek/src/nsh: The SAMA5D4-EK NSH configuration now
|
||
supports the RTC by default (2014-6-29).
|
||
* arch/arm/src/sama5/Kconfig and sam_hsmci.c: Add configuration to
|
||
assign an XDMAC channel to an HSMCI (2014-6029).
|
||
* Various fixes for networking and tiny webserver from Max (2014-6-29).
|
||
* SAMA5: Various fixes related to DMA in order to get the HSMCI
|
||
driver to build for the SAMA5D4 (2014-6-29).
|
||
* SAMA5D4-EK: Fix HSMCI card-detect pin selection (2014-6-29).
|
||
* net/: Still renaming, mostly uip_* to net_* (2014-6-29).
|
||
* arch/arm/src/stm32/stm32_i2c.c and stm32_i2c_alt.c, and
|
||
libc/time/lib_daysbeforemonth.c: Make variable definitions
|
||
'static const' when possible to save RAM usage. From Kosma
|
||
Moczek (2014-6-30).
|
||
* include/stdint.h: Correct naming of [U]INT_LEASTn_{MAX|MIN}
|
||
and [U]INT_FASTn{MAX|MIN}. From Kosma Moczek (2014-6-30).
|
||
* drivers/mtd/mtd-config: Extend erase block size to 18-bits in
|
||
order (decrease block size to 14-bits) to handle parts with large
|
||
erase blocks. From Kosma Moczek (2014-6-30).
|
||
* drivers/analog/adc.c: Remove empty ADC write method. From Kosma
|
||
Moczek (2014-6-30).
|
||
* arch/arm/src/stm32/stm32_serial.c: Unconfigure GPIO pins when
|
||
closing a serial port to prevent back effects from back-powering on
|
||
the TX pin. From Kosma Moczek (2014-6-30)
|
||
* arch/arm/src/stm32/Kconfig: Move temperature ranges from chip
|
||
selection configuration prompts. Reorder MCUs in choice menu;
|
||
remove duplicates. Add support for the STM32F103RC and RD. From
|
||
Kosma Moczek (2014-6-30)
|
||
* configs/sam4s-xplained-pro: Correct description of LEDs and
|
||
usage. From Kosma Moczek (2014-6-30)
|
||
* include/unistd.h: Some POSIX_* and _POSIX_* macros are defined
|
||
without value, whereas (as far as I can tell) the newer versions
|
||
of the standard require them to have the value corresponding to
|
||
the standard version implemented, like 200809L. Are the any plans
|
||
to clean this up? For now I've put together a quick patch that
|
||
defines those macros to 1, consistent with the rest of unistd.h.
|
||
From Kosma Moczek (2014-6-30)
|
||
* arch/arm/src/sama5/sam_memories.c: Fix some logic in conversion
|
||
of physical and virtual DRAM addresses when running out of DRAM. This
|
||
is an important bug fix for the SAMA5D3 and 4 when running out of
|
||
DRAM (2014-6-30).
|
||
* arch/arm/src/sama5/sam_pio.c: Another *critical* SAMA5D3 and 4 bug
|
||
fix: PIO clocking must be enabled for all input pins or else the
|
||
value that is read never changes. (2014-6-30).
|
||
* net/: Many more functions renamed to follow new modularization of
|
||
the networking code. This is part of an ongoing repartitioning
|
||
effort and there is still more to be done. There will be no additional
|
||
notations in this ChangeLog until the renaming is complete (2014-6-30).
|
||
* arch/arm/src/sam34/sam_emac.c, sama5/sam_emaca.c, sam_emacb.c, and
|
||
sam_gmac.c: Fix cloned error: Wrong bits being cleared before ORing
|
||
in new bits (2014-7-1).
|
||
* drivers/syslog/ramlog.c: syslog_putc needs to set the errno and
|
||
return EOF on a failure (2014-7-1).
|
||
* SAM3/4 and SAMA5 Ethernet: Fix an error in the function that
|
||
determines the number of free TX descriptors. This is an important
|
||
bugfix on busy networks (2014-7-2).
|
||
* SAM4 AES driver. Contributed by Max Neklyudov (2014-7-3).
|
||
* crypto/ and include/crypto: Beginnings of a crypto/ subsystem from
|
||
Max Neklyudov (2014-7-3).
|
||
* arch/arm/src/stm32 and fs/procfs: Add a procfs entry to show the
|
||
state of the CCM heap usage. From Pelle Winderstam (2013-7-3).
|
||
* SAMA5 OHCI: Fix an error in a DEBUGASSERT statement. Caused assertion
|
||
to fire inappropriately when a low- or full-speed device was removed
|
||
and CONFIG_DEBUG=y (2013-7-3).
|
||
* SmartFS. Fix for a bug that would show up if CONFIG_MTD_BYTE_WRITE
|
||
was not selected and the SMART sector size was larger than the mt
|
||
device's block size (like it would be if using SMARTFS on larger
|
||
flash devices). From Ken Pettit (2014-7-3).
|
||
* tools/mkdeps.c: NAME_MAX not available on SunOS; use FILENAME_MAX
|
||
or MAXNAMELEN. Noted by Douglas Beattie (2014-7-4).
|
||
* drivers/mtd/smart.c: Increase some variables from uint16_t to uint32_t
|
||
to handle larger device sizes. From Ken Pettit (2014-7-4).
|
||
* SAMA5 OHCI: Pointers to allocated port values were not being nullified
|
||
after being deallocated. This caused some assertions to fire when
|
||
debug was enabled (2014-7-4).
|
||
* include/nuttx/net/ip.h and ipopt.h: ip.h renamed ipopt.h. Moved
|
||
parts of uip.h to net.h. Renamed the rest of uip.h to ip.h. Removed
|
||
all includes of uip.h; added includes of ip.h wherever needed.
|
||
Tried to fix problems of the now missing sneak inclusions because
|
||
uip.h was removed. There are probably a few of these that were
|
||
missed! (2014-7-4).
|
||
* drivers/input/mxt.c/h and include/nuttx/input/mxt.h: Add very basic
|
||
support for the Atmel maXTouch touchscreen controller (2014-7-5).
|
||
* net/*/*.h: Start moving the private definitions from header files
|
||
at include/nuttx/net to the corresponding header file under net/.
|
||
So far pkt.h, upd.h, and igmp.h have been sanitized. Still a few
|
||
to go (2014-7-5)
|
||
* configs/sama5d4-ek/src/sam_maxtouch.c: Add board support for the
|
||
maXTouch touchscreen controller (2014-7-5).
|
||
* net/*/*.h: Finish moving the private definitions from header files
|
||
at include/nuttx/net to the corresponding header file under net/.
|
||
This additional header files have been sanitized: arp.h, icmp.h, tcp.h
|
||
(2014-7-6)
|
||
* net/: Add a few missing configuration options to the Kconfig files
|
||
(2014-7-8).
|
||
* net/iob/iob_trimhead_queue.c and socket/recvfrom.c: Important fix to
|
||
the read-ahead buffer queue management: Consumed bytes were being
|
||
trimmed from the head of the queue, but the queue head itself was
|
||
not being updated. From Rony XLN (2014-7-7).
|
||
* drivers/bch: Add configurable AES encryption support to block-to-
|
||
character (BCH) driver. This allows any block device to be accessed
|
||
as an encrypted character device. From Max Nekludov (2014-7-7).
|
||
* SAM3/4: Fix compile of sam_aes.c if CONFIG_CRYPTO_AES is defined.
|
||
From Max Nekludov (2014-7-7)
|
||
* SAMA5D3/4 I2C: Test for read or write operation was reversed. How
|
||
could this have worked before? (2014-7-7).
|
||
* SAMA5D3/4 PIO Interrupts: Correct a typo in
|
||
arch/arm/src/sama5/sam_pio.h that could disable PIO interrupt support
|
||
if only PIOE interrupts were enabled (2014-7-7).
|
||
* SAMA5D4 PIO Interrupts: Macro SAM_PION_VBASE is not defined for the
|
||
SAMA5D4 and must be replaced with a table lookup (2014-7-7).
|
||
* configs/sam*: Fix some cloned errors in SAM GPIO interrupt setup
|
||
(1014-7-7).
|
||
* arch/arm/src/sama5/Kconfig and sam_allocateheap.c: Add a
|
||
configuration option to reserve DRAM for a framebuffer when executing
|
||
out of DRAM. This optional was available before when executing out of
|
||
NOR, but needs to work a little differently in this case (2014-7-7).
|
||
* arch/arm/src/sama5/sam_lcd.c and chip/sam_lcdc.h: Adapt the SAMA5D3
|
||
LCDC driver to work with the SAMA5D4 which has no hardware cursor
|
||
(2014-7-8).
|
||
* configs/sama5d4-ek: Add options to support an LCD (2014-7-7).
|
||
* arch/arm/src/sama5/sam_twi.c: Now support the up_i2creset() method
|
||
(2014-7-9)
|
||
* drivers/input/mxt.c: Use i2c_reset() if it thinks that the bus
|
||
might by hung (2014-7-9).
|
||
* arch/arm/src/sama5/sam_pio.c/.h: Add a new interface
|
||
sam_pio_forceclk() that can be used to force PIO clocking on. I am
|
||
afraid I was too conservative with PIO clocking in the initial design;
|
||
this is the price (2014-7-9).
|
||
* arch/arm/src/sama5/sam_twi.c: Use sam_pio_forceclk() so that we can
|
||
read the current state of an open-drain output in the TWI reset logic
|
||
(2014-7-9).
|
||
* arch/arm/src/sama5/sam_pio.c/.h: Fix a typo in Schmitt trigger
|
||
configuration; Configure pin as a a vanilla input first so that final
|
||
pin configuration is more read-able (i.e., easier to debug)
|
||
(2014-7-9).
|
||
* drivers/input/mxt: The maXTouch driver works! (2014-7-10).
|
||
* configs/sama5d4-ek: The TM7000 LCD works! (2014-7-10).
|
||
* configs/sama5d4-ek/NxWM: Add an NxWM configuration (2014-7-10).
|
||
* drivers/mtc_rwbuffer.c (and others): Add an MTD layer that will add
|
||
read-ahead or write buffering to any MTD driver (incomplete) (2014-7-11).
|
||
* arch/arm/src/lpc17xx/lpc17_ethernet.c: Comment out an assertion that
|
||
is reported to fire inappropriately. From Max (2014-7-11).
|
||
* drivers/mtd (mostly): Addition rwbuffer interfaces should not be
|
||
enabled unless they are needed; if rwbuffer support is enabled, it
|
||
should not be unconditionally enabled in SMART and FTL (2014-7-11).
|
||
* libnx/nxglib/nxglib_colorcmp.c and include/nuttx/nx/nxglib.h: New
|
||
utility to compare two colors (2014-7-11).
|
||
* graphics/Kconfig and nxbe/nxbe_configure.c: The initial background
|
||
color is now configurable (2014-7-11).
|
||
* graphics/nxmu/nxmu_server.c and nxsu/nx_setbgcolor.c: Don't change
|
||
the background if the color did not really change (2014-7-11).
|
||
* arch/arm/src/sama5/sam_ldc.c and sama5d4-ek/include/board.h: Back
|
||
out the delay kludge. The actual fix to the LDC instability was to
|
||
drive the LCD at 2xMCK instead of 1xMCK (2013-7-12).
|
||
* drivers/input/mxt.c: Fix an error in the state machine (2014-7-12).
|
||
* drivers/input/mxt.c: Add thresholding so that "move" reports are not
|
||
generated unless there is a significant change in the reported
|
||
position (2014-7-12).
|
||
* SAMA5D4-EK MXT: The maXTouch should be able to handler an I2C
|
||
frequency of 400KHz. Valid interrupts should occur only on the
|
||
falling edge of the ~CHG signal (2014-7-12).
|
||
* SAMA5D3x-EK: Use larger icons in NxWM configuration instead of
|
||
scaling (2014-7-14).
|
||
* Graphics: Rename CONFIG_NX_MOUSE to CONFIG_NX_INPUT, then add
|
||
CONFIG_NX_XYINPUT_MOUSE and CONFIG_XYINPUT_TOUCHSCREEN (2014-7-16).
|
||
* drivers/input/mxt.c: Fix error in threshoold test... backward
|
||
logic (2014-7-16).
|
||
* graphics/nxconsole/nxcon_scroll.c: Fix scrolling in the NxConsole
|
||
for the case of the framebuffer device. In this case, the logic
|
||
for clearing the vacated region at the bottom was missing so garbage
|
||
up from the last, uncleared line (2014-7-17).
|
||
* drivers/audio/wm8904.c/.h and include/nuttx/audio.wm8904.h: Framework
|
||
for a WM8904 audio driver. The initial driver check-in is simply Ken
|
||
Pettit's VS1053 driver forced to compile with only WM8904 definitions
|
||
(2014-7-18).
|
||
* configs/sama5d4-ek/src/sam_wm8904.c: Add logic to configure and
|
||
initialize the WM8904 audio CODEC (2014-7-17).
|
||
* arch/arm/src/sama5/sam_sckc.c/.h and chip/sam_sckc.h: Add SAMA5
|
||
slow clock support.
|
||
* arch/arm/src/sama5/sam_pck.c and .h: Add support to use the slow
|
||
clock as the PCK clock source (2014-7-19).
|
||
* drivers/audio/wm8904.c/: The WM8904 audio driver is mostly code
|
||
complete and ready to begin initial testing (2014-7-19).
|
||
* arch/arm/src/sama5/sam_pio.c: Logic for Schmitt trigger selection
|
||
backward (2014-7-20).
|
||
* drivers/net/slip.c: Fix an error in SLIP escaping. From Max
|
||
Neklyudov (2014-7-22).
|
||
* drivers/input/Kconfg: Add missing configuration option to select the
|
||
MAX11802 touchscreen controller. From Petteri Aimonen (2014-7-22).
|
||
* arm/src/stm32/chip/stm32_dac.h: Fix typos, from Peterri Aimonen
|
||
(2014-7-22).
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c: STM32 OTGFS device: Various
|
||
changes to try to reduce that amount of time in interrupts handles and
|
||
with interrupts disbled. Needs verification on other platforms. From
|
||
Petteri Aimonen (2014-7-22).
|
||
* arch/arm/src/sama5/sam_pck.c: Fix a recently introduced typo that was
|
||
being masked by some bad conditional compilation (2015=4-7-22).
|
||
* drivers/audio/wm8904.c and include/nuttx/audio/wm8904.h: Remove WM8904
|
||
driver unused parameters, clean-up comments, remove some kruft in
|
||
capability reporting (2014-7-22).
|
||
* audio/Makefile and pcm_decode.c, include/nuttx/audio/pcm_decode.c,
|
||
configs/sama5d4-ek/src/sam_wm8904.c and others: Add new framework for
|
||
the PCM decoder. It is now a 'front end' for lower-level drivers like
|
||
the WM8904 that performs the PCM decoding from end (2014-7-22).
|
||
* audio/pcm_decode.c, configs/sama5d4-ek/src/sam_wm8904.c,
|
||
drivers/audio/wm8904.c, and include/nuttx/audio/pcm.h: Rename
|
||
pcm_decode.h to pcm.h since it will hold more than just decoding
|
||
definitions. Fix some porting errors like idbg should auddbg, etc.
|
||
Add wav file header and a few low-level wav utilities (2014-7-22).
|
||
* audio/pcm_decode.c and include/nuttx/audio/pcm.h: Flesh out a few
|
||
more PCM methods, still incomplete. Re-vision PCM structure
|
||
definition (2014-7-22).
|
||
* configs/sama*: Disable MMC/SD multiblock transfers in all SAMA5D3/4
|
||
configurations. I suspect an issue but have not had time to run it
|
||
down yet so the easiest thing is simply to disable the feature for
|
||
now (2014-7-23).
|
||
* drivers/audio/audio_null.c, include/nuttx/audio/audio_null.c, and
|
||
configs/sama5d4-ek/src/sam_audio_null.c: Add a NULL audio device that
|
||
can be used to simply unit-level testing of audio decoders (2014-7/23).
|
||
* audio/pcm_decode.c, include/nuttx/audio/audio.h, and drivers/audio/audio_null.c
|
||
and wm8904.c: Add ioctls so that PCM decoder can configure the driver
|
||
bitrate, num channels, and sample width (2014-7-23).
|
||
* drivers/audio/Kconfig: Fix a typo in the audio Kconfig file,
|
||
UDIO->AUDIO (2014-7-23).
|
||
* configs/sama5d4-ek/nxwm/defconfig: The NxPlayer and audio system are
|
||
now enabled in the default configuration (although they have not yet
|
||
been fully integrated into the NxWM media player) (2014-7-23).
|
||
* configs/sama5d4-ek/nsh/defconfig: Enable the command line media player
|
||
in the NSH configuration as well (still does not work, however)
|
||
(2014-7-23).
|
||
* audio/Kconfig, audio.c, and include/nuttx/audio/audio.h: Add hooks for
|
||
fast-forward and rewind needed by CMediaPlayer; add hooks for
|
||
equalizer settings needed by the WM8904 (2014-7-24).
|
||
* drivers/audio/audio_null.c and wm8904.c: Fix some compile errors when
|
||
audio DEBUG is enabled (2014-7-24).
|
||
* SAMA5D4-EK NxWM: Configuration refreshed (2014-7-24).
|
||
* arch/arm/src/armv7-m/up_initialstate.c: Correct the initial value of
|
||
the BASEPRI register. This was apparently never being initialized!
|
||
From Max (2014-7-24).
|
||
* configs/mbed/src/up_adc.c, up_dac.c, and up_pwm.c and include/board.h:
|
||
Port ADC, DAC, and PWM logic from the configs/zkit-arm-1769. From Max
|
||
(2014-7-24).
|
||
* arch/arm/src/lpc17xx/lpc176x_rtc.c: Eliminate warnings. From Max
|
||
(2014-7-24).
|
||
* arch/arm/src/lpc17xx/lpc17_pwm.c, lpc17_timer.c, lpc17_dac.c: Mostly
|
||
cosmetic updates from Max (2014-7-24).
|
||
* arch/arm/src/lpc17xx/lpc17_adc.c and Kconfig : Added burstmode ADC
|
||
conversion mode, with CONFIG_ADC_BURSTMODE option in Kconfig. From
|
||
Max (2014-7-24).
|
||
* arch/arm/src/lpc17xx/lpc17_ethernet.c: Added option to use the kernel
|
||
worker thread to do most of the workload with CONFIG_NET_WORKER_THREAD
|
||
option in Kconfig. Eliminated a problem with PHY DP83848C : it doesn't
|
||
need a specific initialization on mbed. Critical bugfix: From time to
|
||
time (after some hours) the Ethernet receiver would lose one receive
|
||
interrupt and the IP stack never recover because there is no receive
|
||
watchdog as the transmit watchdog. From Max (2013-7-24).
|
||
* audio/pcm_decode.c: Add missing audio callback forwarding logic
|
||
(2014-7-25).
|
||
* arch/arm/armv7-a/l2cc_pl310.h: Move arch/arm/sama5/chip/sam_l2cc.h to
|
||
arch/arm/armv7-a/l2cc_pl310.h. Adjust the two corresponding Kconfig
|
||
files as well (2014-7-25).
|
||
* arch/arm/src/armv7-a/arm_l2cc_pl310.c, l2cc.h, l2cc_pl310.h, Kconfig:
|
||
Add initial support for the ARM L2CC-PL310 L2 cache (2014-7-26).
|
||
* arch/arm/src/armv7-a/cp15_cacheops.h: Rename ARMv7-A cache.h to
|
||
cp15_cache.h. Things will be broken on this commit until I get the
|
||
new cache.h in place (2014-7-26).
|
||
* arch/arm/src/armv7-a/cache.h: New cache.h file. Renames all functions
|
||
like cp15_XYZ_cache() to arch_XYZ_cache() and adds L2 cache support if
|
||
L2 cache is enabled (2014-7-26).
|
||
* arch/arm/src/sama5/*.c (many files): Change naming from cp_XYZ_cache()
|
||
to arch_XYP_cache() so that all cache operations will pick up L2
|
||
support if it is enabled (2014-7-26).
|
||
* arch/arm/src/sama5/sam_boot.c: Enables cache early in boot-up sequence
|
||
(2014-7-26).
|
||
* arch/arm/src/armv7-a/arm_l2cc_pl310.c and l2cc.h: Minor bugfixes/
|
||
improvements (2014-7-26)
|
||
* arch/arm/src/armv7-a/Kconfig: L2 Cache currently depends on
|
||
EXPERIMENTAL because it does not yet work properly (2014-7-26).
|
||
* include/nuttx/audio/audio.h: Move sub-sampling rate definitions from
|
||
nxplayer.h to audio.h (2014-7-17).
|
||
* audio/pcm_decode.c: PCM: First cut at fast forward by sub-sampling.
|
||
This design is overkill: It manages too many audio buffers. I think
|
||
that a cleaner design could do all sub-sampling in place without
|
||
managing additional audio buffers (2014-7-27).
|
||
* drivers/audio/audio_null.c: Was not returning buffers to the upper
|
||
level (2014-7-27)
|
||
* include/nuttx/audio/audio.h and audio/pcm_decode.c: Misc bugfixes
|
||
while integrating fast forward by sub-sampling (2014-7-27).
|
||
* audio/pcm_decode.c: Back out a change; the fix really belongs in
|
||
NxPlayer. (2014-7-27).
|
||
* arch/arm/src/lpc17xx/lpc17_adc.c and arch/arm/src/lpc17xx/lpc17_ethernet.c:
|
||
ADC updates from Max. Also fixes some syntax errors that I introduced in
|
||
the last commit (2014-7-28).
|
||
* audio/pcm_decode.c: Fix a logic error in a DEBUG assertion (2014-7-28).
|
||
* configs/sama5d4-ek/src/sam_pmic.c, dram_main.c, sama5d4-ek.h, Makefile.
|
||
Add logic to disable the faulty PMIC. This must be done with JP23 open.
|
||
It is performed only from the DRAMBOOT loader (2014-7-28).
|
||
* drivers/audio/wm8904.c: Fix some compile problems with the WM8904 driver
|
||
due to recent audio subsystem changes (2014-7-28).
|
||
* arch/arm/src/sama5/sam_timerisr.c and configs/sama5d3*/include/board*.h:
|
||
Correct system timer frequency. Input clock is MCK/2, not MCK
|
||
(2014-7-29).
|
||
* fs/fs_automount.c and include/nuttx/fs/automount.h (plus hooks in other
|
||
files): Add support for an auto-mounter that will automatically mount
|
||
and unmount a file system a media is inserted and removed (2014-7-29 .
|
||
* configs/sama5d4-ek/src/sam_automount.c: Add automounter support for
|
||
HSMCI0 and HSMCI1 (2014-7-29).
|
||
* configs/sama5d4-ek/Kconfig and src/sam_hsmci.c: Minor warning/latent
|
||
bug clean-up of auto-mounter logic (2014-7-29).
|
||
* configs/sama5d4-ek/README.txt anand src/sam_nsh.c, fs/fs_automount.c,
|
||
and include/nuttx/fs/automount.h: Cosmetic updates to comments and
|
||
README files and some naming (2014-7-29).
|
||
* configs/sama5d4-ek/nsh/defconfig and nxwm/defconfig: The SAMA5D4-EK
|
||
NSH and NxWM configurations now have the auto-mounter configured to
|
||
automatically mount the FAT file system on HSMCI0 at /mnt/sdcard
|
||
(2014-7-29).
|
||
* arch/arm/src/sama5/sam_hsmci.c: Add method to do RX transfer without
|
||
DMA. The 8-byte SCR transfer was failing silently with the DMA
|
||
transfer, leaving the SD card in single bit mode (2014-7-29).
|
||
* arch/arm/src/sama5/sam_hsmci.c: Fix a problem on card insertion/removal
|
||
callback handling. Interrupts were being disable so that the callbacks
|
||
occurred with interrupts disabled. This resulted in loss of some
|
||
interrupts and some not-so-good behaviors. The solution is to perform
|
||
all callbacks on the work thread unconditionally (2014-7-30).
|
||
* nuttx/fs/fs_automount.c: Auto-mounter: Fix state setting. Not
|
||
harmful other than it can cause a debug assertion to fire if you
|
||
manually unmount the media before removing it which is, of course,
|
||
what you are supposed to do (2014-7-30).
|
||
* arch/arm/src/sama5/sam_hsmci.c and README files: Re-enable TX DMA and
|
||
verify that DMA writes to the SD card are functional. They are so now
|
||
TX DMA is re-enabled in the driver. This might affect the SAMA5D3
|
||
platforms where the TX DMA problem was found. The SAMA4D3 and 4 use
|
||
the same HSMCI driver. Much has change since then and it is not
|
||
surprising that DMA is now functional. However, the has not be re-
|
||
verified on the SAMA5D3 which has a different DMA controller
|
||
(2014-7-30).
|
||
* arch/arm/src/sama5/sam_dmac.c, sam_pio.c, and sam_pioirq.c: Changes
|
||
needed for a clean SAMA5D3 build after all of the recent SAMA5D4
|
||
changes (2014-7-31).
|
||
* configs/sama5d3x-ek/nsh/defconfig: Refresh configuration (2014-7-31).
|
||
* configs/sama5d3x-ek/Kconfig, README.txt, src/sam_wm8904.c, Makefile,
|
||
sam_nsh.c, and sama5d3x-ek.h: Add support for the WM8904 audio CODEC
|
||
(2014-7-31).
|
||
* configs/sama5d3x-ek/nxplayer: Add a configuration to support the
|
||
command line NxPlayer (2014-7-31).
|
||
* audio/audio.c: More debug output (2014-7-31).
|
||
* configs/sama5d3x-ek/README.txt: REAME update (2014-7-31).
|
||
* drivers/audio/wm8904.c: Was not saving i2s interface instance
|
||
(2014-7-31).
|
||
* sched/sem_wait.c: Use set_errno() and get_errno(). Direct access
|
||
inside the OS may not be supported in the future (2014-7-31).
|
||
* drivers/audio/audio_null.c, vs1053.c, wm8904.c, include/nuttx/audio/audio.h,
|
||
libc/audio/lib_buffer.c: Change how the end of the audio stream is
|
||
detected by the leaf audio component. This used to be done by looking
|
||
for the first partial buffer. That does not work with the in-place
|
||
sub-sampling performed by the PCM decoder: That always reduces the
|
||
size of the buffer so that all buffers only partially filled by the
|
||
time they get to the leaf. Now, a flag is set in the audio buffer
|
||
flags set to indicate the final buffer in the stream (2014-7-31).
|
||
* arch/arm/src/sama5/sam_ssc.c: Needs to account for data offset in
|
||
audio buffer (2014-7-31).
|
||
* drivers/audio/wm8904.c: Can't reset the WM8904 unless we also
|
||
reinitialize all registers. Try to get a saner timeout based on
|
||
sample rate, bits-per-sample, and buffer size (2014-7-31).
|
||
* arch/arm/src/sama5/Kconfig and sam_ssc.c: SCC Frame Synch Delay and
|
||
Start Delay are now configurable (2014-8-1).
|
||
* drivers/audio/wm8904_debug.c: Add logic to dump WM8904 registers
|
||
(2014-8-1).
|
||
* drivers/audio/wm8904.c: Fix an error in write logic. I am not sure
|
||
why this fixes the problem (2014-8-1).
|
||
* include/nuttx/audio/wm8904.h (and implementers of the interface):
|
||
the WM8904 driver needs to know the frequency of the MCLK in order
|
||
to set up the FLL to generate the correct bitrate (2014-8-1).
|
||
* WM8904: Add an option to control WM8904 register dumping (2014-8-2).
|
||
* WM8904: Add logic to program the FLL to achieve the bitrate
|
||
(2014-8-1).
|
||
* arch/arm/src/sama5/sam_ssc.c: Verify that the requested bit width
|
||
is supported. Correct some alignment tests that depend upon the data
|
||
bit width (2014-8-2).
|
||
* audio/pcm_decode.c: Correct the end of audio stream handling. It was
|
||
not being detected before so that logic was not examining the WAV
|
||
header in the first buffer of the next audio file (2014-8-2).
|
||
* configs/sama5d3x-ek/nxplayer/defconfig: Update with last WM8904
|
||
settings (2014-8-2).
|
||
* drivers/audio/wm8904.c: Disable the FFL at the end of playing
|
||
(2014-8-2).
|
||
* include/nuttx/audio/wm8904.h: Fix wm8904_dump_registers macro:
|
||
Wrong number of parameters (2014-8-2).
|
||
* arch/arm/src/sama5/sam_pck.* and all SAMA5D board header files:
|
||
Add Main clock as an option for the PCK clock source (2014-8-3).
|
||
* configs/sama5d*-ek/Kconfig and src/sam_wm8904.c: Add option to
|
||
use MAINCK as source fort he WM8904 MCLK (2015-8-3).
|
||
* include/nuttx/audio/wm8904.h, configs/sama5d3x-ek/src/sam_wm8904.cm,
|
||
and sama5d4-ek/src/sam_wm8904.c: WM8904 interface enable method now
|
||
returns the previous interrupt state (2014-8-4).
|
||
* configs/sama5d3x-ek/src/sama5d3x-ek.h and sama5d4-ek/src/sama5d4-ek.h:
|
||
Correct the WM8904 interrupt configuration, active high level. Fix
|
||
that and don't pull-up (2014-8-4).
|
||
* configs/sama5d3x-ek/src/sam_wm8904.cm, and sama5d4-ek/src/sam_wm8904.c:
|
||
Correct ordering of some WM8904initialization: Need to provide MCLK
|
||
before initializing the WM8904, not after (2014-8-4).
|
||
* drivers/audio/wm8904.c and .h: Correct calculation of bitrate (I am
|
||
not sure why this is correct). LR clock divisor is now a constant 32-
|
||
bits per frame. Conditioned out interrupt logic; it is not being used.
|
||
Also added some FLL lock interrupt/poll logic (which was subsequently
|
||
disabled) (2014-8-4).
|
||
* SAMA5D3x-EK and SAMA4D4-EK: Add/update usage documents for media
|
||
players (2014-8-4).
|
||
* drivers/audio/wm8904.c and .h: Add reset logic to put the part back
|
||
in its initial state after playing each WAV file. Base samples per
|
||
second on frame length, not bits-per-sample. Use a different frame
|
||
length for 8-bit and 16-bit data (2014-8-4).
|
||
* arch/arm/src/sama5/sam_hsmci.c: TX DMA is again disabled for the
|
||
SAMA5D3 family. Although it works with the SAMA5D4 (which has a
|
||
different DMA subsystem), it does not work with the SAMA5D3 (2014-8-5,
|
||
see also 2014-7-30).
|
||
* audio/pcm_decode.c: Handle errors in the PCM WAV file in a way that
|
||
the Nxplayer can recover gracefully: Send and Audio Complete message
|
||
(2014-8-5).
|
||
* arch/*/src/*/*_timerisr.c, up_initialize.c, and up_internal.h: Re-name
|
||
up_timerinit() to up_timer_intialaize() for compatibility with new
|
||
tickless OS interface name (2014-8-6).
|
||
* arch/*/src/*/Make.def: Don't build existing timer initialization
|
||
logic if CONFIG_SCHED_TICKLESS is defined (2014-8-6).
|
||
* include/nuttx/arch.h: First cut at platform-specific interfaces
|
||
needed to support tickless OS option (2014-8-6).
|
||
* sched/Kconfig: Add a new option CONFIG_SCHED_TICKLESS to enable the
|
||
tickless OS. This is a work in progress but should be relatively
|
||
safe since the new features are only enabled by this option (Safer
|
||
but not 100% safe since it does not protect from typos and other
|
||
dumb errors) (2014-8-6).
|
||
* arch/sim/src/Makefile, up_idle.c, up_internal.h, and up_tickless.c:
|
||
Add support for a simulated interval timer support verification of
|
||
the tickless OS (2014-8-6).
|
||
* include/nuttx/arch.h: Added another tickless OS interface to get
|
||
the timer remaining on the interval timer (2014-8-6).
|
||
* include/nuttx/clock.h, sched/clock_initialize.c and clock_internal.h:
|
||
If CONFIG_SCHED_TICKLESS is defined, then the global variable
|
||
g_system_timer does not exist (2014-8-6).
|
||
* sched/Makefile: Don't build in sched_processtimer.c if
|
||
CONFIG_SCHED_TICKLESS is selected (2014-8-6).
|
||
* sched/clock_gettime.c and clock_settime.c: Use the clock_systimer()
|
||
macro, do access the g_system_timer() global directly (2014-8-6).
|
||
* sched/clock_systimer.c: Uses interval timer interfaces to get the
|
||
time if CONFIG_SCHED_TICKLESS is selected (2014-8-6).
|
||
* sched/sched_timerexpiration.c, Makefile, os_internal.h,
|
||
sched_addreadytorun.c, sched_processtimer.c, sched_unlock.c,
|
||
wd_cancel.c, wd_internal.h, and wd_start.c: Implements the
|
||
tickless OS (2014-8-7).
|
||
* Many files: Remove CONFIG_DISABLE_CLOCK. Why? This option is not
|
||
really very useful and was only selected in a few unusable, mostly
|
||
unusable configurations anyway (m9s12/ostest, kl25z/minnsh,
|
||
z180/ostest, 8051, sh1, z80, and z8). The only real loss is probably
|
||
to the kl25z/minsh configuration . And with the addition of the
|
||
tickless OS, I just wanted to make the pain go away (2014-8-7).
|
||
* Many files: Change CONFIG_MSEC_PER_TICK to CONFIG_USEC_PER_TICK.
|
||
This gives more options for system timers in general, but more
|
||
importantly, let's us realize higher resolution for the case of
|
||
CONFIG_SCHED_TICKLESS=y -- of course, at the risk of some new
|
||
integer overflow problems 2014-8-7).
|
||
* Many files: Change all time conversions. Yech. New timer units
|
||
in microseconds breaks all existing logic that used milliseconds
|
||
in the conversions. Something likely got broken doing this,
|
||
probably because I confused a MSEC2TICK conversion with a TICK2MSEC
|
||
conversion (2014-8-7).
|
||
* arch/sim/src/up_tickless.c and sched/sched_timerexpiration.c: The
|
||
tickless OS now appears fully functional and passes the OS test
|
||
on the simulator with no errors (2014-8-7).
|
||
* sched/mqueue: Move POSIX message queue files from sched/ to
|
||
sched/mqueue (2014-8-8).
|
||
* sched/signal: Move signal-related files from sched/ to sched/signal
|
||
(2014-8-8).
|
||
* sched/pthread: Move all pthread files from sched/ to sched/pthread
|
||
(2014-8-8).
|
||
* sched/semaphore: Move POSIX counting semaphore files from sched/ to
|
||
sched/semaphore (2014-8-8).
|
||
* sched/environ: Move environment files from sched/ to sched/environ
|
||
(2014-8-8).
|
||
* sched/group: Move group logic from sched/ to sched/group (2014-8-8).
|
||
* sched/wdog: Move watchdog functions from sched/ to sched/wdog
|
||
(2014-8-8).
|
||
* sched/irq: Move interrupt dispatch logic from sched/ to sched/irq
|
||
(2014-8-8).
|
||
* sched/clock: Move clock functions from sched/ to sched/clock
|
||
(2014-8-8).
|
||
* sched/timer: Move POSIX timer files from sched/ to sched/timer
|
||
(2014-8-8).
|
||
* sched/paging: Move page fill sources from sched/ to sched/paging
|
||
(2014-8-8).
|
||
* sched/init: Move initialization functions from sched/ to sched/init
|
||
(2014-8-8).
|
||
* sched/errno: Move errno related files from sched/ to sched/errno
|
||
(2014-8-8).
|
||
* sched/task: Move task control files from sched/ to sched/task
|
||
(2014-8-8).
|
||
* sched/: Move a few files in sched/ that did not seem to have a home to
|
||
sched/signal and sched/task (2014-8-8).
|
||
* sched/sched: Move scheduler files from sched/ to sched/sched
|
||
(2014-8-8).
|
||
* (Many files): Replace os_internal.h with sched/sched.h in files that
|
||
actually reference something in sched.h (2014-8-8).
|
||
* sched/task/exit.c: Move sched/exit.c to sched/task/exit.c (2014-8-8).
|
||
* (Many files): Remove os_internal.h it has been replace by several new
|
||
header files under sched/. There have been some sneak inclusion paths
|
||
via os_internal.h, so expect a few compilation errors for some
|
||
architectures (2014-8-8).
|
||
* Documentation/NuttxPortingGuide.html, arch/sim/src/up_tickless.c, and
|
||
include/nuttx/arch.h: Fix errors in documentation and comments related
|
||
to the Tickless OS. From Vijay Kumar (2014-9-9).
|
||
* arch/arm/src/sama5/sam_tc.c and .h: Can now handle non-constant
|
||
BOARD_MCK_FREQUENCY. Also now supports methods to attach user
|
||
interrupt handlers (2014-8-9).
|
||
* drivers/audio/audio_null.c: Fix an error in a variable name
|
||
(2014-8-9).
|
||
* arch/arm/src/sama5/sam_oneshot.c, .h, Kconfig, Make.defs, sam_tc.c,
|
||
.h, and sam_adc.c: Add support for a one-shot timer wrapper around
|
||
the low-level timer/counter logic. This also involved several changes
|
||
that rippled into the ADC driver (untested) (2014-8-9).
|
||
* arch/arm/src/sama5/sam_freerun.c, .h, Kconfig, and Make.defs: Add
|
||
support for a free-running timer wrapper around the low-level
|
||
timer/counter logic (2014-8-9).
|
||
* arch/arm/Kconfig, src/sama5/sam_tickless.c, Kconfig, Make.defs: Use
|
||
the one-shot and free-running timers to implement tickless OS support
|
||
for SAMA5 (2014-8-9).
|
||
* arch/arm/src/sama5/sam_oneshot.c and sam_tc.c: Fix several bugs in
|
||
timer/counter interrupt logic and one-shot timer logic. Comments and
|
||
debug output updated in additional files (2014-8-10).
|
||
* sched/wdog/wd_start.c: Correct a bug in Tickless OS support: logic to
|
||
detect changes in head of timer list was wrong (2014-5-10).
|
||
* sched/sched/sched_timerexperation.c, sched.h, and wdog/wd_start.c: In
|
||
tickless mode, need to stop the interval timer before inserted a new
|
||
delay into the timer list. Otherwise, the time is incorrect on the
|
||
first entry of the list (2014-8-11).
|
||
* arch/arm/src/sama5/sam_freerun.c and sam_oneshot.c: Correct bad time
|
||
conversion, 1000000 not 1000 to convert seconds to microseconds
|
||
(2014-8-11).
|
||
* sched/sched/sched_timerexpiration.c: Fix inaccurate time conversion.
|
||
Remove MSEC_PER_TICK from calculation and convert uint32_t to uin64_t
|
||
(2014-8-11).
|
||
* libc/time/lib_localtime.c, private.h, tzfile.h and several header and
|
||
make-related files: Adds support for localtime. From Max Neklyudov
|
||
(2014-8-12)
|
||
|
||
7.5 2014-09-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* clock/clock_systimespec.c and sched/clock/clock_gettime.c: When
|
||
reading the system timer, don't read a struct timespec, convert it
|
||
to a fake tick count, then back to a timespec (2014-8-15).
|
||
* sched/clock/Make.defs, clock_gettime.c, clock_settime.c, include/time.h,
|
||
nuttx/clock.h, configs/vsn/src/sif.c: Remove CLOCK_ACTIVETIME. It is non-
|
||
standard, unused, and gets in the way of maintaining clocks (2014-8-15).
|
||
* libc/time/lib_localtime.c: Modified to that the coding style is much
|
||
closer to NuttX coding style. The local header files private.h and
|
||
tzfile.h were removed and incorporated into lib_localtime.c. All
|
||
conditional compilation within lib_localtime.c that unconditionally
|
||
evaluated to FALSE was removed (2014-8-15).
|
||
* drivers/net/Kconfig and include/nuttx/arch.h: Standardize a PHY
|
||
interrupt attachment interface (2014-8-16).
|
||
* configs/Kconfig, sama5d3-xplained, sama5d3x-ek, and sama5d4-ek:
|
||
Convert existing board specific PHY interrupt interfaces to use newly
|
||
defined standard interface (2014-8-16).
|
||
* include/net/slip.h: Move SLIP prototypes from net.h to slip.h
|
||
(2014-8-16).
|
||
* include/net/net.h and net/: Fix some missing function headers
|
||
(2014-8-16).
|
||
* drivers/net/phy_notify.c, include/nuttxarch.h, net/phy.h, and
|
||
ioctl.h: Add support for an ioctl that can be used to notify an
|
||
application when there is a change in the network status signalled
|
||
by a PHY interrupt (2014-8-16).
|
||
* drivers/net/phy_notify.c, include/net/if.h, ioctl.h, netdev.h, phy.h,
|
||
and net/netdev/netdev_ioctl.c: Finishes the ioctl definition to
|
||
subscribe to PHY events. Revamp network ioctl signature to support
|
||
arguments other than struct mii_ioctl_data (2014-8-16).
|
||
* arch/arm/src/stm32/stm32_eth.c: Modified to support the change to the
|
||
network ioctl signature changes. Also add support for new ioctl to
|
||
setup PHY event notifications (2014-8-16).
|
||
* arch/arm/src/sama5/sam_emaca.c, sam_emacb.c, and sam_gmac.c: Implement
|
||
all network ioctls, including the new ioctl to setup PHY event
|
||
notifications (2014-8-16).
|
||
* include/net/if.h: Add some helper macros to make the code that uses
|
||
the ioctls a little more compact (2014-8-17).
|
||
* libc/stdio/lib_sscanf.c: NuttX libc tried to guess how many characters
|
||
to parse, extracted them into a buffer, then ran strtol() on that
|
||
buffer. That guess is often wrong. A better approach would be to
|
||
call strtol() directly on the input data, using the endptr return
|
||
value to determine how many characters to skip after parsing. From
|
||
Kosma Moczek (2014-8-18).
|
||
* net/arp/arp_dump.c: Add missing configuration option to select
|
||
dumping of ARP packet headers. Move ARP dumping logic from
|
||
arp_inout.c to its own file (2014-8-18).
|
||
* net/arp/arp_out.c: Move arp_out() from arp_inout.c to its own file
|
||
(2014-8-18).
|
||
* net/arp/arp_arpin.c: Move arp_arpin() from arp_inout.c to its own file
|
||
(2014-8-18).
|
||
* net/arp/arp_ipin.c: Rename arp_inout.c to arpipin.c because that is
|
||
all that is left in the file (2014-8-18).
|
||
* net/arp/arp_format.c: Move the logic that formats an ARP packet into a
|
||
separate file where it can be re-used. (2014-8-18).
|
||
* net/arp/arp_out.c and net/pkt/pkt_send.c: Change how the IFF_NOARP
|
||
flag is handled. This should be set only when data is moved into the
|
||
buffer and cleared after tested by the ARP logic. Setting it globally
|
||
can cause packets to be sent with no valid MAC addresses (2014-8-18).
|
||
* net/arp/arp_send.c: Partial implementation of logic to send ARP
|
||
requests to assure that an IP address mapping is present in the ARP
|
||
table (2014-8-18).
|
||
* net/arp/arp_poll.c: Finished the implementation of logic to send ARP
|
||
requests. Complete, fully hooked into the networking logic, and ready
|
||
for test (but still untested) (2014-8-18).
|
||
* net/icmp/icmp_ping.c, net/socket/net_sendfile.c, sendto.c,
|
||
net/tcp/tcp_send_buffered.c, and tcp_send_unbuffered.c: If
|
||
CONFIG_NET_ARP_SEND is enabled, then all ICMP, TCP, and UDP send
|
||
operations will call arp_send() before attempting the real send
|
||
operation. arp_send() will check if the IP address mapping is in
|
||
the ARP table and, if not send ARP requests periodically until it is.
|
||
This eliminates losing the first outgoing message because there is not
|
||
mapping in the ARP table (2014-8-18).
|
||
* net/arp/arp_notify.c, arp_send.c, arp_arpin.c, and arp.h: Add
|
||
signalling logic so that we do not have to wait so long with the
|
||
network responses to ARP requests quickly (2014-8-19).
|
||
* include/nuttx/lcd/ili9341.h: Add a register definition header file
|
||
for the ILI9341 LCD (2014-8-19).
|
||
* net/arp/Kconfig: ARP request logic is no longer EXPERIMENTAL
|
||
(2014-8-20).
|
||
* net/arp/arp_send.c: ARP request logic needs to do the right thing if
|
||
(1) the address is a broadcast or multicast address, and (2) if the
|
||
IP address lies outside of the network. Problem noted by Manuel Stuehn
|
||
(2014-8-20).
|
||
* configs/sam4e-ek/src/Kconfig and src/sam_ili9341.c: Add ILI9341-based
|
||
LCD driver. Fully functional (2014-8-20).
|
||
* configs/sam4e-ek/nxwm: Add an NxWM configuration for the SAM4E-EK
|
||
(2014-8-21).
|
||
* configs/viewtool-stm32f107: Refresh some configurations (2014-8-20).
|
||
* nuttx/sched/wdog: If we run out of pre-allocated watchdog times, the
|
||
logic will allocate additional timers from the heap. A reserve of
|
||
pre-allocated watchdog timers is maintained so that there will always
|
||
be timers available for interrupt handlers (2014-8-21).
|
||
* include/nuttx/wdog.h (and many affected files): wdog.h does not
|
||
contain any application interface, only internal OS interface.
|
||
Further, it is non-standard. Move wdog.h from include/ to
|
||
include/nuttx (2014-8-21).
|
||
* Documentation/NuttxPortingGuide.h: For the same reason as above, move
|
||
the description of the watchdog timer interfaces from the Users Guide
|
||
to the Porting Guide (2014-8-21).
|
||
* arch/arm/src/stm32/stm32_uart.h: STM32 F401: Correct support for
|
||
USART6 on this chip. From Freddie Chopin (2014-8-22).
|
||
* nuttx/sched/wdog and include/nuttx/wdog.h: Add support for statically
|
||
allocated watchdog timer (also eliminate some unconventional typing)
|
||
(2014-8-22).
|
||
* configs/p112/ostest and tools/mkdeps.c: Changes to try to get P112 to
|
||
compile with latest SDCC (it still does not) (2014-8-22).
|
||
* sched/group/group_leave.c: Need to release the address environment when
|
||
the task group is released (2014-8-22).
|
||
* mm/mm_granreserve.c and and mm_granmark.c: gran_reserve(): Add a
|
||
new function to reserve unallocatable regions in the granule heap
|
||
(2014-8-23).
|
||
* include/nuttx/pgalloc.h and mm/mm_pgalloc.c: Add a simple page
|
||
allocator based on the existing NuttX granule allocator. I am not
|
||
certain if the granule allocator is sufficiently deterministic for
|
||
long range use, but it gets get a page allocator in place for testing
|
||
very quickly (2014-8-23).
|
||
* ARMv7-A: Add skeleton implementation and build support for process
|
||
address environments (2014-8-23).
|
||
* Many files: Change CONFIG_ADDRENV to CONFIG_ARCH_ADDRENV; change how
|
||
it is selected -- the architecture must first declare support
|
||
(2014-8-24).
|
||
* include/nuttx/addrenv.h, arch/arm/include/arch.h, armv7-a/irq.h, and
|
||
other files: Add addrenv.h; First cut at Cortex-A address environment
|
||
structures; Add configuration options to setup address environment
|
||
(2014-8-24).
|
||
* addrenv interface changes: up_addrenv_create() may need to create
|
||
.text and .bss/.data separately because of differing access privileges
|
||
(read/execute vs read/write). And, as a consequence, up_addrenv_vaddr()
|
||
needs to be split into up_addrenv_vtext() and up_addrenv_vdata().
|
||
Affects several files (2014-8-24).
|
||
* arch/arm/src/armv7-a/arch_coherent_cache.c: New file. These cache
|
||
operations are called from the ELF loader in order to flush D-cache
|
||
and invalidate I-cache after an ELF module has been loaded into memory.
|
||
With this change, ELF modules work correctly on the SAMA5/Cortex-A
|
||
platform (2014-8-24).
|
||
* configs/sim: Add build support for ELF modules. Useless at the moment
|
||
because there is no x86 relocation logic support (2014-8-25).
|
||
* configs/sim: Update some sim/ defconfig files. This now automatically
|
||
switches them to x86_64 builds (2014-8-25).
|
||
* arch/arm/include/arch.h, armv7-a/irq.h, src/armv7-a/arm_addrenv.c,
|
||
armv7-a/arm_mmu.c/.h, sama5/Kconfig, Make.defs, sam_pgalloc.c,
|
||
include/nuttx/addrenv.h, arch.h, pgalloc.h, mm/Kconfig, mm_pgalloc.c,
|
||
sched/init/os_start.c: Cortex-A/SAMA5 address environment support is
|
||
code complete (untested) (2014-8-25).
|
||
* arch/arm/include/tiva and src/tive: Add support for the TI CC3200.
|
||
From Jim Ewing (2014-8-26).
|
||
* configs/cc3200-launchpad: Add support for the TI CC3200 Launchpad.
|
||
From Jim Ewing (2014-8-26).
|
||
* arch/*/*_blocktask.c, arch/*/*_unblocktask.c, and arch/*/*_exit.c:
|
||
Add address environment support to all implementation of up_block_task(),
|
||
up_unblock_task(), and _exit() (2014-8-31).
|
||
* arch/arm/src/stm32/stm32_flash.c and chip/stm32_flash.h,
|
||
include/nuttx/progmem.h, and configs/vsn/src/sif.c: STM32 FLASH fixes:
|
||
use size_t instead of uint16_t, make interface more generic. From
|
||
Freddie Chopin (2014-8-28).
|
||
* Kconfig, Makefile.unix, Makefile.win, syscall/Kconfig,
|
||
arch/arm/src/armv6-m/svcall.h, up_svcall.c, armv7-m/svcall.h, and
|
||
up_svcall.c: The system call library can now be built with
|
||
CONFIG_NUTTX_KERNEL. New selection: CONFIG_LIB_SYSCALL (2014-8-28).
|
||
* arch/arm/src/armv7-a/syscall.h: "Add an ARMv7-A system call definition
|
||
header file (2014-8-28).
|
||
* arch/arm/include/armv7-a/irq.h, arm_syscall.c, syscall/Kconfig,
|
||
syscall_funclookup.c, syscall_nparms.c, and syscall_stublookup.c:
|
||
ARMv7-A: Add SYSCALL handling logic (2014-8-28).
|
||
* nuttx/fs/, drivers/, and sched/: Remove explicit references to errno.
|
||
That is a problem from within the kernel for certain configurations
|
||
(there are still more references to be fixed) (2014-8-28).
|
||
* sched/clock/clock.h: In some configurations, g_system_tmer must be
|
||
extern'ed as a private variable in the OS (2014-8-28).
|
||
* include/errno.h and nuttx/clock.h: errno and g_system_timer must be
|
||
handled in a special way if there are external modules (2014-8-28).
|
||
* include/sys/syscall.h: System definitions should depend on
|
||
CONFIG_LIB_SYSCALL not CONFIG_NUTTX_KERNEL (2014-8-28).
|
||
* arch/arm/src/armv7-a: Rename syscall.h to svcall.h to work around
|
||
some include path name collisions; fix some compilation errors in
|
||
SYSCALL logic when debug is enabled (2014-8-29).
|
||
* arch/arm/include/arm/syscall.h and armv7-a/syscall.h: Fix ARM7/9
|
||
and Cortex-A SYSCALLs: For threads in SVC mode, the SVC instructions
|
||
clobbers R14. This must be taken account in the inline assembly
|
||
(2014-8029).
|
||
* arch/arm/src/armv7-a/arm_syscall.c: Fix hard coded values in
|
||
dispatch_syscall() inline assembly. Back out/correct part of last
|
||
change; that was going the wrong direction. With this change, the
|
||
apps/examples/elf test works with address environments and call
|
||
gates! (2014-8029).
|
||
* Many, many files: Renamed CONFIG_NUTTX_KERNEL to CONFIG_BUILD_PROTECTED.
|
||
Added configuration CONFIG_BUILD_KERNEL that will be used to generate
|
||
a kernel (only) with full process support and will execute programs
|
||
only from a file system. This new configuration is defined but only
|
||
partially integrated (2014-8-29).
|
||
* tools/refresh.sh: Add a tool to make refreshing configurations easier
|
||
when you want to do a lot of them (2014-8-29).
|
||
* tools/mksyscall.c: Build syscalls that do not need header files (there
|
||
are none, however) (2014-8-30).
|
||
* include/nuttx/errno.h syscall/syscall.csv and syscall_funclookup.c:
|
||
Yet more issues with errno access via syscalls fixed (2014-8-30).
|
||
* Makefile.unix, Makefile.win, Directories.mk, FlatLibs.mk, ProtectedLibs.mk,
|
||
and KernelLibs.mk: Separate the common directory selection logic
|
||
into Directories.mk; add support for kernel build. Move library
|
||
selection logic in common *.mk files, one each for flat-, protected-,
|
||
and kernel- mode builds (2014-8-30).
|
||
* include/nuttx/syscall.h syscall/syscall.csv: clock_systimer needs the
|
||
same fix as for get/set_errno when used with system calls (2014-8-30).
|
||
* sched/Kconfig sched/init/os_bringup.c tools/cfgdefine.c: Add
|
||
configuration options to start the system from a program on a file
|
||
system (2014-8-30).
|
||
* mm/ and include/nuttx/mm.h: Remove CONFIG_MM_MULTIHEAP. Non-multiheap
|
||
operation is no longer supported (2014-8-31).
|
||
* configs/sama5d4-ek/kernel: Add a configuration for testing the
|
||
kernel build configuration (still a work in progress) (2014-8-31).
|
||
* include/nuttx/arch.h, kmalloc.h, mm.h, sched/init/os_start.c,
|
||
sched/sched_free.c, and arch/arm/src/sama5/sam_allocateheap.c: Clean
|
||
up some kernel build heap allocation issues. The Cortex-A kernel
|
||
build now compiles without errors (but cannot link until brk() and
|
||
sbrk() are implemented) (2014-8-31).
|
||
* mm/*mm_brkaddr.c, *mm_extend.c, Makefile, and include/nuttx/mm.h: Add
|
||
low-level memory management hooks that will be needed to support brk()
|
||
and sbrk() (2014-8-31).
|
||
* Rename krealloc() to kmm_realloc() and kmemalign to kmm_memalign() for
|
||
consistency with the rest of the naming (2014-8-31).
|
||
* Rename kurealloc() to kumm_realloc(), kumemalign to kumm_memalign(),
|
||
and kufree to kumm_free for consistency with the rest of the naming
|
||
(2014-8-31).
|
||
* Rename kumalloc() to kumm_malloc() and kuzalloc to kumm_zalloc() for
|
||
consistency with the rest of the naming (2014-8-31).
|
||
* Rename kmalloc() to kmm_malloc(), kzalloc() to kmm_zalloc(), and
|
||
kfree() to kmm_free() and kuzalloc to kumm_zalloc() for consistency
|
||
with the rest of the naming (2014-8-31).
|
||
* mm/mm_sbrk.c, kmm_sbrk.c, umm_sbrk.c, and include/unistd.h: Initial
|
||
implementation of sbrk() (2014-9-1).
|
||
* arch/arm/src/armv7-a/arm_pgalloc.c, mm/umm_malloc.c, and mm_zalloc.c:
|
||
Completes the implementation of sbrk() (untested) (2014-9-1).
|
||
* configs/cc3200-launchpad: Updates to the CC3200-Launchpad configuration
|
||
for better compatibility. From Jim Ewing (2014-9-1).
|
||
* Removed all support from the 8051 from the NuttX source tree. The
|
||
obsoleted code along with the removal patch can now be found at
|
||
misc/Obsoleted/ (2014-9-1).
|
||
* sched/sched/sched_releasetcb.c and task_setup.c, include/nuttx/arch.h
|
||
and sched.h, and arch/*/*/*/Make.defs: There used to be two ways to
|
||
pass parameters to new tasks, depending upon the configuration: Either
|
||
(1) argv[] as created as an array with each string strdup'ed. Or (1)
|
||
argv[] array and strings were created on the stack before the new task
|
||
was started. Now, there is only one way, way (1). Way (2) might be
|
||
slightly more compact, but this is not worth carry the complexity of
|
||
two different ways of doing the same thing (2014-9-1).
|
||
* sched/init/os_start.c: Fix error in initialize of IDLE TCB due to last
|
||
change. The argument list is no long in the TCB, but in the stack.
|
||
But not for the IDLE task. It needs its own mini-argv[] list so that
|
||
it looks more like other threads (2014-9-1).
|
||
* arch/arm/src/armv7-a/arm_addrenv.c, include/nuttx/addrenv.h, and
|
||
mm/umm_*.c: Space at the beginning of the process data space is now
|
||
reserved for user heap management structures. In the kernel build
|
||
mode, these heap structures are shared between the kernel and use
|
||
code in order to allocate user-specific data (2014-9-2).
|
||
* include/unistd.h, nuttx/mm.h, and kmalloc.h, sched/init/os_start.c
|
||
and sched/sched/sched_free.c, mm/kmm_sbrk.c and mm_sbrk.c, and
|
||
arch/arm/src/sama5/sam_allocateheap.c: Restructuring of build to
|
||
allow use of use-space allocators by kernel logic in the kernel
|
||
build (2014-9-2).
|
||
* arch/arm/include/armv7-a/irq.h, arm_syscall.c, crt0.c,
|
||
include/nuttx/addrenv.h, and mm/umm_*.c: Add support for delivery
|
||
of use-mode signals in the kernel build (2014-9-2).
|
||
* mm/mm_graninit.c: Granule allocator initialization uses wrong
|
||
allocator to setting aside kernel memory (2014-9-3).
|
||
* sched/init/os_start.c: IDLE TCB setup needs to indicate that the
|
||
IDLE thread is a privileged, kernel thread (2014-9-3).
|
||
* include/nuttx/sched.h: Add a flag to group structure: If the group
|
||
is created by a kernel thread, then all resources in the group must
|
||
be privileged (2014-9-3).
|
||
* sched/group/group_malloc.c, group_zalloc.c, group_free.c,
|
||
group_create.c, group.h: Group creation logic must use new group flag
|
||
when allocating resources so that the privileges on the resource are
|
||
set correctly (2014-9-3).
|
||
* sched/Kconfig and sched/init/os_bringup.c: Add capability to perform
|
||
initial board initialization on a separate worker thread (2014-9-3).
|
||
* tools/mkexport.sh: Fix 'make export'. Adding subdirectories to the
|
||
sched/ directory broke the header file collection logic (2014-9-4).
|
||
* Makefile.unix, Makefile.win, FlatLibs.mk, KernelLibs.mk, and
|
||
ProtectedLibs.mk: In the kernel or protected builds, only the user
|
||
libraries should be exported (2014-9-4).
|
||
* Makefile.unix, Makefile.win, and tools/mkexport.sh: In 'make export',
|
||
do not copy internal header files or build scripts if this is a
|
||
kernel or protected build (014-9-4).
|
||
* tools/mkexport.sh, arch/*/src/Makefile, arm/src/a1x/Make.defs,
|
||
sama5/Make.defs, armv7-a/crt0.c: The 'make export' target needs to
|
||
bundle up the user C startup file (crt0), not the kernel head object
|
||
for the kernel and protected builds (2014-9-4).
|
||
* tools/mkexport.sh: Add .config file to export package (2014-9-5).
|
||
* configs/16z: Support for this board has been removed from the NuttX
|
||
source tree (but still can be found in the misc/Obsoleted directory).
|
||
This port is not ready for usage but may return to the NuttX tree
|
||
at some point in the future (2014-9-5).
|
||
* tools/Makefile.export and mkexport.sh: The apps/ import build requires
|
||
that we extract more information from the platform Make.defs file
|
||
(2014-9-5).
|
||
* tools/Makefile.export and mkexport.sh: Need to export the setting of
|
||
WINTOOL as well (2014-9-5).
|
||
* SAMA5D4-EK kernel configuration now builds NSH instead of examples/elf
|
||
(2014-9-6).
|
||
* libc/pthread/pthread_attrinit.c, sched/pthread/pthread_create.c, and
|
||
include/nuttx/pthread.h: Fix some conditional compilation in kernel
|
||
build mode. And, while we are touching this logic, make
|
||
g_default_pthread_attr const (2014-9-7).
|
||
* arch/arm/src/armv7-a/arm_addrenv.c: Correct size comparison (pages vs.
|
||
sections) (2014-9-7).
|
||
* configs/sama5d4-ek/src/sam_bringup.c and sama5d4-ek.h: Need to call
|
||
elf_initialize() on bring-up before attempting to load ELF modules
|
||
(2014-9-7).
|
||
* arch/arm/src/armv7-a/arm_addrenv.c: Fix loop counter... was overrunning
|
||
a table on larger ELF files (2104-9-7).
|
||
* arch/arm/src/sama5/sam_memories.c, sam_pgalloc.c, and sam_pgalloc.h: In
|
||
kernel build with address environment, need logic to map user virtual
|
||
addresses to physical addresses, and vice versa (2104-9-7).
|
||
* SAM3X/Arduino Due: Fix typo in sam3x_periphclks.h; add SCLK
|
||
definitions to board.h header file. From Fabien Comte (2014-9-8).
|
||
* Several pthread interfaces: Add const storage class to to phthread
|
||
parameters. From Freddie Chopin (2014-9-8).
|
||
* libc/math: Corrected atan2 implementations from Denis Arnst (2014-9-8).
|
||
* sama5d4-ek/knsh: Rename the kernel configuration to knsh to better
|
||
match the naming used with other platforms (2014-9-8).
|
||
* configs/cc3200-launchpad/README.txt: Add README file for the CC3200
|
||
Launchpad (2014-9-9).
|
||
* configs/sama5d4-ek/README.txt, Kconfig, knsh/defconfig.ROMFS,
|
||
src/sam_bringup.c, and sama5d4-ek.h: SAMA5D4-EK kernel config can now
|
||
boot from a ROMFS file system (2014-9-9).
|
||
* LibTargets.mk, Makefile.unix, and Makefile.win: Move common library
|
||
targets out of Makefile.unix and Makefile.win into a new LibTargets.mk
|
||
(2014-9-9).
|
||
* LibTargets.mk and configs/sama5d4-ek/knsh/Make.defs: Add logic that will
|
||
permit us to build user libraries with different CFLAGS than kernel
|
||
code. This is needed because we need the -fno-common option when
|
||
building ELF code to prevent SHN_COMMON relocations (2014-9-8).
|
||
* binfmt/libelf/libelf_symbols.c, libelf_bind.c, and all implementations
|
||
of up_relocate(): ELF relocations. Some relocation types do not have
|
||
a named symbol associated with them. The design did not account for
|
||
that case (2014-9-9).
|
||
* binfmt/binfmt_execmodule.c: When allocating a stack for a new process
|
||
using the user-space allocator, need to select the address environment
|
||
first (2014-9-9).
|
||
* arch/Kconfig, arm/src/armv7-a/pginline.h, arm_addrenv.c, and
|
||
arm_pgalloc.c and include/nuttx/addrenv.h: Add configuration to use
|
||
the fixed DRAM mapping for the page pool (if available) instead of
|
||
remapping dynamically to access L2 page tables and page data. Also,
|
||
add logic in address environment creation to initialize the shared
|
||
data at the beginning of the .bss/.data process memory region
|
||
(2014-9-10).
|
||
* configs/sama5d4-ek/elf and knsh: These configurations now use the
|
||
fixed DRAM mapping for manipulating the page memory pool (2014-9-10).
|
||
* arch/arm/include/arch.h and src/armv7-a/arm_addrenv.c,
|
||
nuttx/binfmt/binfmt_execmodule.c, libelf/libelf_addrenv.c,
|
||
libelf_load.c, libnxflat/libnxflat_addrenv.c, include/nuttx/arch.h, and
|
||
mm/umm_initialize.c: Add logic to initialize the per-process user
|
||
heap when each user process is started (2014-9-10).
|
||
* sched/clock/clock.h, clock_initialize.c, and clock_settime.c: Remove
|
||
vestiges of g_tickbias; apply bias instead to g_basetime (2014-9-10).
|
||
* include/nuttx/lib.h, sched/init/os_start.c, and
|
||
configs/ea3131/locked/mklocked.sh: Replace the empty lib_initialize()
|
||
function with a pre-processor macro (2014-9-11).
|
||
* libc/misc/lib_stream.c: When a privileged thread exits, we have to use
|
||
the kernel allocator to free memory; when an unprivileged thread exits,
|
||
we don't have to do anything... heap memory will be cleaned up when the
|
||
address environment is torn down (2014-9-11).
|
||
* arch/arm/src/stm32/stm32_serial.c and chip/stm32f20xxx_rcc.h: Fix for
|
||
UART7 and UART8 on STM32 clock enable from Aton (2014-9-11).
|
||
* arch/arm/src/armv7-a/arm_vectors.S: ARMv7-A: Exception register
|
||
save/restore needs to work a little differently if we support user
|
||
mode processes (2014-9-11).
|
||
* configs/cc3200-launchpad/src/cc3200_leds.c and other board files: Add
|
||
LED support for the CC3200 Launchpad. From Jim Ewing (2014-9-11).
|
||
* arch/arm/src/armv7-a/arm_initialstate.c: All tasks, even user mode
|
||
tasks, must start in supervisor mode until they get past the start-up
|
||
trampoline (2014-9-11).
|
||
* arch/arm/src/armv7-a/arm_vectors.S: Fix logic for returning from
|
||
exceptions to user-mode contexts. NuttX processes are now functional
|
||
on the Cortex-A (2014-9-11).
|
||
* arch/arm/src/armv7-a/arm_fullcontextrestore.S, arm_syscall.c, crt0.c,
|
||
and svcall.h: Modify up_fullcontextrestore() for CONFIG_BUILD_KERNEL.
|
||
It changed CPSR while in kernel. That will crash if the new CPSR is
|
||
user mode while executing in kernel space. Fixed by adding a
|
||
SYS_context_restore system call. There is an alternative, simpler
|
||
modification to up_fullcontextrestore() that could have been done: It
|
||
might have been possible to use the SPSR instead of the CPRSR and then
|
||
do an exception return from up_fullcontextrestore(). That would be
|
||
more efficient, but I never tried it (2014-9-12).
|
||
* binfmt/libelf/libelf_load.c: ELF: Critical bugfix.. BSS was not being
|
||
cleared (2014-9-12).
|
||
* configs/sama5d4-ek/knsh/defconfig and defconfig.ROMFS: Enable NSH
|
||
file applications in these configurations (2014-9-12).
|
||
* libc/Kconfig, unistd/lib_execsymtab.c, configs/sim/nsh/defconfig, and
|
||
stm32f4discovery/posix_spawn/defconfig: Having a symbol table is an
|
||
option. There are no symbol tables with CONFIG_BUILD_KERNEL, for
|
||
example (2014-9-12).
|
||
* syscall/syscall.csv and include/sys/syscall.h: exevc, execvl,
|
||
posix_spawn, and posix_spawnp were not properly integrated as system
|
||
calls (2014-9-12).
|
||
* syscall/syscall_lookup.h: Fix typos in the stub lookup table
|
||
(2014-9-12).
|
||
* configs/stm32f4discovery/netnsh, Kconfig, README.txt, and
|
||
include/board.h: Add the network enabled NSH configuration for the
|
||
STM32F4Discovery board with the STM32F4DIS-BB base board installed
|
||
(2014-9-13).
|
||
* nuttx/mm/umm_sbrk.c: Fix a typo in use of a configuration setting
|
||
(2014-9-13).
|
||
* configs/stm32f4discovery/README.txt: Add STM32F4DIS-BB GPIO pin
|
||
usage (2014-9-13).
|
||
* arch/Kconfig, arch/arm/include/arch.h, src/armv7-a/arm_addrenv.c,
|
||
sama5/sam_pgalloc.c, and include/nuttx/addrenv.h: Add a configuration
|
||
option for dynamic stack management (stack management not yet
|
||
implemented) (2014-9-13).
|
||
* arch/Kconfig arm/src/armv7-a/addrenv.h, arm_addrenv.c, and
|
||
arm_addrenv_utils.c, a1x/Make.defs, and sama5/Make.defs,
|
||
include/nuttx/addrenv.h and arch.h: Move static helper routines from
|
||
arm_addrenv.c and may them global so that they can be shared by
|
||
forthcoming stack address environment logic (2014-9-13).
|
||
* arch/arm/src/armv7-a/arm_addrenv_stack.c, arm_addrenv.c,
|
||
a1x/Make.defs, sama5/Make.defs, and include/nuttx/arch.h: Add logic
|
||
needed to manage a virtualized stack. Not yet incorporated into
|
||
base OS logic (2014-9-13).
|
||
* sched/task/task_posixspawn.c: Kernel proxy thread should be a kernel
|
||
thread, not a user task (2014-9-14).
|
||
* include/sched.h and spawn.h, libc/Kconfig, spawn/Make.defs,
|
||
lib_psa_getstacksize.c, lib_psa_init.c, and lib_psa_setstacksize.c,
|
||
sched/task/Make.defs, task_create.c, and task_spawn.c: Don't build
|
||
task_create() or task_spawn() interfaces if there is an address
|
||
environment (2014-9-14).
|
||
* arch/arm/src/armv7-a/arm_addrenv_ustack.c, include/nuttx/addrenv.h,
|
||
arch.h, and other files: Rename everything associated with the dynamic
|
||
process stack to ustack to make room in the name space for a kstack
|
||
(2014-9-14).
|
||
* arch/arm/src/armv7-a/arm_addrenv_kstack.c, include/nuttx/addrenv.h,
|
||
arch.h, and other files: Add the initial implementation of the process
|
||
kernel stack logic. Not yet integrated into the main OS logic nor
|
||
tested (2014-9-14).
|
||
* binfmt/binfmt_execsymtab.c and Makefile, sched/task/task_execv.c,
|
||
task_posixspawn.c, and Make.defs, include/unistd.h,
|
||
include/nuttx/binfmt/symtab.h, and libc/unistd/Make.defs: execv() is
|
||
a basic system interface. It should not be in libc/ but rather in
|
||
sched/task. Its symbol table helper logic also belongs in the kernel
|
||
but belongs in binfmt/ with the other symbol table logic (2014-9-15).
|
||
* include/sys/syscall.h, syscall/syscall.csv, syscall_lookup.h, and
|
||
syscall_stublookup.c: execl() is not a system interface. It belongs
|
||
in libc and should not have a system call associated with it
|
||
(2014-9-15).
|
||
* arch/arm/include/armv7-a/irq.h and src/armv7-a/arm_syscall.c: If we
|
||
are configured to use a kernel stack while in SYSCALL handling, then
|
||
we need to switch back to the user stack to deliver a signal (2014-9-15).
|
||
* arch/arm/src/armv6-m/up_svcall.c, armv7-a/arm_syscall.c, and
|
||
armv7-m/up_svcall.c: Fix a typo in system call when fetching parameter
|
||
from the stack: regs[REG_PC]+4 is the address, not regs[REG_PC+4]
|
||
(2014-9-15).
|
||
* sched/sched/sched_releasetcb.c: Don't release user stack in kernel
|
||
build. Already destroyed with all of the address environment
|
||
(2014-9-15).
|
||
* arch/arm/src/armv6-m/up_signal_dispatch.c, src/armv7-a/arm_signal_dispatch.c,
|
||
and arch/arm/src/armv7-m/up_signal_dispatch.c: Move
|
||
common/up_signal_dispatch.c to armv6-m, armv7-m, and armv7-a. The
|
||
armv7-a version needs to be different to handle the case where we
|
||
are dispatch kernel mode signals when running under a user mode group
|
||
(2014-9-16).
|
||
* arch/arm/src/armv7-a/arm_syscall.c: Correct stack handling if signal
|
||
deliver to user processes (2014-9-16).
|
||
* arch/arm/src/armv7-a/arm_physpgaddr.c, pgalloc.h, sama5/sam_pgalloc.c,
|
||
and sam_pgalloc.h: Move some share-able logic from sama5/sam_pgalloc.c
|
||
to armv7-a/arm_physpgaddr.c (2014-9-16).
|
||
* arch/arm/src/sam34/sam_rtt.c: Only SAM4 family has RTTDIS bit in the
|
||
MR register. SourceForge bug #33 from Fabien Comte (2014-9-17).
|
||
* arch/arm/src/stm32/stm32_can.c: At the end of the interrupt handler,
|
||
the interrupts were being disabled, if all packets have been
|
||
transferred when the interrupt handler was invoked. This is
|
||
problematic, because the interrupt handler calls can_txdone of the
|
||
upper half which can enqueue new packets to send. Removed the block
|
||
altogether, because can_txdone calls can_xmit which disables
|
||
interrupts if there are no new packets to send. From Daniel Lazlo
|
||
Sitzer (2014-9-17).
|
||
* drivers/can.c: In can_txdone, waiters on the semaphore should be
|
||
informed regardless of the return value of can_xmit. First it returns
|
||
-EIO if there are no new packets, and second the information of the
|
||
waiters is about the last transferred packet. From Daniel Lazlo
|
||
Sitzer (2014-9-17).
|
||
* SAMA5D4-EK: Add documentation/support for Rev E. board. Refresh NSH
|
||
configuration. Fix some build errors/warnings introduced with recent
|
||
work with the knsh configuration (2014-9-17).
|
||
* arch/sim/Kconfig, src/up_spiflash.c, Makefile, up_initialize.c, and
|
||
up_internal.h: Emulated SPI FLASH driver for the sim target from Ken
|
||
Pettit (2014-9-19).
|
||
* configs/stm32f4discovery/include/board.h, netnsh/defconfig,
|
||
src/Makefile, stm32_sdio.c, stm32_boot.c, stm32_nsh.c,
|
||
stm32_bringup.c, and stm32f4discovery.h: STM32F4Discovery: Add
|
||
support for the microSD card slot on the STM32F4DIS-BB base board
|
||
(2014-9-20).
|
||
* Change all occurrences of NxConsole to NxTerm (2014-9-20).
|
||
* include/sys/ipc.h, shm.h, mman.h, and types.h: Add shared memory
|
||
definitions, types, prototypes (2014-9-22).
|
||
* fs/smartfs/smartfs_smart.c: SMART FS update from Ken Pettit
|
||
(2014-9-22).
|
||
* mm/mm_gran/: Move granule allocator and page allocator from mm/. to
|
||
mm/mm_gran/. (2014-9-22).
|
||
* mm/kmm_heap/: Move kernel heap allocator from mm/. to mm/kmm_heap/.
|
||
(2014-9-22).
|
||
* mm/umm_heap/: Move user heap allocator from mm/. to mm/umm_heap/.
|
||
(2014-9-22).
|
||
* mm/mm_heap/: Move common heap logic from mm/. to mm/mm_heap/.
|
||
(2014-9-22).
|
||
* mm/shm/: Create a home for forthcoming shared memory logic
|
||
(2014-9-22).
|
||
* fs/procfs/fs_procfs.c: Fix some procfs breakage introduced by
|
||
reorganizing some un-reorganizable data structures. From Ken
|
||
Pettit (2014-9-22).
|
||
* drivers/mtd/smart.c, fs/smartfs/smartfs.h, smartfs_procfs.c, and
|
||
smartfs_utils.c, include/nuttx/fs/ioctl.h, and mtd/smart.h: Updated
|
||
SMART FS procfs support. From Ken Pettit
|
||
* configs/mikroe-stm32f4: Fix a few compile bugs and minor corrections
|
||
to the mikroe-stm32f4 configuration source. From Ken Pettit
|
||
(2014-9-22).
|
||
* mm/Kconfig, shm/Make.defs, shmat.c, shmctl.c, shmdt.c, shmget.c, and
|
||
Documentation/NuttxUserGuide.html: Add the documentation, build
|
||
framework, and skeleton files for the shared memory feature (no logic
|
||
yet provided) (2014-9-22).
|
||
* include/sys/syscall.h, syscall/syscall.csv, syscall_lookup.h, and
|
||
syscall_stublookup.c: Add system calls for shared memory interfaces
|
||
(2014-9-22).
|
||
* include/nuttx/shm.h, mm/shm/shm.h, and shm_initialize.c: Add shared
|
||
memory initialization logic (2014-9-23).
|
||
* include/nuttx/arch.h, Documentation/NuttxPortingGuide.html, and
|
||
NuttxUserGuide.html: Add platform-specific interface definitions
|
||
needed to support the shared memory feature (2014-9-23).
|
||
* arch/arm/include/arch.h, src/armv7-a/addrenv.h, arm_addrenv.c,
|
||
arm_addrenv_ustack.c, and arm_addrenv_utils.c: Add logic necessary
|
||
to handle remapping of shared memory on context switches (2014-9-23).
|
||
* include/nuttx/gran.h, mm/mm_gran/mm_granrelease.c, and Make.defs: Add
|
||
interfaces to support un-initializing a granule allocator (2014-9-23).
|
||
* arch/arm/src/armv7-a/arm_pgalloc.cm sched/group/group_addrenv.c, and
|
||
other files: Fix some inconsistent field name in struct task_group_s:
|
||
addrenv should be tg_addrenv (2014-9-23).
|
||
* arch/arm/src/armv7-a/pgalloc.h: Extend virtual/physical address
|
||
conversions to include addresses in shared memory (2014-9-23).
|
||
* include/nuttx/shm.h, sched.h, mm/shm/shm_initialize.c,
|
||
binfmt/binfmt_execmodule.c, sched/group/group_leave.c: Add support
|
||
for a per-process virtual page allocator. This is a new member of
|
||
the task_group_s structure. The allocator must be initialized when a
|
||
new user process is started and uninitialize when the process group
|
||
is finally destroyed. It is used by shmat() and shmdt() to pick the
|
||
virtual address onto which to map the shared physical memory
|
||
(2014-9-23).
|
||
* mm/shm/shmat.c and shmdt.c: Completes the implementation of the core
|
||
shared memory logic: shmget(), shmctl(), shmat(), and shmdt(). This
|
||
is still some unfinished platform-specific code that needs to be done
|
||
before we can begin testing (2014-9-23).
|
||
* include/nuttx/mm: Move mm.h, gran.h, and shm.h from include/nuttx to
|
||
include/nuttx/mm (2014-9-24).
|
||
* arch/arm/src/stm32/stm32_can.c: STM32 CAN correction suggested by Max
|
||
Holtzberg (2014-9-24).
|
||
* arch/arm/src/armv7-a/addrenv.h, arm_addrenv_shm.c,
|
||
arm_addrenv_utils.c, and pgalloc.h: This completes the implementation
|
||
of shared memory support for the Cortex-A platforms (2014-9-24).
|
||
* fs/fs_poll.c: Fix unnecessary delays and timing jitter in the
|
||
implementation of poll(): No delay if timeout is zero; If timeout is
|
||
greater than zero, first check if events are already pending events
|
||
before starting the delay. From Johannes Hampel (2014-9-25).
|
||
* drivers/mtd/at45db.c: In at45db_bwrite , the buffer is not increased
|
||
when writing more than 1 page. Sourceforge bug #34 (2014-9-25).
|
||
* crypto/cryptodev.c: Path segments reversed in include file path.
|
||
Noted by Brennan Ashton (2014-9-25).
|
||
* drivers/mtd/mtd_rwbuffer.c: The MTD Read-ahead/Write buffer layer
|
||
appears to be functional (2014-9-25).
|
||
* libc/stdio/lib_libdtoa.c: Change to lib_dtoa() to fix precision error
|
||
from trailing zeroes. From Bob Doiron (2014-9-26)
|
||
* fs/fs_poll.c: Re-implemented poll() delay using sem_timedwait()
|
||
(2014-9-26).
|
||
|
||
7.6 2014-11-26 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* fs/fs.h and other files: Rename fs/fs_internal.h to fs/fs.h (2014-9-28).
|
||
* include/nuttx/semaphore.h and fs/fs.h: Add data structures that will
|
||
allow us to move name semaphore support out of the OS and into the
|
||
VFS (not complete) (2014-9-28).
|
||
* fs/inode: Move inode and VFS utils from fs/. to fs/inode/. (2014-9-28).
|
||
* fs/driver: Move driver logic from fs/. to fs/driver/. (2014-9-28).
|
||
* fs/dirent: Move directory operations from fs/. to fs/dirent/. (2014-9-23).
|
||
* fs/mount: Move mount-related files from fs/. to fs/mount/. (2014-9-23).
|
||
* fs/vfs: Move renaming files in fs/. to fs/vfs/. (Don't all belong there)
|
||
(2014-9-23).
|
||
* fs/semaphore: Create a build structure that will (eventually) support
|
||
using the VFS to manage named semaphores (2014-9-23).
|
||
* configs/stm32f4discovery/include/board.h: STM32F4-Discovery: Fix some
|
||
backward conditional compilation (2104-9-29).
|
||
* nuttx/sched/init/os_start.c, semaphore/Make.defs, sem_initialize.c,
|
||
and semaphore.h: Semaphore initialization is now only required if
|
||
priority inheritance is enabled (2014-9-29).
|
||
* fs/Makefile and mqueue/: Add build support for messages queues as part
|
||
of the VFS (only build logic, no C files yet) (2014-9-29).
|
||
* fs/inode/inode.h and fs/driver/driver.h: Move fs/fs.h to fs/inode/inode.h
|
||
and some to fs/driver/driver.h (2014-9-29).
|
||
* sched/task/task_vfork.c: Fix vfork(). Now that arguments are kept on
|
||
the stack, the way that arguments are passed from parent to child in
|
||
vfork() must change. This bug has always been present, but was not
|
||
visible with the old strdup() way of passing arguments (2014-9-29).
|
||
* arch/arm/src/common/up_vfork.c: Another vfork() problem: If we get to
|
||
vfork() via system call, then we need to clone some system call
|
||
information so that the return form the cloned system call works
|
||
correctly (2014-9-29).
|
||
* fs/mqueue: Move mq_open(), mq_close(), and mq_unlink() logic from
|
||
sched/mqueue to fs/mqueue. Convert the logic so that it uses the VFS to
|
||
managed the message queue namespace (instead of custom logic). By
|
||
default, now message queues can be seen in /var/mqueue (2014-9-29).
|
||
* arch/sim/src/up_simuart.c, up_uartwait.c: Removed old, strange
|
||
up_stdio.c and implemented a simulated UART driver to provide the
|
||
console input. Starts a separate, Linux domain pthread to read
|
||
the console input in raw mode and provides the incoming data to
|
||
NuttX via standard NuttX domain IPCs (2014-9-30).
|
||
* arch/sim/src/up_setjmp32.S, up_setjmp64.S, Kconfig, Makefile,
|
||
up_initialstate.c, up_internal.h, up_stackframe.c, and include/irq.h:
|
||
Add support for 64-bit longjmp/setjmp in simulator platform. This
|
||
will permit operation of the simulation natively on a 64-bit platform
|
||
(2014-10-2).
|
||
* include/fcntl.h: Implement create() as a macro (2014-10-4).
|
||
* fs/vfs/Make.defs, fs_pread.c fs_pwrite.c, and include/unistd.h: Add
|
||
pread() and pwrite() (2014-10-4).
|
||
* include/sys/syscall.h syscall/syscall.csv, syscall_lookup.h, and
|
||
syscall_stublookup.c: Add pread() and pwrite() system calls
|
||
(2014-10-4).
|
||
* include/aio.h: Add aio.h header file (2014-10-4).
|
||
* libc/aio/lio_listio.c and Make.defs: Add empty skeleton file where
|
||
lio_listio() will eventually be implemented (2014-10-4).
|
||
* libc/Kconfig, aio/aio_read.c, aio_write.c, aio_return.c, aio_error.c
|
||
aio.h, and Make.defs: Initial implementation of aio_read(),
|
||
aio_write(), aio_return(), and aio_error() (2014-10-4).
|
||
* include/signal.h and sched/Kconfig: Add definitions for SIGPOLL
|
||
(2014-9-5).
|
||
* libc/aio/aio_signal.c, Make.defs, and aio.h: Move AIO signal logic
|
||
to a common location in aio_signal.c. Also fix several typos
|
||
(2014-9-5).
|
||
* libc/aio/aio_suspend.c, aio_cancel.c, aio_fsync.c, lio_listio.c and
|
||
Make.defs: Initial implementation of aio_suspend(), aio_cancel(),
|
||
lio_listio.c, and aio_fsync.c. This completes this implementation
|
||
of the asynchronous I/O interfaces but there are still untested
|
||
(2014-9-5).
|
||
* fs/aio/Make.defs, aio.h, aio_cancel.c, aio_fsync.c, aio_read.c,
|
||
aio_signal.c, and aio_write.c: Move all file operations from libc/aio
|
||
to fs/aio. These will need to be kernel routines in order to
|
||
handler issues with using file descriptors on worker thread
|
||
(2014-10-5).
|
||
* fs/aio/aio.h, Kconfig, aio_initialize.c, aioc_contain.c, Make.defs,
|
||
and include/aio.h: Add a AIO control container to increase the
|
||
payload with OS internal stuff (2014-10-6).
|
||
* fs/aio/aio_cancel.c, aio_fsync.c, aio_read.c, aio_signal.c, and
|
||
aio_write.c: Modify logic to use AIO control block container
|
||
(2014-10-6).
|
||
* fs/fs_initialize.c, Makefile, fs/inode/fs_inode.c, and inode.h:
|
||
Modify FS initialization logic to handle AIO container
|
||
initialization (2014-10-6).
|
||
* Too many files to list: Major structuring of file system functions
|
||
to better support asynchronous I/O. Repository should not be
|
||
trusted until I have a chance to verify everything (2014-10-6).
|
||
* include/nuttx/mm/mm.h: Fix a place in the memory manager where it
|
||
explicitly assumed that the size of a pointer is 4 bytes. That is OK
|
||
if the actual size is smaller but makes the heap unstable when used
|
||
with the x86_64 host simulation (2014-10-6).
|
||
* sched/wqueue, include/nuttx/wqueue.h, and libc/Kconfig sched/Makefile:
|
||
Add support for priority inheritance on the low priority worker queue
|
||
(2014-10-7).
|
||
* sched/Makefile and sched/*/Make.defs: Simplify how C source files are
|
||
selected in the build (2014-10-7).
|
||
* fs/aio/aio_queue.c, Make.defs, aio.h, aio_fsync.c, aio_read.c, and
|
||
aio_write.c: The asynch I/O implementation now satisfies POSIX
|
||
priority requirements; it uses the new low priority worker thread
|
||
interfaces to adjust the priority of the worker thread according to
|
||
the priority of the client thread (2014-10-7).
|
||
* arch/arm/src/stm32/chip/stm32_otghs.hstm32_otghs.c/h and
|
||
chip/stm32_otghs.h: Add files that implement true high speed support
|
||
for the STM32 OTGHS peripheral. From Brennan Ashton (2014-10-7).
|
||
* arch/arm/src/stm32/ (several files): Integrates OTGHS support into
|
||
the STM32; Eliminates the older OTGHS in FS mode logic. From Brennan
|
||
Ashton (2014-10-7).
|
||
* arch/arm/src/stm32/Kconfig, stm32_otgfsdev.c, chip/stm32f40xxx_pinmap.h,
|
||
configs/stm32f429i-disco/ (several files): Remove non-functional
|
||
vestiges of OTGHS in FS mode (including OTGFS2); try to convert the
|
||
stm32f429i-disco configuration to use OTGHS instead of OTFHS in F
|
||
mode (OTGFS2). But I don't have the boards and can't test (2014-10-7).
|
||
* include/syslog.h, debug.h, libc/libc.csv, misc/lib_dbg.c,
|
||
lib_dumpbuffer.c, stdio/lib_lowsyslog.c, lib_printf.c, lib_syslog.c,
|
||
and fs/driver/fs_syslog.c: Make standard syslog and vsyslog POSIX
|
||
compliant (also modify non-standard syslog functions for
|
||
compatibility). This will break a lot of things until ALL usage of
|
||
syslog is updated to use the modified interfaces (2014-10-8).
|
||
* drivers/: Correct everything under nuttx/drivers, nuttx/arch, nuttx/net,
|
||
nuttx/binfmt, and nuttx/configs to use the corrected syslog interfaces
|
||
(2014-10-8).
|
||
* libc/syslog and fs/syslog: Move syslog logic from libc/misc and
|
||
libc/stdio to libc/syslog and fs/syslog. Also move some syslog logic
|
||
from fs/driver to fs/syslog (2014-10-8).
|
||
* fs/syslog/fs_syslogmask.c: Implement syslogmask() (2014-10-8).
|
||
* include/sys/syscall.h, syscall/syscall.csv, syscall_lookup.h, and
|
||
syscall_stublookup.c: Add syslog system calls (2014-10-8).
|
||
* fs/Kconfig, syslog/fs_syslogenable, and include/syslog.h: Remove
|
||
non-standard, conditional syslog_enable(), instead only the
|
||
required, standard setlogmask() (2014-10-9).
|
||
* arch/arm/src/stm32/chip/stm32_exti.h: Correct STM32 RTC EXTI bit
|
||
definition. From Lazlo (2014-10-9).
|
||
* include/syscall.h, syscall/, and libc/: Remove syslog interfaces
|
||
from the set of system calls (2014-10-9).
|
||
* libc/syslog: Move syslog back out of the kernel into the C libary
|
||
(2014-10-9).
|
||
* arch/mips/src/pic32mx/pic32mx-devcfg.h: For PIC32MX7, DEVCFG0 bit
|
||
2 must be set. Writing bit 2 as zero can brick the CPU on some
|
||
versions. From Cris Kvist (2014-10-9).
|
||
* sched/wqueue/, libc/wqueue, and include/nuttx/wqeueue.h: Separate
|
||
kernel- and user-mode work queue logic. Decouple work queue data
|
||
structures. This is part of the preparation to support multiple
|
||
low-priority worker threads (2014-10-10).
|
||
* include/nuttx/wqueue.h, libc/wqueue/Make.defs, work_usrthread.c,
|
||
work_usrstart.c sched/init/os_bringup.c wqueue/kwork_hpthread.c,
|
||
kwork_lpthread.c, and wqueue.h: Modularize starting of worker
|
||
threads to better isolate individual initialization characteristics
|
||
(2014-10-10).
|
||
* arch/arm/src/ stm32_iwdg.c, stm32_wwdg.c, and chip/stm32_dbgmcu.h:
|
||
Fix watchdog stop bit usage. From Lazlo (2014-10-10).
|
||
* sched/wqueue/, libc/wqueue, and include/nuttx/wqueue.h: Add support
|
||
for multiple low-priority worker threads. This is a necessary
|
||
piece of the support for asynchronous I/O (2014-10-10).
|
||
* sched/wqueue/work_inherit.c: Add logic for priority inheritance with
|
||
multiple worker threads. How should this work? Tentatively, the all
|
||
get reprioritized together. It would be best to just reprioritize the
|
||
single thread doing the high priority work, but we don't know which
|
||
that will be in advance (2014-10-10).
|
||
* fs/aio/ and include/aio.h: Add support for socket-based transfers
|
||
(2014-10-11).
|
||
* arch/arm/include/stm32/chip.h, /src/stm32/Kconfig, and
|
||
stm32_allocateheap.c: Support for the STM32 F411RE from Serg Podtynnyi
|
||
(2014-10-14).
|
||
* configs/Kconfig, README.txt, and nucleo-f401re: Extend this board
|
||
configuration to also support the Nucleo-F411RE. From Serg Podtynnyi
|
||
(2014-10-14).
|
||
* tools/Config.mk: Add a PRELINK macro to Config.mk. From Kriegleder
|
||
(2014-10-17).
|
||
* arch/arm/src/efm32 and arch/arm/include/efm32: Add a basic port for
|
||
the SiLabs EFM32 family. Includes many files contributed by Pierre-noel
|
||
Bouteville (2104-10-20).
|
||
* configs/efm32-gxxx-stk: Add board support for the EFM32 Gecko Starter
|
||
Kit (2014-10-20).
|
||
* configs/olimex-efm32g880f128-stk: Add board support for the Olimex
|
||
EFM32G8809128 STK (2014-10-20).
|
||
* drivers/lcd/Kconfig, ili9341.c, Make.defs, and include/nuttx/lcd/ili9341.h:
|
||
Add support for a generic ILI9341 driver. From Marco Krahl (2014-10-20).
|
||
* configs/stm32f429i-disco/Kconfig, src/ and lcd/: Add support for the
|
||
STM32F429i Discovery's LCD. From Marco Krahl (2014-10-20).
|
||
* arch/arm/src/lpc43xx/lpc43_gpioint.c, .h, lpc43_irq.c, and
|
||
chip/lpc43_gpio.h: Fixes to allow compile of lpc43_gpioint.c. It
|
||
likely doesn't work. From Brandon Warhurst (2014-10-21).
|
||
* arch/arm/src/stm32/chip/stm32f103r_pinmap.h: Add ADC pinmap
|
||
definitions for the STM32 F103R from Martin Lederhilger (2014-10-21).
|
||
* arch/arm/src/armv7-m/up_itm.c and itm.h: Add CMSIS ITM header file and
|
||
library. From Pierre-noel Bouteville (2104-10-21).
|
||
* arch/arm/src/armv7-m/dwt.h and tpi.h: Add CMSIS DWT and TPI header files.
|
||
From Pierre-noel Bouteville (2104-10-21).
|
||
* arch/arm/src/armv7-m/arm_item_syslog.c, itm_syslog.h, and Kconfig: Add
|
||
ARMv7 support to use ITM for SYSLOG debug output. Includes logic from
|
||
Pierre-noel Bouteville (2014-10-22).
|
||
* arch/arm/src/efm32/efm32_clockconfig.c, efm32_start.c, and Make.defs:
|
||
Add logic to initialize and use ITM for syslog. Includes logic from
|
||
Pierre-noel Bouteville (2014-10-22).
|
||
* sched/sched/sched_timerexpiration.c and include/nuttx/arch.h: Fixes
|
||
to tickless operation code, especially in alarm mode. From Brandon
|
||
Warhurst (2014-10-23).
|
||
* nuttx/arch/arm/src/lpc43xx/lpc43_rit.c, lpc43_rit.h, and related
|
||
files: Add support for tickless operation using the NXP LPC43xx. From
|
||
Brandon Warhurst (2014-10-23).
|
||
* arch/arm/src/efm32/efm32_gpio.c and efm32_gpioirq.c: EFM32 port and
|
||
pin decoding backward in every case. From Pierre-Noel Bouteville
|
||
(2014-10-23).
|
||
* arch/arm/src/armv7-m/up_itm_syslog.c: Correct file naming and fix
|
||
compilation errors in up_itm_syslog.c. From Pierre-Noel Bouteville
|
||
(2014-10-23).
|
||
* configs/sam4e-ek/src/sam_ethernet.c (and other files):SAM4E-EK: Add
|
||
support for PHY interrupt (2014-10-24).
|
||
* include/wchar.h: Add a mostly bogus wchar.h header file. This file
|
||
is mostly bogus because none of the wide character operations are
|
||
currently supported in the Nuttx C library (2014-10-27).
|
||
* include/termios.h, libc/termios/lib_isatty.c, and Make.defs: Add
|
||
isatty() function. From Alan Carvalho de Assis (2014-10-27).
|
||
* arch/arm/include/efm32, src/efm32, and configs/efm32-gxxx-stk:
|
||
The EFM32 Gecko Starter Kit port is now functional. At least
|
||
NSH is running over LEUART0 on the board (2014-10-29).
|
||
* arch/arm/src/sam34/sam_serial.c and Kconfig: Add support for SAM3/4
|
||
basic TERMIOS and flow control. There are issues with IFLOW control:
|
||
PDC or DMAC support is required (2014-10-29).
|
||
* configs/sam4e-ek/src/sam4e-ek.h: Fix an error in a USART1 pin number
|
||
(2014-10-29).
|
||
* configs/efm32gg-stk3700: Board support for the SiLabs EFM32GG
|
||
Giant Gecko Starter kit. Current with basic NSH configuration only.
|
||
Testing is on hold until I receive hardware (2014-11-03).
|
||
* libc/Kconfig: Move CONFIG_NSH_TMPDIR to CONFIG_LIBC_TMPDIR (2014-11-05).
|
||
* libc/stdlib/lib_mkstemp.c, lib_mktemp.c, Make.defs and include/stdlib.h:
|
||
Add mktemp() and mkstemp() (2014-11-05).
|
||
* libc/stdio/lib_tempnam.c, lib_tmpnam.c, Kconfig, Make.defs and
|
||
include/stdio.h: Add tmpnam() and tempnam() (2014-11-05).
|
||
* drivers/rwbuffer.c: Fix typo that can cause compiler error (2014-11-05).
|
||
* drivers/mtd/m25px.c: Extend MTD support to M25P16. From Sébastien
|
||
Lorquet (2014-11-07).
|
||
* arch/arm/src/stm32/Kconfig, chip.h, and include/stm32/chip.h: Support
|
||
for the STM32F103RG. From Murilo Ponte (2014-11-10).
|
||
* configs/stm32f100rc_generic: Removed this generic board configuration.
|
||
I have decided to stop support of generic board configurations. Generic
|
||
board configurations do not provide support for any specific hardware
|
||
but can be useful only if there are not other examples for the setup
|
||
for a particular architecture. Not the case here (2014-11-10).
|
||
* include/nuttx/vt100.h: Add foreground and background color commands
|
||
(2014-11-10).
|
||
* sched/wdog/wd_create.c: Fix an important bug in the watchdog creation
|
||
logic (2014-11-10).
|
||
* include/unistd.h, libc/unistd/lib_access.c and Make.defs: From Lorenz
|
||
Meier: The implementation of access() as vararg macro has the issue that
|
||
any function call with the same name (even in a C++ class) will match
|
||
with it and result in a compile error. I have replaced it with a small
|
||
function, and tried to have decent documentation as well. This resolves
|
||
the compile issue, and shouldn’t have negative side effects for users
|
||
of the function (2014-11-11).
|
||
* mm/mm_gran/mm_granrelease.c: If the INTR granule allocator mode is
|
||
enabled, there is no semaphore to destroy. From Lorenz Meier (2014-11-12).
|
||
* fs/nxffs/nxffs_dump.c: Fix problems with redefinitions of fdb macro.
|
||
With the fix to the syslog prototype, a LOG priority must now be the
|
||
first parameter. Fixed by replacing all occurrences of fdbg with
|
||
syslog(LOG_DEBUG, and eliminating the macro redefinitions. Noted by
|
||
Sebastien Lorquet (2014-11-12).
|
||
* arch/arm/src/common/up_internal.h: Add protection from C++ name
|
||
mangling in the ARM up_internal.h. From Lorenz Meier (2014-11-12).
|
||
* include/nuttx/compiler.h: Defines inline functions as not
|
||
instrumented - this is relevant for anyone using instrumentation. From
|
||
Lorenz Meier (2014-11-12).
|
||
* libc/string/lib_strncpy.c: The definition of strncpy() is that empty
|
||
space should be zero-filled, the patch adds the zero filling (I didn’t
|
||
know this, see e.g. the POSIX spec here:
|
||
http://pubs.opengroup.org/onlinepubs/7908799/xsh/strncpy.html). From
|
||
Lorenz Meier (2014-11-12).
|
||
* arch/arm/include/limits.h: Remove the definition of INT_FAST32_MIN
|
||
which is already defined in stdint.h (the correct location). From
|
||
Lorenz Meier (2014-11-12).
|
||
* arch/arm/src/efm32/efm32_clockconfig.c, configs/efm32gg-stk3700/README.txt
|
||
and include/board.h: Fixes to get the EFM32GG-STK3700 basic NSH
|
||
configuration running. It works! (2014-11-12).
|
||
* drivers/bch/bchdev_driver.c: Add support for seeking in BCH. From
|
||
Sébastien Lorquet. (2014-11-13).
|
||
* sched/Kconfigs and configs/*/*/defconfig: Remove CONFIG_MAX_TASK_ARGS
|
||
(2014-11-13).
|
||
* binfmt/: Remove use of CONFIG_MAX_TASK_ARGS in exec() and unload_module()
|
||
(2014-11-13).
|
||
* libc/unistd: Remove use of CONFIG_MAX_TASK_ARGS in execl() (2014-11-13).
|
||
* sched/: Remove some misc. usage of CONFIG_MAX_TASK_ARGS in task_start(),
|
||
task_setup(), and vfork() (2014-11-13).
|
||
* arch/arm/src/stm32/chip/stm32_otgfs.h: Correct a typo in the STM32 OTGFS
|
||
register bit definitions (2014-11-13).
|
||
* drivers/lcd/st7565.c/.h and include/nuttx/lcd/st7565.h: Add driver for
|
||
ST7565 that works with NHD‐C12864KGZ display. From Pierre-noel
|
||
Bouteville (2014-11-13).
|
||
* net/route/net_router.c: I don't think that the net_route function has
|
||
ever worked correctly. The source ip was updated in the match struct
|
||
instead of the route ip. From Brennan Ashton (2014-11-14).
|
||
* net/Kconfig arp/Make.defs, arp_send.c, and drivers/net/slip.c: ARP:
|
||
Add support for the case where there are multiple networks: One being
|
||
Ethernet and the other not. Suggested by Brennan Ashton (2014-11-14).
|
||
* net/Kconfig, netdev/netdev_register.c, arp/arp_send.c,
|
||
include/nuttx/net/net.h, netdev.h and several network drivers in arch/
|
||
and drivers/: Add a parameter to netdev_register() to indicate the
|
||
link protocol supported by the driver. Use this value to replace some
|
||
logic committed yesterday (2014-11-15).
|
||
* configs/stm32f4discovery/netnsh/defconfig: Needs to set MAC address
|
||
(2014-11-15).
|
||
* arch/ and drivers/: Remove use of NET_LL_HDRLEN from Ethernet drivers.
|
||
Use ETH_HDRLEN instead (2014-11-15).
|
||
* net/arp/: Remove use of NET_LL_HDRLEN from net/arp logic. Use
|
||
ETH_HDRLEN instead (2014-11-15).
|
||
* net/ and include/nuttx/net: All network logic will now handle
|
||
variable length link layer protocol headers within incoming packets.
|
||
This permits use of multiple network interfaces with differing data
|
||
links. For example, ETHERNET + SLIP (2014-11-15).
|
||
* arch/arm/src/sam34/sam4s_periphclks.h: Add missing SPI0 clock
|
||
configuration macro for the SAM4S. From spasbyspas (2014-11-16).
|
||
* arch/arm/src/efm32/efm32_lowputc.c: EFM32 USART setup: Computation of
|
||
BAUD includes shift; Eliminate additional shift. From Pierre-noel
|
||
Bouteville (2014-11-16).
|
||
* net/, include/, drivers/, arch/, various files: Rename
|
||
CONFIG_NET_BUFSIZE to CONFIG_NET_ETH_MTU; Add CONFIG_NET_SLIP_MTU.
|
||
Add data structures and logic to handle different MTUs when both
|
||
Ethernet and SLIP are enabled (2014-11-16).
|
||
* net/, include/, various files: Rename CONFIG_NET_RECEIVE_WINDOW to
|
||
CONFIG_NET_ETH_TCP_RECVWNDO and CONFIG_NET_SLIP_TCP_RECVWNDO. Add
|
||
data structures and logic to handler different TCP receive windows
|
||
when both Ethernet and SLIP are enabled (2014-11-16).
|
||
* configs/sama5d4-ek/bridge: Add a simple test for the dual EMACs on
|
||
the SAMA5D4 (2014-11-17).
|
||
* arch/arm/src/sama5/sam_emacb.c: Fix several typos that will prevent
|
||
EMAC1 from initializing properly (2014-11-17).
|
||
* include/nuttx/net/ip.h and tcp.h, net/icmp/icmp_send.c and
|
||
igmp/igmp_send.c: Move IP header flags from tcp.h to ip.h and rename
|
||
IP_FLAGS vs TCPFLAGS. The problem fixed here is that there IP flags
|
||
were not available when TCP was disabled. The IP flags are used in
|
||
ICMP and IGMP (2014-11-17).
|
||
* sched/clock/clock_abstime2ticks.c: Calling mq_timedreceived() with
|
||
immediate timeout was getting stuck and not timing out. Immediate
|
||
timeout is achieved by setting absolute timeout value to past time,
|
||
for example abstime={ .tv_sec=0, .tv_nsec=0 }. However absolute
|
||
time was converted to relative time using unsigned integer arithmetic
|
||
and resulted large ticks count by clock_abstime2ticks, instead of
|
||
expected negative ticks value. Change corrects clock_abstime2ticks()
|
||
to return negative ticks, if absolute time is in the past. From
|
||
Jussi Kivilinna (2014-11-19).
|
||
* fs/vfs/fs_poll.c: poll() was not waking up from signals (for example
|
||
mq_notify() events). From Jussi Kivilinna (2014-11-19).
|
||
* arch/arm/src/stm32/stm32_otghs.c, Make.defs,
|
||
configs/stm32f429i-disco/src/stm32_usb.c and Makefile: STM32 F4 OTGHS
|
||
device controller driver from Brennan Ashton (2014-11-20).
|
||
* configs/sama5d3-xplained/bridge: Add a simple test for the EMAC
|
||
and GMAC on the SAMA5D3 working together (2014-11-20).
|
||
* libnx/nxtk/nxtk_drawframe.c: Remove warnings when CONFIG_NXTK_BORDERWIDTH
|
||
is set to zero. From Pierre-Noel Bouteville (2014-11-20).
|
||
* fs/vfs/fs_poll.c: Add proper handling for sem_timedwait errnos.
|
||
From Jussi Kivilinna (2014-11-21).
|
||
* net/udp/udp_conn.c and udp.h: Extensions to UDP "connection" structure
|
||
for the case of multiple networks. In this case, assigned port numbers
|
||
only have to be unique with respect to the IP address. So, for
|
||
example, you could have multiple port 80's, one on each network
|
||
(2014-11-21).
|
||
* net/tcp/tcp_conn.c and tcp.h: Make tcp_listener static scope; it is
|
||
not used outside of tcp_conn.c (2014-11-22).
|
||
* net/udp/tcp_conn.c and tcp.h: Extensions to TCP connection structure
|
||
for the case of multiple networks. See the description of the similar
|
||
change for UDP above (2014-11-22).
|
||
* net/route/net_router.c: Refuse to perform routing table lookups for
|
||
the Broadcast IP address. From Brennan Ashton.
|
||
* net/netdev/netdev_findbyaddr.c and netdev: Add logic to netdev_findbyaddr()
|
||
to return the correct network device for the case where a broadcast
|
||
address is used. This change caused trivial ripples through other
|
||
files because additional parameters are required for netdev_findbyaddr()
|
||
when CONFIG_NET_MULTINIC. Those other file include net/netdev/netdev_rxnotify.c,
|
||
netdev_txnotify.c which, in turn, for changes to arp/arp_send.c,
|
||
icmp/icmp_ping.c, socket/net_sendfile.c, recvfrom.c, sendto.c,
|
||
tcp/tcp_send_buffered.c, and tcp_send_unbuffered.c (2014-11-23).
|
||
* arch/arm/src/kl/chip/kl_i2c.h: I2C header file for the Freescale KL
|
||
family. From Alan Carvalho de Assis (2014-11-23).
|
||
* include/nuttx/fs/fs.h: Fix typo in conditional compilation. From
|
||
Alan Carvalho de Assis (2014-11-23).
|
||
|
||
7.7 2015-01-26 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* nuttx/drivers/eeprom and include/nuttx/eeprom/: Add support for generic
|
||
EEPROM access via a character driver. Add also the EEPROM driver itself.
|
||
From Sébastien Lorquet (2014-11-26).
|
||
* libnx/nxfonts/nxfonts_pixel-lcd-machine.h and nxfonts_pixel-unicode.h,
|
||
include/nuttx/nx/nxfonts.h, graphpics/Kconfig, and build-related files
|
||
in libnx/nxfonts: Two new fonts from Pierre-noel Bouteville (2014-11-26).
|
||
* configs/lpc4357-evb, arch/arm/src/pc43xx/chip/, configs/Kconfig, and
|
||
and other related files: A port of NuttX to the LPC4357-EVB from
|
||
Toby Duckworth. This port is a leverage of the LPC3330-Xplorer port
|
||
and still have a some misinformation from that port that needs to be
|
||
updated for the LPC4357-EVB (2014-11-26).
|
||
* arch/arm/include/stm32/chip.h, src/stm32/Kconfig, chip.h, and
|
||
chip/stm32f102_pinmap.h: Enable support for the STM32 F102. From
|
||
https://github.com/PX4/NuttX/pull/28.diff (2014-11-27).
|
||
* drivers/loop.c: Loop device should return -EINTR is interrupt by a
|
||
signal (2014-11-27).
|
||
* drivers/input/djoystick.c and include/nuttx/input/djoystick.h. Also
|
||
drivers/input/Kconfig and Make.defs, and include/nuttx/fs/ioctl.h: Add
|
||
an interface definition and upper half driver for a discrete joystick
|
||
device (2014-11-27).
|
||
* arch/arm/src/efm32/Kconfig and efm32_serial.c: Add support for serial
|
||
termios TCGET and TCSET. For the moment, only set/get speed is
|
||
implemented. From Pierre-noel Bouteville (2014-11-27).
|
||
* drivers/wireless/ and include/nuttx/wireless/cc3000.h: A set of 11
|
||
patches correcting issues with the CC3000 networking. All from Jussi
|
||
Kivilinna (2014-11-28). Among these:
|
||
03/11: CC3000 driver was getting stuck at recv() when remote host
|
||
closed connection and application tried to read data from remotely
|
||
shutdown socket. This patch adds proper handling for remotely closed
|
||
socket event.
|
||
07/11: Socket state initialization was done in 'register', while it
|
||
should be initialized in 'open' and deinitialized in 'close'. Old
|
||
way caused problems when device is closed, power-cycled and then
|
||
reopened as old socket state was left enabled.
|
||
08/11: Select thread was getting stuck after 'close, power-cycle,
|
||
reopen', since selectsem was not properly setup and cleaned up.
|
||
09/11: 'maxFD' was not properly reset in select worker and not checked
|
||
for before calling cc3000_select().
|
||
10/11: After wlan_stop()/cc3000_close(), irqsem was left with count
|
||
'-1'. Therefore on next wlan_start()/cc3000_open(), initial value
|
||
for irqsem was wrong. Additional repeated wlan_start()/wlan_stop()
|
||
decreased irqsem value further. Obviously this causes driver not to
|
||
function correctly and freeze. Patch moves initialization and
|
||
destruction of waitsem, irqsem and readysem to
|
||
cc3000_open/cc3000_close.
|
||
* include/cxx/cctype: Undefine macros defined ctype.h so that builtin
|
||
C++ implementations will be used intead. From Lorenz Meier
|
||
(2014-11-28).
|
||
* configs/stm3210e-eval/src/stm32_djoystick.c: Add a discrete Joystick
|
||
supportfor the STM3210E-EVAL (2014-11-28).
|
||
* drivers/input/djoystick.c include/nuttx/input/djoystick.h: Add a new
|
||
ioctl to get the supported joystick discrete signals (2014-11-28).
|
||
* drivers/input/ajoystick.c and include/nuttx/input/ajoystick.h. Also
|
||
drivers/input/Kconfig and Make.defs, and include/nuttx/fs/ioctl.h: Add
|
||
an interface definition and upper half driver for an analog joystick
|
||
device. Initial check-in is only a little more of a clone of the
|
||
discrete joystick driver and is as-of-yet untested (2014-11-27).
|
||
* libc/Kconfig, misc/Make.defs, misc/lib_ioctl.c, fs/vfs/fs_ioctl.c,
|
||
include/nuttx/fs/fs.h, include/sys/ioctl.h, syscall.h, and several
|
||
files in syscall/: Add support for a variadic ioctl() function. The
|
||
ioctl() interface is a non-standard, Unix interface. NuttX has always
|
||
used the older, three-parameter version. Most contemporary systems
|
||
now, however, use a variadic form of the ioctl() function. Added an
|
||
option to insert a shim layer to adapt the three-parameter ioctl() to
|
||
use the variadic interface form. Internally, the ioctl handling is
|
||
the same three-parameter logic. The only real complexity to the shim
|
||
is in how the system calls must be handled (2014-11-29).
|
||
* arch/arm/src/stm32/stm32_i2c.c: Port Tridge's I2C noise resilience
|
||
logic from the PX4 repository (2014-11-29).
|
||
* arch/arm/src/stm32/chip/stm32l15xxx_pinmap.h: Fix a typo in the
|
||
MCO pin definition. From Jussi Kivilinna (2014-12-02).
|
||
* arch/arm/src/stm32/stm32_rcc.h: Add missing MCO configuration for
|
||
the STM32L1xxx. From Jussi Kivilinna (2014-12-02).
|
||
* configs/sama5d3-xplained/src/sam_ajoystick.c: Add analog Joystick
|
||
shield support for the SAMA5D3 Xplained board (2014-12-3).
|
||
* configs/ucleo-f4x1re/src/sam_ajoystick.c and sam_adc.c: Add
|
||
analog Joystick shield support for the Nucleo F4x1RE boards. There
|
||
are still some ADC issues to be worke through as of the initial
|
||
commit (2014-12-3).
|
||
* /drivers/eeprom/spi_xx25xx.c and /include/nuttx/eeprom/spi_xx25xx.h:
|
||
Add support for ST Micro EEPROM device geometries. From Sebastien
|
||
Lorquet (2014-12-5).
|
||
* sched/mqueue: msg type should be char * not void * in mq_send,
|
||
mq_timedsend, mq_receive, and mq_timedreceive. Noted by Pierre-Noel
|
||
Bouteville (2014-12-05).
|
||
* fs/mqueue/mq_open.c and sched/mqueue/mq_msgqalloc.c: In message queue
|
||
creation return ENOSPC error if size exceeds the configured size of
|
||
pre-allocated messages; Use ENOSPC vs ENOMEM per OpenGroup.org. From
|
||
Pierre-Noel Bouteville (2014-12-6).
|
||
* Add sys/custom_file.h. Used when CUSTOM_FILE_IO is define and avoids
|
||
re-definition errors about the FILE define. From Thomas Gruber via
|
||
the PX4 repository (2014-12-06).
|
||
* tools/bfd-converter.c and mkdeps.c: Eliminate a warnging about
|
||
redefined strtok_r on some platforms (2014-12-8).
|
||
* arch/sim/Kconfig: Allow building the simulated framebuffer driver
|
||
even if NX is not enabled (12014-12-8).
|
||
* configs/sim/traveler and README.txt: Add a configuration build and test
|
||
the Traveler first person game using the simulator (2014-12-8).
|
||
* arch/arm/src/stm32/chip/stm32f20xxx_pinmap.h and stm32f40xxx_pinmap.h:
|
||
Set the GPIO_SPEED_50MHz on all F2 and F4 SPI pin configurations.
|
||
This is based on an F411 SPI1 errata but the fixed is generalized to
|
||
all SPI and all F2 and F4 (let me know if this introduces any other
|
||
issues). Discovered and fixed by Sebastien Lorquet after much
|
||
consternation (2014-12-8).
|
||
* libc/stdio/lib_avsprintf.c: avsprintf(): Fix a bug in usage of
|
||
va_list on x86. On x86, va_list is a pointer to a single copy on the
|
||
stack. avsprintf() calls lib_vsprintf() twice and so traverses the
|
||
va_list twice using va_start. va_start modifies that single copy on
|
||
the stack so that the second call to lib_vsprintf() fails. This appears
|
||
to be an issue with x86 only so far (2014-12-8).
|
||
* stdint.h: Don't use hex values to specify minimum values of fixed
|
||
width, signed values. Hex values are inherently unsigned and not
|
||
usable for this purpose in all contexts (2014-12-8).
|
||
* arch/arm/src/tiva/tiva_i2c.c, tiva_i2c.h, Kconfig, and Make.defs: Add
|
||
build framework and skeleton files for Tiva I2C driver. Initial
|
||
commit is just the STM32 I2C driver with name changes and STM32-
|
||
specific logic removed (2014-12-9).
|
||
* fs/procfs/fs_procfs.c: Add procfs write support. From Ken Pettit
|
||
(2014-12-9).
|
||
* include/crc8.h, libc/misc/lib_crc8.c, and Make.defs: Add CRC8 support.
|
||
From Ken Pettit (2014-12-9).
|
||
* drivers/mtd/smart.c, Kconfig, fs/smartfs/smartfs_smart.c,
|
||
smartfs_procfs.c, smartfs_utils.c, smartfs.h, Kconfig,
|
||
include/nuttx/fs/ioctl.h, smart.h, and mtd/smart.h: Implements wear-
|
||
leveling in the SmartFS. From Ken Pettit (2014-12-9).
|
||
* arch/arm/src/tiva/tiva_i2c.c: Driver is code complete but still
|
||
untested (2014-12-10).
|
||
* configs/tm4c123g-launchpad/src/tm4c_at24.c, tm4c_bringup.c, and other
|
||
files: Add initialization logic for an external AT24 EEPROM. This
|
||
is intended only to support testing of the Tiva I2C driver
|
||
(2014-12-10).
|
||
* libnx/Makefile, libnx/nxfonts/nxfonts_x11-misc-fixed-*.h, Make.defs,
|
||
Makefile.sources, nxfonts_bitmaps.c, graphics/Kconfig, and
|
||
include/nuttx/nx/nxfonts.h: Lots of fonts that derive from
|
||
X11-misc-fixed-* fonts. Converted for use by NuttX by Pierre-Noel
|
||
Bouteville (2014-12-10).
|
||
* nuttx/drivers/mtd/m25px.c; M25P serial flash driver: Add subsector
|
||
size of the M24P16 part. From Lazlo (2014-12-10).
|
||
* libc/string/lib_strncpy.c: Commit d0c76ccacf0dc8988f9617ad82bf4349f456bb08
|
||
will trash a lot of memory if n == 0. From Yasuhiro Osaki (2014-12-11).
|
||
* arch/arm/src/stm32/stm32_otghsdev.c. Fix for OTGHS device driver
|
||
working in FS mode. From Ken Pettit (2014-12-12).
|
||
* libc/stdio/lib_sscanf.c: Accept %X as well as %x as a format
|
||
specifier. From Sébastien Lorquet (2014-12-12).
|
||
* libc/stdio/lib_sscanf.c: Also accept %F as well as %f (2014-12-12).
|
||
* arch/arm/src/stm32/stm32_otghsdev.c: For STM32 OTG HS DEV (in FS
|
||
mode): Disable ULPI clock enable in RCC AHB1 Register. If Both ULPI
|
||
and the FS clock enable bits are set in FS mode, then the ARM never
|
||
awakens from WFI due to a chip issue. This is only an issue if you
|
||
are using the internal PHY. From Ken Pettit (2014-12-13).
|
||
* drivers/serial/serial.c: In case a thread is doing a blocking
|
||
operation (e.g. read()) on a serial device, while it is being
|
||
terminated by pthread_cancel(), then uart_close() gets called, but
|
||
the semaphore (dev->recv.sem in the above example) is still blocked.
|
||
This means that once the serial device is opened next time, data will
|
||
arrive on the serial port (and driver interrupts handled as normal),
|
||
but the received characters never arrive in the reader thread.
|
||
The problem was fixed by re-initializing the semaphores on the last
|
||
uart_close() on the device. From Harald Welte (2014-12-13).
|
||
* sched/semaphore/sem_recover.c, Make.defs, seamphore.c,
|
||
sched/wdog/wd_recover.c, Make.defs, wdog.h, sched/task/task_recover.c:
|
||
Add logic to clean up after task_delete() or pthread_cancel() if the
|
||
task happens to be waiting on a semaphore when it is cancelled
|
||
(2014-12-13).
|
||
* arch/arm/src/kl/kl_gpioirq.c, Kconfig, Make.defs, and kl_irq.c: Add
|
||
GPIO interrupt capability for the KL architecture. The patch is
|
||
almost the same as kinetis_pinirq.c, just minor modifications and
|
||
rename kl_pinirq to kl_gpioirq to make it more generic to developers.
|
||
From Alan Carvalho de Assis (2014-12-13).
|
||
* arch/sim/src/up_ajoystick.c, Kconfig, Makefile, up_idle.c,
|
||
up_internal.h, up_x11eventloop.c, up_x11framebuffer.c,
|
||
configs/sim/src/Makefile, sim_boot.c, and traveler/defconfig: Add an
|
||
X11 mouse-based simulation of an analog joystick device (2014-12-14).
|
||
* drivers/sensors/adxl345*, include/nuttx/sensors/adxl345.h and other
|
||
files: Add driver support for the ADXL345 accelerometer. From Alan
|
||
Carvalho de Assis (2014-12-16).
|
||
* configs/freedom-kl25z: Add board support for the ADXL345 accelerometer.
|
||
From Alan Carvalho de Assis (2014-12-16).
|
||
* Kconfig, include/debug.h, drivers/sensors/*, and Qencoder logic in
|
||
arch/arm/src/stm32 and various QEncoder board support files under
|
||
config/: Unify sensor debug. ADX driver was using input debug; LM75
|
||
and QENCODE that their own custom debug. Now all use
|
||
CONFIG_DEBUG_SENSOR, sndbg() (2014-12-16).
|
||
* configs/dk-tm4c129x: Initial board support for the Tiva DK-TM4C129x
|
||
Connected Development Kit. The initial commit is just the Tiva
|
||
TM4C123G-Launchpad board support with naming changes (2014-12-16).
|
||
* include/nuttx/sched.h, sched/Kconfig, sched/init/os_start.c,
|
||
sched/pthread/pthread_create.c, sched/task/task_prctl.c,
|
||
sched/task/task_setup.c: strncpy() will not copy the terminating \0
|
||
into the destination if the source is larger than the size of the
|
||
destination. Ensure that the last byte is always zero and let strncpy
|
||
only copy CONFIG_TASK_NAME_SIZE bytes. The issue of unterminated names
|
||
can be observed in ps when creating a pthread while
|
||
CONFIG_TASK_NAME_SIZE is set to 8. From Daniel Willmann (2014-12-17).
|
||
* configs/*/*/defconfig: The previous change increased the task name
|
||
size allocation by one to hold a NUL terminator. This changes reduces
|
||
the configured name size by one so that no additional memory is used
|
||
(2014-12-17).
|
||
* drivers/wireless/cc3000/cc3000.c: CC3000 Fix: Data can be unaligned.
|
||
When dereferenced as an input ntosh(), a bad value is returned.
|
||
Reported by Alan Carvalho de Assis (2014-12-18).
|
||
* configs/freedom-kl25z: Update the Freedom KL25Z board CC3000 support
|
||
to use the current CC300 interfaces. From Alan Carvalho de Assis
|
||
(2014-12-18).
|
||
* arch/arm/src/tiva, include/tiva, and many configurations: Change
|
||
negative Tiva logic CONFIG_TIVA_DISABLE_GPIOx_IRQS to positive logic
|
||
CONFIG_TIVA_GPIOx_IRQ (2014-12-18).
|
||
* arch/arm/src/tiva/Kconfig: Fix configuration logic for IRQ interrupts.
|
||
The various parts support varying numbers of GPIO blocks and with varying
|
||
capabilities to support interrupts on the pins of different GPIO blocks
|
||
(2014-12-18).
|
||
* arch/arm/src/stm32/chip/stm32f40xxx_rcc.h: PLLSAI register name to
|
||
this one in the reference manual. From Marco Krahl (2014-12-19).
|
||
* arch/arm/src/stm32/chip/stm32_ltdc.h: Rename CFBLR register name to
|
||
the name used in the reference manual. From Marco Krahl (2014-12-19).
|
||
* arch/arm/src/stm32/chip/stm32_ltdc.h: Add missing clut register
|
||
definition. From Marco Krahl (2014-12-19).
|
||
* arch/arm/src/stm32/stm32f40xxx_rcc.c: Configure PLLSAI clock to
|
||
enable ltdc register access. From Marco Krahl (2014-12-19).
|
||
* configs/stm32f429i-disco/include/board.h: Update board definition for
|
||
the ili9341 LCD display. This configures all LCD settings for the RGB
|
||
interface. Also adds a customer LCD display template. From Marco Krahl
|
||
(2014-12-19).
|
||
* arch/arm/src/stm32/stm32_ltdc.h: Define a common layer description for
|
||
the ltdc and dma2d controller. From Marco Krahl (2014-12-19).
|
||
* arch/arm/src/stm32/stm32_dma2d.c/.h and related files: Add
|
||
infrastructure for dma2d support. From Marco Krahl (2014-12-19).
|
||
* arch/arm/include/stm32/ltdc.h: Add interface to perform hardware
|
||
accelerated layer operation. The following methods must be supported
|
||
by the implementation: gevideoinfo, getplaneinfo, getlid, setclut,
|
||
getclut, setcolor, getcolor, setcolorkey, getcolorkey, setalpha,
|
||
getalpha, setblendmode, getblendmode, setarea, getarea, and update.
|
||
And if DMA2D is supported: blit and blend. The method up_ltdcgetlayer
|
||
provides access to a reference of a specific ltdc layer. From Marco
|
||
Krahl (2014-12-19).
|
||
* arch/arm/src/stm32/stm32_ltdc.c: Implements ltdc frambuffer support
|
||
for the generic nuttx framebuffer interface, (see nuttx/video/fb.h).
|
||
This also implements the interface to perform hardware accelerated
|
||
layer operation by the ltdc controller and dma2d controller later
|
||
(see nuttx/video/ltdc.h). The following methods are supported by the
|
||
ltdc interface: getvideoinfo, getplaneinfo, getlid, setclut, getclut,
|
||
setcolor, getcolor, setcolorkey, getcolorkey, setalpha, getalpha,
|
||
setblendmode, getblendmode, setarea, getarea, and update. From Marco
|
||
Krahl (2014-12-19).
|
||
* include/nuttx/lcd/ili9341.h: Update interface control definitions.
|
||
From Marco Krahl (2014-12-19).
|
||
* configs/stm32f429i-disco/src/stm32_lcd.c: Add support for
|
||
initializing ltdc framebuffer and the configured lcd display. This
|
||
adds support for initializing of the ltdc controller and the lcd
|
||
device connected on the stm32f429i-disco. The following methods are
|
||
provided for the generic fb interface: up_fbinitialize,
|
||
up_fbgetvplane, and up_fbuninitialize. The following methods are
|
||
provided for the ltdc interface: up_ltdcgetlayer. From Marco Krahl
|
||
(2014-12-19).
|
||
* zrch/arm/src/stm32/Kconfig: Add configuration option for ltdc. This
|
||
adds the following ltdc configuration options: dither support, cmap
|
||
support, is this the right place for CONFIG_FB_CMAP?, support for
|
||
extended ltdc interface. From Marco Krahl (2014-12-19).
|
||
* nuttx/configs/stm32f429i-disco: Enable configuration of framebuffer
|
||
support for the ltdc controller. From Marco Krahl (2014-12-19).
|
||
* configs/stm32f429i-disco/src/stm32_boot.c: Initialize ltdc during
|
||
bootup. From Marco Krahl (2014-12-19).
|
||
* configs/stm32f429i-disco/ltdc: Add default platform configuration to
|
||
test framebuffer support for the ltdc. . From Marco Krahl
|
||
(2014-12-19).
|
||
* libnx/nxfonts/nxfonts_getfont.c: A patch to add previous added font
|
||
into nxf_getfonthandle function. From Pierre-Noel Bouteville
|
||
(2014-12-19).
|
||
* arch/arm/src/tiva, include/tiva, and many configurations: Change
|
||
negative Tiva logic CONFIG_SSIx_DISABLE to positive logic
|
||
CONFIG_TIVA_SSIx. Add support for SSI2 and SSI3 (2014-12-21).
|
||
* arch/arm/src/efm32/efm32_pwm.c/.h, efm32_timer.c/.h, and related
|
||
build files: Add support for timer/PWM on the EFM32GG. From
|
||
Pierre-noel Bouteville (2014-12-26).
|
||
* drivers/serial/Kconfig, serial.c, serialirq.c, and
|
||
include/nuttx/serial/serial.h: Add watermark levels to the serial
|
||
RX flow control logic. Modify the rxflowcontrol method to accept
|
||
the number of bytes in the buffer and a boolean indication of which
|
||
watermark was crossed (2014-12-27).
|
||
* sched/semaphore/sem_waitirq.c must be built when signals are disabled.
|
||
That is because not handles not only the case of semaphore wait
|
||
being awakened by a signal, but also the case with sem_timedwait.c
|
||
when the semaphore wait is awakened by a timeout (2014-12-28).
|
||
* arch/arm/src/stm32/stm32_ltdc.c: stm32: fix faulty access to non-
|
||
existing layer. This disables operation that requires double layer
|
||
support, when configured for single layer only. From Marco Krahl
|
||
(2014-12-29).
|
||
* arch/arm/src/stm32/stm32_ltdc.c: stm32: fix wait upon vertical blank.
|
||
This should never have occurred before. From Marco Krahl (2014-12-29).
|
||
* configs/stm32f429i-disco/ltdc/defconfig and src/stm32_boot.c:
|
||
stm32f429i-disco: change ltdc initializing during boot up. This moves
|
||
initializing of the ili9341 lcd and ltdc driver to the board specific
|
||
initializing routine. From Marco Krahl (2014-12-29).
|
||
* arch/arm/src/stm32/stm32_ltdc.c: Clean up documentation, some
|
||
formatting improvements. From Marco Krahl (2014-12-29).
|
||
* arch/arm/src/tiva/chip/tiva_ethernet.h, lm3s_ethernet.c, and
|
||
tm4c_ethernet.h: Add logic to discriminate between LM3S class Ethernet
|
||
register definitions and TM4C129X class Ethernet register definitions.
|
||
Add TM4C129X Ethernet register definitions (2014-12-30).
|
||
* arch/arm/src/tiva/tm4c_ethernet.c, lm3s_ethernet.c, Kconfig, and
|
||
Make.defs: First cut at TM4C129X Ethernet driver. Initial commit is
|
||
basically just the STM32 Ethernet driver with modifications for a clean
|
||
compilation in the Tiva environment (2014-12-31).
|
||
* arch/arm/src/stm32/stm32_rtc.c, stm32_rcc.c, Kconfig: Add support for
|
||
the internal low speed clock (LSI) as a source of the RTC clock. Some
|
||
boards do not have the external 32khz oscillator installed, for those
|
||
boards we must fallback to the crummy internal RC clock. Turn on by
|
||
defining CONFIG_RTC_LSICLOCK. From Kevin Hester (2015-01-02).
|
||
* net/tcp/tcp_conn.c: Fix a logic error when CONFIG_NETDEV_MULTINIC is
|
||
selected: net_unlock(flags) will be called will an uninitialized
|
||
variable (2015-01-03).
|
||
* arch/arm/src/tiva/tiva_irq.c: Fix Tiva IRQ control logic; was limited
|
||
to only 64 IRQs. That is a problem for higher numbered IRQs on many
|
||
platforms (2015-01-06).
|
||
* arch/arm/src/stm32/stm32_sdio.c, drivers/mmcsd/mmcsd_sdio.c and Kconfig,
|
||
and include/nuttx/sdio.h: MMCSD SDIO: Add support for a new
|
||
SDWAIT_WRCOMPLETE condition. The previous logic used a busy-wait loop
|
||
to poll the card R1 status to determine when the card was ready for
|
||
the next transfer. That busy-wait can be quite long -- up to hundreds
|
||
of milliseconds. An alternative is to look the SD D0 pin which
|
||
will change state when the card is no longer busy. This change avoids
|
||
the busy-wait poll by reconfiguring the SD D0 pin as a GPIO interrupt,
|
||
then waiting for the card to become ready without taking up CPU
|
||
cycles. This change is conditioned on CONFIG_MMCSD_SDIOWATI_WRCOMPLETE
|
||
and is currently only implemented for the STM32 SDIO driver. From
|
||
David Sidrane (2015-01-08).
|
||
* arch/arm/src/tiva/tiva_timerlib.c and .h: Add a timer library for
|
||
generic support of Tiva timers (2015-01-08).
|
||
* arch/arm/src/tiva/tiva_timerlow32.c: Add a driver lower half for
|
||
drivers/timer.c. Only 32-bit periodic timers are supported. This
|
||
provides userspace access to timers.
|
||
* configs/px4-v2_upstream, Kconfig, README.txt: Remove the px4-v2_upstream
|
||
configuration. Moved to misc/Obsoleted/configs. This was not the
|
||
official configuration for the PX4 board and has led to confusion by
|
||
NuttX users. The board configuration also requires some ongoing
|
||
maintenance and customization to support ongoing PX4 testing and
|
||
evaluation. It is best retained the PX4 repositories where it can be
|
||
properly maintained and not in the upstream NuttX repository
|
||
(2015-01-14).
|
||
* net/netdev/netdev_ioctl.c and include/nuttx/net/ioctl.h: Add support
|
||
for IPv6 ioctls to manipulate IP addresses (2015-01-14).
|
||
* net/icmpv6: Create a future home for ICMPv6 (2015-01-14).
|
||
* net/icmp: Remove all logic conditioned on CONFIG_NET_IPv6
|
||
(2015-01-14).
|
||
* net/, include/nuttx/net, and a few other files: (1) Copied all ICMP
|
||
sources files to net/icmpv6 with proper renaming and removal of IPv4
|
||
logic, (2) remove IPv6 logic from files in net/icmp, (3) copied
|
||
include/nuttx/icmp.h to icmpv6.h and removed IPv4 specific logic, (4)
|
||
removed all IPv6 logic from icmp.h, (5) IP_HDRLEN became IPv4_HDRLEN
|
||
and IPv6_HDRLEN, (6) ip_chksum() became ipv4_chksum() and
|
||
ipv6_chksum(), and (7) added partial support for ICMPv6 statistics
|
||
(2015-01-14).
|
||
* arch/, drivers/net/, include/nuttx/net, and net/devif: (1) Rename
|
||
devif_input() ipv4_input(), (2) copy net/devif/devif_input.c to
|
||
ipv6_input.c, remove all IPv4-specific logic, (3) rename
|
||
net/devif/devif_input.c to ipv4_input.c, remove all IPv6-specific
|
||
logic, and (4) xplit IPv4 header structure out as net_ipv4hdr_s from
|
||
net_iphdr_s (2015-01-15).
|
||
* arch/ and drivers/net: All Ethernet drivers: Call ipv6_input() if
|
||
IPv6 is enabled and an IPv6 packet is received (2015-01-15).
|
||
* net/devif, net/tcp, net/ucp, include/nuttx/net: Separate tcp_input()
|
||
and udp_input() into separate functions tcp_ipv4_input(),
|
||
tcp_ipv6_input(), udp_ipv4_input(), and upd_ipv6_input() than can deal
|
||
will the data offsets caused by the differing sizes of the IP header
|
||
(2015-01-15).
|
||
* net/utils/net_ipv6_maskcmp.c: Add missing implementation of
|
||
net_ipv6_maskcmp() (2015-01-15).
|
||
* Networking: Drivers can have both IPv4 and IPv6 addresses, but a
|
||
socket can only only one or the other; The socket connection
|
||
structures need to include a union of IPv4 and IPv6 addresses for
|
||
the local address binding and for the remote address connections
|
||
(2015-01-16).
|
||
* Networking: Replace all references to net_ipaddr_t with either
|
||
in_addr_t on net_ipv6addr_t. The goal is to support both IPv4 and
|
||
IPv6 simultaneously. This requires that the two types be distinct
|
||
and not conditionally typedef'ed to net_ipaddr_t (2015-01-16).
|
||
* Networking: Replace all references to the macros net_ipaddr_copy,
|
||
net_ipaddr_hdrcopy, net_ipaddr_cmp, net_ipaddr_hdrcmp, and
|
||
net_ipaddr_maskcmp with the appropriate IPv4 or IPv6 version of the
|
||
macro (such as net_ipv4addr_copy). The goal is to support both
|
||
IPv4 and IPv6 simultaneously. This requires that the macros be
|
||
distinct and not conditionally defined to one on or the other
|
||
(2015-01-16).
|
||
* Networking: UDP and TCP MSS depends on the IP header size (as well
|
||
as the link layer header size) and cannot be represented with a
|
||
single value (2015-01-16).
|
||
* net/neighbor: Move net/ipv6 to net/neighbor (2015-01-16).
|
||
* include/net/if.h: Add a bit to the device flags to indicate if the
|
||
device packet buffer holds an IPv4 or an IPv6 domain packet.
|
||
Set/clear the flag along with the correct offset to the application
|
||
payload data as each packet is received (2015-01-17).
|
||
* net/socket, net/tcp, net/udp: Add logic to select the domain of the
|
||
outgoing packet before sending any UDP or TCP packet. This sets the
|
||
bit to indicate the IPv4 or IPv6 domain and the correct offset to the
|
||
output going payload data (2015-01-17).
|
||
* net/socket and net/tcp: When we are ready to receive data or when we
|
||
have outgoing data ready to be sent, we need to the notify the
|
||
appropriate device driver of this condition. The notifying socket
|
||
will be configured as either PF_INET or PF_INET6 and must look up the
|
||
correct driver using the correct IP domain (2015-01-17).
|
||
* net/socket/accept.c: Fix accept() so that it returns the correct IP
|
||
address for the selected socket IP domain (2015-01-17).
|
||
* Networking: Final detangling off IPv4 and IPv6 TCP/UDP send logic.
|
||
The networking subsystem now compiles with IPv6 enabled (2015-01-18).
|
||
* arch/arm/src/tiva/tm4c_ethernet.c: When calling into the stack
|
||
from the worker thread, it is necessary to have the stack locked
|
||
(2015-01-18).
|
||
* nuttx/arch/arm/src/stm32/stm32_serial.c: fix declaration and
|
||
definition of up_receive() and up_dma_receive() to match fields of
|
||
uart_ops_s from nuttx/include/nuttx/serial/serial.h. From Freddie
|
||
Chopin (2015-01-19).
|
||
* drivers/pipes/pipe.c, drivers/usbdev/cdcacm.c, and
|
||
mm/mm_gran/mm_granalloc.c: Fixes some issues found by the PX4 team
|
||
using Coverity. From Pavel Krienko (2015-01-19).
|
||
* net/icmpv6/icmpv6_solicit.c, net/neighbor/neighbor_out.c, and other
|
||
files: Add logic to search the Neighbor Table and update the
|
||
destination address in the output Ethernet header OR to send an
|
||
ICMPv6 Neighbor Solicitation if there is no entry in the Neighbor
|
||
table for the IPv6 address (2015-01-20).
|
||
* arch/ and drivers/net: Add missing raw/packet socket support to
|
||
all Ethernet driverss (2015-01-20).
|
||
* arch/ and drivers/net: Networking: Modify all Ethernet drivers:
|
||
Do neighbor look-up on all outgoing IPv6 packs in order to properly
|
||
set the destination link layer address (2015-01-20).
|
||
* Networking: When sending ICMPv6 advertisements and solicitations,
|
||
set the NOARP bit so that we don't overwrite the destination MAC
|
||
address (2015-01-20).
|
||
* Many files: Correct name of fields in struct sockaddr_in6: sin6_port
|
||
and sin6_family, not sin_port and sin_family (2015-01-20).
|
||
* net/socket/accept.c: Correct the value returned by accept() in the
|
||
case where net_lockingwait() is called. It was returning -1 and
|
||
losing the errno value. Noted by Rony Xln (2015-01-22).
|
||
* net/: After some significant effort, ICMPv6 and TCP are both
|
||
functional when IPv6 is selected. UDP still requires testing
|
||
(2015-01-22).
|
||
* configs/dk-tm4c129x/ipv6: Add an IPv6-enabled NSH configuration
|
||
(2015-01-23)
|
||
* include/nuttx/net/icmpv6.h and net/icmpv6/icmpv6_ping.c: First cut
|
||
at ICMPv6 ping logic. It works in both directions! (2015-01-23).
|
||
* arch/arm/src/efm32/efm32_rmu.c and .h: Add support for the EFM32
|
||
reset management unit (RMU). From Pierre-noel Bouteville
|
||
(2015-01-23).
|
||
* include/nuttx/math.h: Adds support for the expm1 functions:
|
||
http://pubs.opengroup.org/onlinepubs/009695399/functions/expm1.html.
|
||
From Brennan Ashton (2015-01-23).
|
||
* Many file: Add CONFIG_STACK_COLORATION that does the same thing as
|
||
CONFIG_DEBUG_STACK but without enabling debug. From David Sidrane
|
||
(2015-01-24).
|
||
* Remove CONFIG_DEBUG_STACK. Adding CONFIG_STACK_COLORATION makes
|
||
this configuration option pointless (2015-01-24).
|
||
* net/: Clean up network status collection for IPv6 (2015-01-24).
|
||
* arch/ and configs/: Changes to get USART 2 & 3 working on
|
||
lpc4357-evb. These changes are required to get USART 2 and 3 working
|
||
on the Embest development board. From Toby Duckworth.
|
||
|
||
7.8 2015-02-11 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* include/nuttx/math.h and libc/math: Add support for inverse
|
||
hyperbolic functions. From Brennan Ashton (2015-01-26).
|
||
* include/nuttx/math.h: Add math library definition for isfinite().
|
||
From Brennan Ashton (2015-01-26).
|
||
* include/nuttx/math.h and libc/math/lib_erf*.c: Add error function
|
||
to math library. From Brennan Ashton (2015-01-26).
|
||
* include/nuttx/math.h and libc/math: Add math library defines for
|
||
nan(), copysign(), and trunc() functions. From Brennan Ashton
|
||
(2015-01-26).
|
||
* sched/wqueue/kwork_process and libc/wqueue/lib_usrthread.c: Fix
|
||
a backward calculation when determining the time to the next event.
|
||
This is a bug in the back-up, "fail safe", work queue timing so it
|
||
not as bad as it seems. From Liio Chen via the PX4 repository
|
||
(2015-01-27).
|
||
* arch/arm/src/stm32/stm32_exti_gpio.c: Disabling any of EXTI 5-9
|
||
interrupts was disabling interrupts for all EXTI 5-9. Same issue with
|
||
EXTI 10-15. From Jussi Kivilinna (2015-01-27).
|
||
* arch/arm/src/stm32/stm32_rtcc.c and Kconfig: Recent changes to
|
||
stm32_rtcc.c do not compile with STM32L15XX configurations. From
|
||
Jussi Kivilinna (2015-01-27).
|
||
* net/local: Add initial support for local, Unix domain sockets.
|
||
Initial support is limited to SOCK_STREAM and is untested on
|
||
initial commit (2014-01-27).
|
||
* net/iob, net/tcp/tcp_callback.c, and include/nuttx/net/iob.h: There
|
||
were issues with the TCP write-ahead buffering if CONFIG_NET_NOINTS was
|
||
enabled: There is a possibility of deadlocks in certain timing conditions.
|
||
I have not seen this with the Tiva driver that I have been users but
|
||
other people claim to see the issue on other platforms. Certainly it
|
||
is a logic error: The network should never wait for TCP read-ahead
|
||
buffering space to be available. It should drop the packets
|
||
immediately. This was fixed by duplicating most of the IOB interfaces:
|
||
The versions that waited are still present (like iob_alloc()), but now
|
||
there are non-waiting versions of the same interfaces (like
|
||
iob_tryalloc()). The TCP read-ahead logic now uses only these non-
|
||
waiting interfaces (2015-01-27).
|
||
* net/tcp/tcp_send_buffered.c and tcp_wrbuffer.c: Fix another deadlock
|
||
condition. tcp_write_buffer_alloc() calls sem_wait() with network
|
||
locked. That worked if CONFIG_NET_NOINTS was not defined because
|
||
interrupts are automatically restored when the wait happens. But
|
||
with CONFIG_NET_NOINTS=y, the wait blocks with the network locked --
|
||
bad style and also can lead to a deadlock condition (2015-01-28).
|
||
* arch/arm/src/armv7-a/arm_memcpy.S and arch/arm/src/armv7-m/up_memcpy.S:
|
||
ARM assembly language memcpy.S's were not returning a value in R0 they
|
||
are required to do. From David Sidrane (2015-01-29).
|
||
* net/local: Extend Unix domain socket support to include support
|
||
for datagram Unix domain sockets (2015-01-29).
|
||
* net/socket/accept.c: Fix a major TCP bug introduced with commit
|
||
e71c09ce9777ff732cb60bd07fb43d85522f79d6. Some connection logic was
|
||
reordered; setting the socket as 'connected' got moved to BEFORE the point
|
||
where the check was made if the socket was already connected. The
|
||
resulting behavior was odd: Telnet would connect, but then when you
|
||
exit and reconnect, it would fail to connect. But then if try again, it
|
||
would connect okay. So the symptom was connect-fail-connect-fail-...
|
||
(2015-01-29).
|
||
* net/socket/net_poll.c, recvfrom.c, and udp/udp_callback.c: Add UDP
|
||
read-ahead support. This enables support for for poll/select on UDP
|
||
sockets and also non-blocking UDP sockets. From Macs N (2015-01-30).
|
||
* net/local/local_netpoll.c, socket/net_poll.c, and udp/udp_netpoll.c:
|
||
Separate out UDP poll logic from net_poll.c into a new udp_netpoll.c;
|
||
Create a skeleton local_netpoll (2015-01-30).
|
||
* net/socket/net_poll.c and tcp/tcp_netpoll.c: Separate TCP poll logic
|
||
out of net_poll.c and move it into the new tcp_netpoll.c (2015-01-30).
|
||
* arch/arm/src/efm32/efm32_clockconfig.c: Logic to unconditionally enable
|
||
LE clocking. Even you don't use core clock LE as source for LFA or LFB,
|
||
to read are write any register not clocked by HFPERCLK or HFCORECLK,
|
||
HFCORECLKLE should be enabled. From Pierre-noel Bouteville (2015-01-30).
|
||
* drivers/net/slip.c: SLIP interface improvements. From Macs N
|
||
(2015-01-30).
|
||
* clock_systimespec(): Fixes for compilation errors in certain
|
||
configurations. From Macs N.
|
||
* drivers/pipes/fifo.c, include/nuttx/fs/ioctl.h, and net/local/local_fifo.c:
|
||
Fix a race condition between FIFO buffer operations and the opening and
|
||
closing of FIFOs which necessary when the FIFOs are used to support
|
||
Unix domain, datagram sockets. The default policy is the deallocate
|
||
FIFO buffering when the last client closes the pipe. When when used
|
||
for datagram communications, packets left in the FIFO will be lost.
|
||
Some like UDP read-ahead is needed: The buffered data in the FIFO
|
||
needs to be retained until the reader gets a chance to re-open the
|
||
FIFO. Added an ioctl (PIPEIOC_POLICY) to control the buffer policy.
|
||
Default (0) is the legacy behavior; Unix domain datagram logic sets
|
||
the alternative policy so that the packet data persists after the FIFO
|
||
is closed (2015-01-30).
|
||
* net/local: Add configuration options so that Unix domain stream and
|
||
datagram support can be separately enabled (2015-01-31).
|
||
* fs/vfs/fs_unlink.c and include/nuttx/fs/fs.h: Add an unlink method to
|
||
both the character and block driver interface. This is important
|
||
because if the driver inode is unlinked and there are no open references
|
||
to the driver, then the driver resources will be stranded. On the unlink
|
||
call, the driver has the opportunity (1) check if there an any open
|
||
references, and if not, (2) free the driver resources (2015-01-31).
|
||
* drivers/pipes: Implement the unlink method. If the pipe/FIFO is
|
||
unlinked, it will marked the pipe/FIFO as unlinked. If/when all open
|
||
references to the driver are closed, all of the driver resources will
|
||
be freed (2015-01-31).
|
||
* arch/avr: Added architecture support for the Atmel AVR ATMega1284P
|
||
MCU. From Jedi Tek'Unum (2015-01-31).
|
||
* configs/moteino-mega: Added support for the LowPowerLab MoteinoMEGA
|
||
that is based on the Atmel AVR ATMega1284P MCU. From Jedi Tek'Unum
|
||
(2015-01-31).
|
||
* EFM32 RTC: RTC driver using BURTC. From Pierre-Noel Bouteville
|
||
(2015-02-01).
|
||
* drivers/ramdisk.c, include/nuttx/fs/ramdisk.h, and other files: Add
|
||
logic to dispose of the driver and RAM buffer when the RAM disk has
|
||
been unlinked and all open references to the RAM disk have been
|
||
closed. Add new parameters to romdisk() to specify what should be
|
||
done with the RAM/ROM buffer -- Should it be freed or not? Changed
|
||
all calls to ramdisk() to use these new parameters (2015-02-01).
|
||
* net/icmpv6/icmpv6_neighbor.c, icmpv6_notify.c (and other files): Adds
|
||
basic logic to support verification that we have the IPv6 address in
|
||
the Neighbor Table. This feature is important because otherwise the
|
||
first packet sent to a remote peer will fail (it will be replaced
|
||
with a Neighbor Solicitation) (2015-01-02).
|
||
* net/arp/arp.h, arp_notify.c, and arp_send.c: Fixes another
|
||
CONFIG_NET_NOINTS issues. When called sem_timedwait() with the
|
||
network locked, the network stays locked while we wait which is not
|
||
what we want (without CONFIG_NET_NOINTS, interrupts are re-enabled
|
||
while we wait and all is well) (2015-02-02).
|
||
* net/icmpv6/icmpv6.h, icmpv6_neighbor.c, icmpv6_notify.c: Apply the
|
||
same fix as for ARP to the Neighbor Solicitation logic (2015-02-02).
|
||
* sched/sched/sched_timerexpiration.c, Kconfig, and include/nuttx/arch.h:
|
||
On my platform I have just 16-bit timer clocked at 32kHz. As result
|
||
oneshot timer max delay is 2s. The patch adds limit of maximum ticks
|
||
in sched_timer_start(). From Macs N (2015-02-03).
|
||
* arch/arm/src/sam34: Add support for Tickless mode of operation for
|
||
the SAM4CM platform. From Macs N (2015-02-03).
|
||
* include/nuttx/net/icmpv6.h and net/icmpv6/Kconfig: Add support for
|
||
sending ICMPv6 Router Solicitation and receiving Router advertisement.
|
||
This is a part of the ICMPv6 auto-configuration logic is still not
|
||
complete (2015-02-03).
|
||
* libnx/nxfonts/nxfonts_getfont.c and nxfonts_sans39x48.h: Fixes a
|
||
problem with one of the font files. From Pierre-noel Bouteville
|
||
(2015-02-03).
|
||
* arch/arm/src/efm32/efm32_rtc_burtc.c: Remove a misbehaving assertion.
|
||
From Pierre-noel Bouteville (2015-02-03).
|
||
* net/icmpv6: Implemented the ICMPv6 Autonomous Auto-Configuration
|
||
logic. This is an IPv6 alternative to DHCP. It obtains the IPv6
|
||
addresses and masks using ICMPv6 Router Solicitation and
|
||
Advertisement messages (2015-02-03).
|
||
* arch/arm/src/stm32/stm32_aes.c, stm32_aes.h, and
|
||
chip/stm32l15xxx_aes.h: Add driver for STM32L162XX AES peripheral.
|
||
From Juha Niskanen (2015-02-04).
|
||
* net/icmpv6/icmpv6_radvertise.c, Kconfig, and other files: Add option
|
||
to send Router Advertisement Messages (2015-02-05).
|
||
* net/icmpv6/icmpv6_input.c, arch/arm/src/tiva/tm4c_ethernet.c, and
|
||
stm32/stm32_eth.c: Add logic to behave like a router (if so
|
||
configured): NuttX will not send the router advertisement message
|
||
in response to any router solicitation messages (2015-02-05).
|
||
* configs/stm32f4discovery/ipv6 and arch/arm/src/stm32/stm32_eth.c: Add
|
||
an IPv6 configuration for the STM32F4-Discovery board (with the
|
||
STM32-DISCO_BB base board). Verify that the STM32 Ethernet driver
|
||
works with IPv6 (2015-02-05).
|
||
* net/icmpv6/icmpv6_input.c and icmpv6_rnotify.c: With these two
|
||
changes both ICMPv6 autonomous autoconfiguration and router
|
||
functionality appear to be working with no problems (2015-02-05).
|
||
* arch/arm/src/tiva and configs/tm4c123g-launchpad: Adds support for
|
||
TM4C123G timers; integrates with the TM4C123G Launchpad. From Calvin
|
||
Maguranis (2015-02-05).
|
||
* arc/arc/src/tiva/tiva_adc.c and .h: Adds a Tiva ADC driver. From
|
||
Calvin Maguranis (2015-02-05).
|
||
* tmv4c123g-launchpad: Add Tiva ADC support to the TM4C123G-Launchpad.
|
||
From Calvin Maguranis (2015-02-05).
|
||
* arch/arm/src/stm32/stm32_spi.c: The source clock for SPI 4,5, and 6
|
||
should be PCLK2, not PCLK1 (for F411, F427, and F429). Per David
|
||
Sidrane (2015-02-07).
|
||
* drivers/syslog/syslog_console.c, include/nuttx/syslog/syslog_console.h,
|
||
and the console device initialization logic for all architectures: Add
|
||
an option to use the syslog'ing device as the system console. This
|
||
option enables a low-level, write-only console device at /dev/console
|
||
(similar to the low-level UART console device). From Pierre-noel
|
||
Bouteville (2015-02-08).
|
||
* net/utils: Clean up and consolidate some clunky stuff in ARP and
|
||
ICMPv6 time waiting logic by adding new net_timedwait() function
|
||
(2015-4-09).
|
||
* arch/arm/src/stm32/stm32_eth.c: Add logic so that STM32 Ethernet
|
||
driver can avoid interrupt level processing and, instead, execute on
|
||
the work thread (2015-4-09).
|
||
* configs/stm32f4discovery/netnsh and ipv6: Convert all STM32F4-
|
||
Discovery configurations (with base board) to configure the Ethernet
|
||
driver to use the work queue (vs. interrupt level processing)
|
||
(2015-4-09).
|
||
* libc/unisted/lib_execl.c: Fix bad logic in counting the number of
|
||
arguments. This could never have worked. Noted by Pierre-noel
|
||
Bouteville (2015-4-09).
|
||
* arch/arm/src/sama5/sam_emacb.c: Add support for Multicast address
|
||
matching and IPv6 in the SAMA5D4 Ethernet driver (2015-02-09).
|
||
* configs/sama5d4-ek/ipv6: Add a configuration for testing IPv6 with
|
||
the SAMA5D4-EK (2015-02-09).
|
||
* arch/arm/src/armv7-a/arm_doirq.c: ARMv7-A interrupt handler should not
|
||
automatically re-enable interrupts on interrupt return. That
|
||
interferes with the driver's ability to manage interrupts (2015-02-09).
|
||
* arch/arm/src/sama5/sam_emacb.c: Add support for CONFIG_NET_NOINTS in
|
||
the SAMA5D4 Ethernet driver so that the driver can operate from the
|
||
work queue thread instead of doing everything from the interrupt level
|
||
(2015-02-09).
|
||
* SAMA5D4-EK: CONFIG_NET_NOINTS is now enabled in the nsh and ipv6
|
||
configurations (2015-02-09).
|
||
* arch/arm/src/a1x, arm, c5471, common, dm320, imx, lpc2378, lpc31xx,
|
||
sama5, str71x, hc/src.common, sh/src/common, x86/src/common,
|
||
z16/src/common, z16f, z80/src/z8: Big, very risky change: Remove all
|
||
occurrences of up_maskack_irq() that disable and enable interrupts
|
||
with up_ack_irq() that only acknowledges the interrupts. This is only
|
||
used in interrupt decoding logic. Also remove the logic that
|
||
unconditionally re-enables interrupts with the interrupt exits. This
|
||
interferes with the drivers ability to control the interrupt state.
|
||
This is a necessary, sweeping, global change and unfortunately
|
||
to test (2015-02-09).
|
||
* mtd/ramtron.c: Table of parts is not terminated properly if
|
||
CONFIG_RAMTRON_FRAM_NON_JEDEC is not defined. Noted by David
|
||
Sidrane (2015-02-09).
|
||
* arch/arm/src/sam34/sam_emac.c, sama5/sam_emaca.c, and sama5/sam_gmac.c:
|
||
Clone the SAMA5D4 IPv6 support to the SAM4E EMAC and SAMAd3 EMAC and
|
||
GMAC drivers (2015-02-09).
|
||
* net/: Lots of build problems introduced into multiple NIC support.
|
||
Many places where conditional logic based on CONFIG_NETDEV_MULTINIC is
|
||
confused with CONFIG_NET_MULTILINK. Lots of code changed with IPv6
|
||
that was never compiled with MULTINIC enabled. Still some problem
|
||
with parameter passing in the MULTINIC configuration(2015-02-09).
|
||
* net/iob/Kconfig: In IOB Configuration, the default number of IOB
|
||
chains must be more than zero is UDP read-ahead is enabled (2015-02-10).
|
||
* net/tcp/tcp_conn.c and udp/udp_conn.c: Fix several build errors/warning
|
||
with IPv4 + IPv6 + multiple networks are enabled (2015-02-10).
|
||
* arch/arm/src/sam34/sam_emac.c: SAM4 Ethernet driver bow supports
|
||
operation using the high priority work queue so that packet processing
|
||
can occur outside of interrupt level processing (2015-02-10).
|
||
* SAM4E-EK: The nsh configuration now configures the Ethernet driver
|
||
for execution on the HP work thread (2015-02-10).
|
||
* arch/arm/src/lpc17xx/lpc17_ethernet.c: Add IPv6 support to the LPC17
|
||
Ethernet driver. Untested... I no longer have a proper environment
|
||
for LPC17 debug (2015-02-10).
|
||
* include/netinet/in.h and libc/net/lib_addrconfig.c: Some extensions
|
||
to netinet/in.h adding some Linux compatible definitions. From Macs N
|
||
(2015-02-11).
|
||
* arch/arm/src/kl: Add architectural support for the K26Z128VLH4 chip.
|
||
From Derek B. Noonburg (2015-02-11).
|
||
* configs/freedom-kl26z: Add board support for the Freedom KL26Z board.
|
||
From Derek B. Noonburg (2015-02-11).
|
||
|
||
7.9 2015-04-14 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/tiva: Add support for the TM4C1294. Contributed by
|
||
Frank Sautter (2015-02-11).
|
||
* configs/tm4c1294-launchpad: Add support for the TM4C1294 Launchpad.
|
||
Contributed by Frank Sautter (2015-02-11).
|
||
* gettimeofday(): Move gettimeofdady() from sched/clock to libc/time.
|
||
Remove gettimeofday() from NuttX system calls. It is only a wrapper
|
||
around clock_settime() and does not need a trap. gettimeofday() is
|
||
no longer treated as a core OS interface (2015-02-12).
|
||
* settimeofday(): gettimeofday has been decrecated in POSIX 2008.
|
||
settimeofday() was never part of POSIX, but I decided to add it to
|
||
libc as well just for symmetry (2015-02-12).
|
||
* drivers/sensors/mpl115a.c and include/nuttx/sensors/mpl115a.h: Add
|
||
driver for the Feescale MPL115A baramoter. From Alan Carvalho de
|
||
Assis (2015-02-12).
|
||
* configs/viewtool-stm32f107: Add support for an optional, add-on
|
||
Freescale MPL115A baramoter. From Alan Carvalho de Assis
|
||
(2015-02-12).
|
||
* sched/clock/clock_systimer.c: Fix a problem in clock_systimer64 that
|
||
occurs when (1) the 64-bit system time is enabled, and (2) the value
|
||
of CONFIG_USEC_PER_TICK is less than 1 milliseconds (such as when using
|
||
the tickless mode of operation). In that case, the conversion of time
|
||
to 64-bit millisecond value in clock_systmer64() causes some bad times
|
||
to be returned. Time was converted to milliseconds, then to configured
|
||
ticks. Precision was lost in the millisecond conversion. The fix is
|
||
to first convert time to a 64-bit microsecond value, then to the
|
||
configured tick value. Noted by David Sidrane (2015-02-13).
|
||
* include/nuttx/rtc.h, arch.h, and arch/*/src/*_rtc.h: Removed all of the
|
||
old, malformed RTC interface definitions from include/nuttx/rtc.h. The
|
||
necessary prototypes have been removed, renamed, scattered to the wind,
|
||
hidden under rocks, -- whatever it takes to make it clear that there is
|
||
no RTC interface callable from application code (2015-02-13).
|
||
* include/nuttx/rtc.h and fs/ioctl.h: Begin the definition of a proper,
|
||
driver based RTC interfaces that is better suited to the architectural
|
||
goals of nuttx (2015-02-13).
|
||
* drivers/timers/timer.c and watchdog.c: Move timer-related drivers from
|
||
drivers/ to drivers/timers (2015-02-13).
|
||
* drivers/timers/rtc.c: Add an RTC upper half driver. This is the driver
|
||
that is documented in include/nutt/rtc.h (2015-02-13).
|
||
* arch/arm/src/stm32/stm32_rtcc.c and stm32_rtc.h: Break out a new internal
|
||
interface, stm32_rtc_setdatetime(). This eliminates some un-necessary
|
||
time conversions. From Freddie Chopin (2015-02-13).
|
||
* arch/arm/src/stm32/stm32_rtc_lowerhalf.c, Make.defs, and stm32_rtc.h: Add
|
||
a skeleton implementation of the RTC lower half interface at
|
||
arch/arm/src/stm32/stm32_rtc_lowerhalf.c. This is just the framework for
|
||
the RTC lower half. None of the interface methods have yet been
|
||
implemented (2015-02-13).
|
||
* net/icmpv6/icmpv6_advertise.c and icmpv6_solicit.c: Add inclusion of
|
||
nuttx/net.h to two files. Without these there can be compilation errors
|
||
in certain configurations. From Max Neklyudov (2015-02-13).
|
||
* net/net_initialize.c, sched/init/os_start.c, and a few other files:
|
||
Divide net_intiialize() into net_setup() and net_initialize() to solve
|
||
a chicken-and-egg problem. net_setup() must be called before
|
||
up_initialize() is called so that networking data structures are ready
|
||
to register new network devices. net_initialize() now does only timer
|
||
related operations and is called AFTER up_initialize() where the timers
|
||
are configured. Problem note by Max Neklyudov (2015-02-14).
|
||
* include/time.h and sys/time.h: Move struct timeval from include/time.h
|
||
to include/sys/time.h where it belongs (2015-02-15).
|
||
* arch/arm/src/stm32/stm32_rtcc.c, stm32_rtc.h, and Kconfig: Extend the
|
||
RTC interface to support reading subseconds. From Jussi Kivilinna
|
||
(2015-02-16).
|
||
* arch/arm/src/efm32/efm32_usbdev.c: EFM32 USB Device is now basically
|
||
functional with this change. From Pierre-noel Bouteville (2015-02-16).
|
||
* include/nuttx/net/ip.h: Move macros and common logic for IPv4-mapped
|
||
IPv6 addresses from files in net/ to include/nuttx/ip.h. These are
|
||
currently only used for UDP, but will need to be be used in many places
|
||
in the future (2015-02-17).
|
||
* includes/nuttx/compiler.h: Add support for the restrict keyword
|
||
(2015-02-17).
|
||
* include/netdb.h: Add a mostly-commented-out version of the standard
|
||
netdb.h header file (2015-02-17).
|
||
* arch/arm/src/tiva/: Updated files to allow for ADC triggering by the
|
||
timer. I’ve cleaned up some parts of the ADC code, too, and fleshed
|
||
out the PWM triggering ioctl. From Calvin Maguranis (2015-02-17).
|
||
* configs/tm4c123g-launchpad: Add ADC support. From Calvin Maguranis
|
||
(2015-02-17).
|
||
* fs/fat/fs_mkfatfs.c: Use DMA memory for mkfatfs when needed. This makes
|
||
mkfatfs use fat_dma_alloc() when CONFIG_FAT_DMAMEMORY is set. This is
|
||
needed to ensure mkfatfs operates with boards that use DMA for microSD.
|
||
From Andrew Tridgell via the PX4/NuttX repository (2015-02-17).
|
||
* include/nuttx/rtc.h, fs/fs.h, drivers/ramdisk.c, pipes/, and
|
||
timers/rtc.c: The inode unlink method should not be support if
|
||
operations on the root pseudo-filesystem are disabled (2015-02-18).
|
||
* include/nuttx/sched timing functions: Fix some nanosecond comparisons.
|
||
Comparisons should be greate than OR EQUAL TO 1000000000 for maximum
|
||
value of nanoseconds in struct tm. From Juha Niskanen (2015-02-20).
|
||
* tm4c123g-launchpad: Add board button interrupt logic. From Calvin
|
||
Maguranis (2015-02-20).
|
||
* "Tiva: Move GPIO prototypes out of arch/arm/include/tiva/irq.h to
|
||
arch/arm/tiva/tiva_gpio.h where they belong (2015-02-20).
|
||
* arch/arm/src/tiva: Tiva GPIO clean-up by Calvin Maguranis (2015-02-20).
|
||
* arch/arm/src/stm32/stm32_pwr.c, stm32_pwr.h, and stm32_rtcc.c: Changes
|
||
to support fully write protecting the backup domain. N.B.
|
||
stm32_pwr_enablebkp did not account for the delay from enable to the
|
||
domain being writable. The KISS solution is a up_udelay. A more
|
||
complex solution would be a negated write test with restore. From
|
||
David Sidrane (2015-02-21).
|
||
* arch/arm/src/stm32/stm32_bbsram.c, stm32_bbsram.h, Kconfig, and
|
||
Make.defs: Adds the ability to use the STM32F2 and STM32F4 Battery
|
||
Backedup SRAM in the file system. With an option to Save Panic
|
||
context to one of the files. From David Sidrane (2015-02-21).
|
||
* configs/pic32mx-starterkit: Rename from pic32-starterkit to make
|
||
room on the namespace for a pic3mz-starterkit. Update src/ directory
|
||
file naming to match current standard. Refresh configurations. Move
|
||
linker scripts to a new scripts/directory. Make sure that it builds
|
||
using the Pinquino toolchain (2015-02-21).
|
||
* arch/mips/src/mips32/Toolchain.mk: Current Pinguino toolchain uses
|
||
the prefix p32- instead of mips- (2015-02-21).
|
||
* configs/pic32mz-starterkit: Add basic board support for the PIC32MZ
|
||
(can't build yet of course because there is not yet any PIC32MZ
|
||
support) (2015-02-22).
|
||
* arch/mips/src/pic32mz and include/pic32mz: Add some PIC32MZ header
|
||
file definitions and just enough logic in the source directory so
|
||
that we can run 'make menuconfig'. Still a very long way from being
|
||
complete (2015-02-22).
|
||
* libc/time/lib/lib_sfrtime.c: Missing implementation of %C in
|
||
sfrtime() C (was being treated as %y). From Freddie Chopin
|
||
(2015-02-23).
|
||
* drivers/can.c: In the can_open function: this line
|
||
'dev->cd_ocount = tmp;' needs to be moved a few lines down otherwise
|
||
the open count will only be incremented from 0 to 1. This causes
|
||
problems when trying to open the can bus from two different tasks.
|
||
SourceForge Patch #46 from Anonymous (2015-02-23).
|
||
* Tiva TM4c1294: Updates from Frank Sautter (2015-02-24).
|
||
* fs/aio: correct some backward tests in aio_read() and aio_write():
|
||
Socket descriptors have higher numbers than file descriptors. In
|
||
aio_contain(), Copy u.ptr (void *) when initializing aioc and not
|
||
the case specific u.aioc_filep. From Michal Ulianko (2015-02-24).
|
||
* include/pthread.h: Fix PTHREAD_COND_INITIALIZER (2015-02-24).
|
||
* sched/clock/clock_systimespec.c: When an RTC is used clock_systimespec()
|
||
must subtract the basetime from the returned time. It needs to
|
||
return the time since power up, no the current time. Issue noted
|
||
by Max Neklyudov (2015-02-25).
|
||
* fs/vfs/fs_select.c and sched/semaphore/sem_timedwait.c: Fix places
|
||
where the errno value was being overwritten by subsequent actions so
|
||
that the returned errno value was incorrect. From Max Neklyudov
|
||
(2015-02-25).
|
||
* include/sys/select.h: Extend the fd_set type definition so that it
|
||
can handle more than 32 descriptors (if so configured). From Max
|
||
Neklyudov (2015-02-25).
|
||
* net/netdev/netdev_unregister.c: Fix a list handling error in
|
||
netdev_unregister(). From Max Neklyudov (2015-02-27).
|
||
* net/netdev/netdev_register.c: Improve the network device registration
|
||
logic. When multiple link types are used, modify how each interface
|
||
number is assigned to the device name by incrementing the device
|
||
number individually for each interface link type. From Max Neklyudov
|
||
(2015-02-27).
|
||
* include/nuttx/board.h: Remove common board function prototypes from
|
||
other files and consolidate them in this new header file (2015-02-27).
|
||
* arch/mips/src/pic32mz/: Implement support IO port interrupts
|
||
(2015-03-01).
|
||
* configs/pic32mz-starterkit/src: Add support for on-board buttons
|
||
(2015-03-01).
|
||
* include/nuttx/spi/spi.h: Add an SPIDEV_USER so that there can be
|
||
board-specific definitions of SPI devices (2015-03-01).
|
||
* arch/arm/src/stm32 and arch/arm/src/stm32: Adds architecture support
|
||
for the STM32F372 and F373 (no board support yet). Only tested on
|
||
STM32F373CC, but should work on the rest. Contributed by Marten
|
||
Svanfeldt (2015-03-01).
|
||
* arch/mips/src/pic32mz/pic32mz-spi.c and chip/pic32mz-spi.h: Add
|
||
support for a basic SPI driver for the PIC32MZ (2015-03-03).
|
||
* include/nuttx/i2c.h: Add a user provided void * argument to the
|
||
I2C callback method for the I2C slave interface. Suggested by
|
||
Nate Weibley (2015-03-03).
|
||
* crypto/, include/nuttx/crypto, and arm/src/common/up_initialize.c:
|
||
Fix issues when AES support was added for the STM32L1. From Juha
|
||
Niskanen (2015-03-04).
|
||
* arch/arm/src/stm32/stm32_spi.c and .h: Add missing SPI callback
|
||
functions to the STM32 SPI driver. From Freddie Chopin (2015-03-04).
|
||
* arch/*/src/*/*_assert.c, configs/Kconfig, and include/nuttx/board.h:
|
||
Add support for dumping board-specific information on assertion.
|
||
From David Sidrane (2015-03-04).
|
||
* drivers/spi/Kconfig: Add missing CONFIG_SPI_CALLBACK selection. Noted
|
||
by Freddie Chopin (2015-03-04).
|
||
* arch/arm/src/samv7 and include/samv7: Add basic build directories
|
||
and configuration logic for the Atmel SAMV7 family (2015-03-05).
|
||
* arch/arm/src/Makefile, armv7-m/Toolchain.defs: Make ARM build system
|
||
Cortex-M7 ready (2015-03-05).
|
||
* arch/arm/src/sam34/sam_start.c: Leverage start-up logic from STM32
|
||
to (1) Enable the FPU and (2) perform IDLE stack coloration
|
||
(2015-03-05).
|
||
* arch/arm/src/armv7-m/up_lazyexception.S, Kconfig and severl other
|
||
files: Add support for lazy FPU state saving. Not yet verified.
|
||
(2015-03-06).
|
||
* arch/arm/Kconfig, Make.defs, sam_start.c, configs/Kconfig,
|
||
samv71-xult: Add a bare bones framework that will do nothing more than
|
||
support configuration for the Atmel SAMV71 Xplained Ultra board. Very
|
||
much a work in progress (2015-03-06).
|
||
* sched/mqueue/mq_timedsend.c: Should not check for valid time if
|
||
there is space in the message queue. Noted by Freddie Chopin
|
||
(2015-03-10).
|
||
* arch/arm/src/tiva/tiva_timerlib.c: Fix a typo in peripheral wait
|
||
logic: gptm, not gpio. From Bradley Noyes (2015-03-10).
|
||
* drivers/net/tun.c, Make.defs, include/nuttx/net/net.h, tun.h, and
|
||
net/Kconfig: Add TUN device. From Max Neklyudov (2015-03-11).
|
||
* fs/fat/fs_fat32.c: fat_unbind() was accessing 'fs->fs_sem' after
|
||
freeing the 'fs' struct. From Juha Niskanen (2015-03-11).
|
||
* fs/procfs/fs_procfsproc.c: fs_procfsproc: Fix potential NULL pointer
|
||
dereference of 'node'. From Juha Niskanen (2015-03-12).
|
||
* sched/sched/sched_waitpid.c: Do not use uninitialized boolean in
|
||
waitpid(). From Juha Niskanen (2015-03-12).
|
||
* libc/stdio/lib_ungetc.c:Fix NULL pointer dereference in ungetc().
|
||
If 'stream' was NULL, 'stream->fs_oflags' was evaluated. From Juha
|
||
Niskanen (2015-03-12).
|
||
* arch/arm/src/stm32/stm32_i2c.c: Add missing NULL check. From Juha
|
||
Niskanen (2015-03-12).
|
||
* drivers/usbdev/usbmsc_scsi.c: Add NULL pointer check. From Juha
|
||
Niskanen (2015-03-12).
|
||
* drivers/bch/bchdev_driver.c: Avoid NULL pointer dereference when
|
||
bch->refs == 255. From Juha Niskanen (2015-03-12).
|
||
* arch/arm/src/armv7-m/mpu.h: Bad syntax in ARMv7-M MPU logic would
|
||
cause failure to write the correct value to the MPU_RASR register.
|
||
From Juha Niskanen (2015-03-12).
|
||
* net/socket/net_dupsd.c: Do not call sockfd_socket() twice. From
|
||
Juha Niskanen (2015-03-12).
|
||
* arch/arm/src/stm32/stm32_usbdev.c: Fix stale initialization
|
||
invalidating later NULL check. From Juha Niskanen (2015-03-12).
|
||
* arch/arm/src/stm32/stm32_serial.c and chip/stm32f10xxx_dma.h: Fix
|
||
RX DMA setup for UART5. From Jussi Kivilinna (2015-03-13).
|
||
* arch/arm/src/stm32/stm32_serial.c: Make input hardware flow-control
|
||
work with RX DMA. From Jussi Kivilinna (2015-03-13).
|
||
* drivers/pipes/pipe_common.c: Fix zero-lenth writes to pipes/FIFOs.
|
||
From Jussi Kivilinna (2015-03-13).
|
||
* drivers/serial/serial.c: Report correct number of bytes free in
|
||
serial buffer with FIONWRITE. From Sami Pelkonen via Jussi Kivilinna
|
||
(2015-03-13).
|
||
* drivers/mmcsd/mmcsd_spi.c: Debugging and manuals (this one
|
||
https://www.sdcard.org/downloads/pls/simplified_specs/part1_410.pdf
|
||
and this one https://www.sdcard.org/downloads/pls/simplified_specs/part1_410.pdf)
|
||
shows that ACMD23 must be preceded with CMD55 command as any other
|
||
ACMD commands. Also, after the block reading wait loop must be
|
||
inserted before writing the next block of data to the sd card. From
|
||
Dmitry Nikolaev via Jussi Kivilinna (2015-03-13).
|
||
* arch/arm/src/efm32/efm32_i2c.c: Add I2C driver. From Pierre-noel
|
||
Bouteville (2015-03-14).
|
||
* fs/mount/, include.sys/mount, syscall/: Add umount2(). umount() is
|
||
now a macro that just calls umount2() with flags = 0 (2015-03-14).
|
||
* fs/mount/fs_umount2.c, all file systems, include/nuttx/fs/fs.h: Pass
|
||
the umount2() flags to every unbind() implementation. That is where
|
||
the decision to umount or not will be made (2015-03-14).
|
||
* fs/fat/fs_fat32.c: Fix a bug in the FAT unbind() logic. There were
|
||
problems with the way certain internal list handling was implemented.
|
||
The end result is that newly opened or cloned file structures were
|
||
never being added to the list of open files. So when the unmount()
|
||
happens, it always looked like there were not open files and a crash
|
||
could ensue (2015-03-14).
|
||
* fs/fat/fs_fat32.c and fs_fat32.h: Add support for umount2(target,
|
||
MNT_FORCE) in the FAT file system (2015-03-15).
|
||
* drivers/mmcsd/mmcsd_sdio.c: Fix some bad logic when file system debug
|
||
is turned on: Arguments to syslog were missing so that garbage was
|
||
being printed (2015-03-15).
|
||
* arch/arm/src/sama5/sam_hsmci.c: Fix a bug in SAMA5 HSMCI. The
|
||
bitfield mask and shift values were reversed resulting in a trashed
|
||
value for the number of blocks in the BLOCKR register. This was
|
||
sufficient to prevent DMA writes from working (2015-03-15).
|
||
* drivers/mtd/at24xx.c, Kconfig, and include/nuttx/fs/ioctl.h: Add
|
||
support for (1) the byte-oriented read() method, (2) devices that
|
||
have extended memory regions, and (3) devices that use 8-bit
|
||
addressing (2015-03-17).
|
||
* arch/mips/src/mips32/Kconfig, Toolchain.defs, and
|
||
configs/pic32mz-starterkit/nsh/Make.defs: Changes that will permit
|
||
building of the PIC32MZ Start Kit configuration using MPLAB and the
|
||
XC32 toolchain. From David Sidrane (2015-03-17).
|
||
* arch/arm/src/stm32/stm32_rtc_lowerhalf.c: Fix some errors in the
|
||
STM32 RTC lower-half driver that cause compilation failures. From
|
||
shilo.xyz (2015-03-19).
|
||
* arch/arm/src/sama5/chip/sam_tc.h: Fix typos in timer/counter header
|
||
file. From Bob Doiron (2015-03-20).
|
||
* configs/olimexino-stm32: Board support for the Olimexino STM32 board
|
||
from David Sidrane (2015-03-20).
|
||
* PIC32MZ: Incorporated a set of patches that makes the basic NSH
|
||
configuration on the PIC32MZ Starter Kit. From Kristopher Tate
|
||
(2015-03-22).
|
||
* arch/arm/src/tiva: (1) ADC driver has been re-organized; configuration
|
||
is now handled in code instead of Kconfig to help reduce bloat and
|
||
confusion. (2) Timer changed to remove ADC coupling in Kconfig to code
|
||
and moved configuration up from arch/arm/src/tiva to
|
||
configs/tm4c123g-launchpad/src. (3) GPIO driver needed small fixes in
|
||
the configuration routines and discovered false-positive bugs in
|
||
interrupt testing: interrupts are now verified to actually be working
|
||
reliably. (4) Attempt to apply some consistency in the tiva arch/
|
||
level's interface to the config/board/ level driver configuration.
|
||
From Calvin Maguranis (2015-03-23).
|
||
* arch/mips/src/pic32mz: Various fixes for Ethernet support. Still
|
||
not fully functional. From Kristopher Tate (2015-030-29).
|
||
* arch/arm/src/armv7-m: Add configuration option and logic to support
|
||
the D-Cache in write-through mode (2015-03-29).
|
||
* arch/arm/src/stm32/Kconfig, stm32_lse.c, stm32_lsi.c, stm32_rtc.c/.h,
|
||
stm32_rtcc.c, stm32_rtcounter.c, and stm32f*_rcc.c: The
|
||
STM32F4Discovery board doesn't come with a Low speed external
|
||
oscillator so the default LSE source for the RTC doesn't work. In
|
||
stm32_rtcc.c the up_rtc_initialize() logic doesn't work with the LSI.
|
||
The check on RTC_MAGIC on the BK0R register lead to rtc_setup() call
|
||
that rightfully enables the lsi clock; but the next times, when the
|
||
rtc is already setup, the rtc_resume() call does NOT start the lsi
|
||
clock! The right place to put LSE/LSI initialisation is inside
|
||
stm32_stdclockconfig() in stm32fxxxxx_rcc.c. Doing this I checked
|
||
the possible uses of the LSI and the LSE sources: the LSI can be used
|
||
for RTC and/or the IWDG, while the LSE only for the RTC (and to output
|
||
the MCO1 pin). This change is not verifed for any other platforms.
|
||
From Leo Aloe3132
|
||
* Rename arch_nshinitialize() to board_app_initialize() (2015-03-30).
|
||
* ./*.mk, configs/.gitignore, Makefile, boardctl.c, include/nuttx/fs/ioctl,
|
||
include/sys/boardctl.h, syscall.h, and syscall/: Add a new non-
|
||
standard OS interface called boardctl(). This is similar to a driver
|
||
IOCTL call. But this is an IOCTL call directly on the board logic.
|
||
This function will eventually replace all of the ad hoc OS interfaces
|
||
that are current used to perform application specific initialization
|
||
and application driver test configuration. It essentially formalizes
|
||
and institutionalizes these rogue interface in to at least a single
|
||
crazy call (2015-03-31).
|
||
* configs/: Modify all configurations: Make sure that
|
||
CONFIG_LIB_BOARDCTL=y appears wherever CONFIG_NSH_ARCHINIT=y appears.
|
||
Remove support for CONFIG_NSH_ARCHMAC. It is not used and there are
|
||
better ways to do that operation (2015-03-31).
|
||
* configs/Kconfig, boardctl.c, all touchscreen driver setup functions,
|
||
include/board.h, include/sys/boardctl.h, and
|
||
include/nuttx/input/touchscreen.h: arch_tcinitialize() and
|
||
arch_tcunitinitialize() renamed to board_tsc_setup() and
|
||
board_tsc_teardown(). These are not long called directly by
|
||
applications but only indirectly throught the crappy boardctl() OS
|
||
interface (2015-03-31).
|
||
* configs/Kconfig, boardctl.c, include/nuttx/board.h, include/sys/boardctl.h,
|
||
and several ADC files in configs/<board>/src/: Rename adc_devinit() to
|
||
board_adc_setup(). Add support to the boardctl() interface so that it
|
||
can call board_adc_setup() on behalf of an application. Make sure that
|
||
the proper features are enabled in the defconfig files that have
|
||
CONFIG_EXAMPLES_ADC=y (2015-03-31).
|
||
* configs/*/defconfig: Make sure that all defconfig files that require
|
||
external graphics intiialization also enable the correct boarctl()
|
||
settings (2015-03-31).
|
||
* include/nuttx/board.h, include/sys/boardctl.h, nuttx/configs/Kconfig and
|
||
boardctl.c, and board configurations and PWM implementations: Rename
|
||
pwm_devinit() to board_pwm_setup(). Add CONFIG_BOARDCTL_PWMTEST that
|
||
will enable calling board_pwm_setup() from boardctl(). In all
|
||
configurations that enable the apps/examples/pwm test, make sure that
|
||
boardctl() support is properly enabled (2015-03-31).
|
||
* Move include/nuttx/timer.h, rtc.h and watchdog.h to include/nuttx/timers/.
|
||
(2015-04-01).
|
||
* drivers/timer/cs2100-cp.c and include/nuttx/timers/cs2100-cp.h: Add a
|
||
very basic driver for the CS2100-CP Fractional-N Multipler chip (2015-04-02).
|
||
* configs/, graphics/, include/nuttx: More renaming: up_lcdinitialize->board_lcd_initialize,
|
||
up_lcdgetdev->board_lcd_getdev, up_lcduninitialize->board_lcd_uninitialize
|
||
(2015-04-04).
|
||
* include/nuttx/nx, libnx/nx, libnx/nxtk: Add a new 'capped' parameter to
|
||
nx_drawline(), nxtk_drawlinetoolbar(), and nxtk_drawlinewindow()
|
||
(2015-04-05).
|
||
* libnx/nx/nx_drawline.c, libnx/nxtk/nxtk_drawlinetoolbar.c and
|
||
nxtk_drawlinewindow.c: Implement line caps by drawing a file circle at
|
||
the each endpoint of a line with a radius equal to half of the width
|
||
of the line (2015-04-05).
|
||
* include/time.h, nuttx/time.h, libc/time/lib_dayofweek.c and
|
||
lib_gmtimer.c: Implements CONFIG_TIME_EXTENDED as we discussed
|
||
relative to providing the last 3 members of the tm struct and support
|
||
for filling them in and even using the wday in the STM32 RTC. From
|
||
David Sidrane.
|
||
* arch/arm/src/sam34/sam_serial.c and samv7/sam_serial.c: A side-effect
|
||
of changing serial settings via TERMIOS (such as tcsetattr) is that
|
||
serial interrupts were being left disabled. This is not a problem if
|
||
the serial configuration is changed when there are no open references
|
||
to the serial device. In that case, serial interrupts are disabled and
|
||
will not be enabled enabled until the serial device is first opened.
|
||
But it is fatal if the serial device is already opened and if there is
|
||
a task waiting to receive data. In that case, the side-effect of
|
||
disabling interrupts is fatal: That task is then left hanging with
|
||
interrupts disabled (2015-04-08)
|
||
* arch/arm/src/sama5/sam_serial.c: Backport support for flowcontrol and
|
||
termios from SAM3/4 -- UNVERIFIED. (2015-04-08).
|
||
* arch/arm/src/sam34/sam_serial.c and samv7/sam_serial.c: The IMR
|
||
register is read-only. This means that sam_restoreints() did not
|
||
actually re-enable UART interrupts (2015-04-08).
|
||
* sigaddset() and sigdelset(): Need to set errno if a bad signal number
|
||
is received (2015-04-09).
|
||
* sighold(), sigrelse(), sigignore(), sigset() and sigpause(): New
|
||
signal handling functions (2015-04-09).
|
||
* Fixes to asinh(), atanh(), and sinh(): The 'basic' expansions all
|
||
exhibited bad cancellation errors near zero (<= 1E-10). This can be
|
||
easily seen e.g. with x = 1E-30, the results are all zero though they
|
||
should be extremely close to x. The cutoff values (1E-5, 1E-9) are
|
||
chosen so that the next term in the Taylor series is negligible (for
|
||
double). Functions could maybe be optimized to use only first term (x)
|
||
and a smaller cutoff, just bigger than where the cancellation occurs
|
||
(2015-04-09).
|
||
* syscall/syscall.csv: Last changes to message queue prototypes did not
|
||
make it into call gate logic (2015-04-09).
|
||
* syscall/syscall_stublookup.c: Fix some errors that crept in recently
|
||
(2015-04-09).
|
||
* libc/time/lib_localtime.c: Inconsistent configuration name:
|
||
CONFIG_LIBC_TZDIR vs CONFIG_LIBC_TZ_TZDIR. Former wins (2015-04-11).
|
||
* libc/time/lib_calendar2utc.c and lib_mktime.c: Fix an error in time
|
||
initialization when there is not RTC and the time is initialized from
|
||
a fixed configured value. The call to clock_calendar2utc() was
|
||
returning the time in units of seconds. The initialization logic,
|
||
however, was expecting to get time in units of days. This problem
|
||
has been there forever but obviously has not significant impact to
|
||
behavior in systems where time is not visible (2015-04-12).
|
||
* fs/fat/fs_fat32utils.c: Fix misthink when CONFIG_ENDIAN_BIG=y. From
|
||
Lwazi Dube (2015-04-12).
|
||
* include/nuttx/net/netdev.h, net/devif/ipv6_input.c,
|
||
icmpv6/icmpv6_rsolicit.c and net/icmpv6/icmpv6_solicit.c: Use common
|
||
macro(s) for calculating link layer header length. From Brennan
|
||
Ashton (2015-04-13).
|
||
* apps/netutils/pppd/Kconfig, pppd.c, and ntpv3.h (removed): Remove
|
||
ntpclient header file in and NTP client references from the pppd
|
||
dir. From Brennan Ashton (2015-04-13).
|
||
* configs/galileo: Remove all references to the Galileo board. That
|
||
port is not going to happen (I don't even have the hardware anymore)
|
||
(2015-04-13).
|
||
* drivers/input/max11802.c: Fix possible unmatched IRQ restore. Noted
|
||
by Juha Niskanen (2015-04-14).
|
||
* atexit(): Fix reference to undefined variable in certain
|
||
configurations. From Juha Niskanen (2015-04-14).
|
||
|
||
7.10 2015-06-09 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* configs/sim/src/sim.h, sim_zoneinfo.c, Makefile, and sim_boot.c: Add
|
||
logic to test localtime and TZ database. See apps/system/README.txt
|
||
for info (2015-04-15).
|
||
* libc/Kconfig: Fix defaults for timezone limits. They need to be much
|
||
larger (2015-04-15).
|
||
* Watchdog files: Fix repeated typo wachog.h in several watchdog
|
||
drivers (2015-04-15).
|
||
* configs/boardctl.c and Kconfig: Add missing causing that caused
|
||
failures of PWM test (2015-04-15).
|
||
* arch/arm/src/stm32: Defines a second interface for the dma2d controller.
|
||
Controlling both LTDC and DMA2D was unpractical from the programmers
|
||
view because both controllers are to different. LTDC only controls the
|
||
display visibility but the DMA2D controller changes the content of the
|
||
frame buffer (buffer of the layer).
|
||
|
||
The main features are:
|
||
|
||
1. DMA2D interface
|
||
Supports the nuttx pixel formats:
|
||
- FB_FMT_RGB8
|
||
- FB_FMT_RGB24
|
||
- FB_FMT_RGB16_565
|
||
Dynamic layer allocation during runtime for the supported formats
|
||
- The number of allocatable layer can be configured.
|
||
Supported dma2d operation:
|
||
- blit (Copy content from source to destination layer) also works
|
||
with selectable area.
|
||
- blend (Blend two layer and copy the result to a destination layer
|
||
which canbe a third layer or one of the source layer) also works
|
||
awith selectablerea.
|
||
- fillarea (Fill a defined area of the whole layer with a specific
|
||
color)
|
||
|
||
As a result of that the dma2d controller can't transfer data from the
|
||
core coupled memory, CCM is disabled but usable by the ccm allocator.
|
||
Currently the ccm allocator is used for allocating the layer structure
|
||
only. For the dma memory (layers frame buffer) memory is allocated from
|
||
heap 2 and 3.
|
||
|
||
2. LTDC interface
|
||
I have changed the api for the currently non implemented operations:
|
||
- blit (Copy content from a dma2d layer to an ltdc layer) also works with
|
||
selectable area.
|
||
- blend (Blend two dma2d layer and copy the result to a destination ltdc
|
||
layer) also works with selectable area.
|
||
|
||
Note! ltdc layer is a layer referenced by the ltdc interface. dma2d layer
|
||
is a layer referenced by the dma2d interface.
|
||
|
||
One of the most important questions for me was, How can i flexible use an
|
||
ltdc layer with the dma2d interface, e.g. as source layer for dma2d
|
||
operations?
|
||
Get the layer id of the related dma2d layer by a special flag when using
|
||
getlid() function of the ltdc interface and use the layer id to reference
|
||
the specific dma2d layer by the dma2d interface.
|
||
|
||
The ltdc coupled dma2d layers are predefined and can't be dynamically
|
||
allocated of freed. They use the same frame buffer memory and the same
|
||
color lookup table.
|
||
|
||
Changes:
|
||
- layer internal format of the clut table
|
||
- interrupt handling for register reload (vertical vblank) instead using
|
||
waiting loop
|
||
- small fixes and refactoring
|
||
From Marco Krahl (2015-04-16).
|
||
* Add support for the new DMA2D features to the STM32F429i-Disco LTDC
|
||
configuration. From Marco Krahl (2015-04-16).
|
||
* stdlib.h: MAX_RAND should be RAND_MAX (2015-04-16).
|
||
* STM32F429i Disco: (1) Fix a bad return value if the LCD driver is already
|
||
initialized. (2) The LCD driver initialization is now performed during the
|
||
early boot sequence. (3) Increased the size of the message queue from 32
|
||
to 64 in the lcd configuration. From Marco, ocram.lhark@yahoo.com
|
||
(2015-04-17).
|
||
* STM23 RTC: Fix an error introduced into stm32_pwr_enablebkp(). That
|
||
function must preserve the previous state of backup domain access on
|
||
return (2015-04-19).
|
||
* include/nuttx/usb/hub.h: Add USB hub header file from Kaushal Parikh
|
||
(2015-04-18).
|
||
* drivers/usbhost/usbhost_hub.c: Bring in USB hub-related files from
|
||
https://github.com/kaushalparikh/nuttx. This is the work of Kaushal
|
||
Parikh. This initial commit is incomplete. This is quite a bit more
|
||
hub logic that needs to come in before the port is complete
|
||
(2015-04-18).
|
||
* arch/arm/src/stm32/stm32_rtcounter.c: Now need to enable backup
|
||
domain write access when setting the time. From Darcy Gong (2015-04-19).
|
||
* include/nuttx/usb/usbhost.h: Bring in more logic from
|
||
https://github.com/kaushalparikh/nuttx (2015-04-19).
|
||
* drivers/usbhost/usbhost_enumerate.c: Last of USB hub logic from
|
||
https://github.com/kaushalparikh/nuttx (2015-04-19).
|
||
* include/time.h: Add prototypes for localtime() and localtimer_r()
|
||
(2015-04-21).
|
||
* include/assert.h: Wrap definitions of assertion macros in do while.
|
||
Suggested by orbitalfox (2015-04-22).
|
||
* sched/semaphore/sem_wait.c: Missing comma on debug statement caused
|
||
compile error with DEBUG on. Why hasn't that been noted before?
|
||
(2015-04-23).
|
||
* drivers/lcd and include/nuttx/drivers: RA8875 LCD driver contributed
|
||
by Marten Svanfeldt (2015-04-24).
|
||
* arch/arm/src/stm32/chip/stm32_pwr.c and .h: Adds support for STM32's
|
||
Programmable Voltage Detector (PVD) feature. Register access is behind
|
||
CONFIG_STM32_ENERGYLITE as the feature has not been verified for
|
||
F1/F2/F4 etc. manuals. Tested on STM32L1. PVD interrupt looks generic,
|
||
at least #defines it needs are in headers for every chip variant. By
|
||
Dmitry Nikolaev, submitted by Juha Niskanen (2015-04-28).
|
||
* arch/arm/src/stm32/chip/stm32_exti.h, stm32f30xxx_memorymap.h, and
|
||
stm32f37xxx_memorymap.h: Added missing EXTI definitions for the STM32
|
||
F3; Correct an error the port D base address in the STM32 F30x and F37x
|
||
memory maps. From Greg Meiste (2015-05-01).
|
||
* arch/arm/src/lpc17xx/lpc176x_gpio.c: Reorder steps when an output
|
||
GPIO is configured in order to avoid transient bad values from being
|
||
output. From Hal Glenn (2015-05-02).
|
||
* arch/arm/src/stm32/stm32_otgfsdev.c and stm32_otghsdev.c: Add
|
||
protection in the event that out-of-bound endpoint numbers are
|
||
received. From David Sidrane (2015-05-02).
|
||
* USB host: Merged in the USB hub support that has been happening on
|
||
a separate branch up until this point. The interfaces are complete
|
||
and most platforms have been verified (still a little to be done
|
||
however). (2015-05-02)
|
||
* arch/arm/src/lpc31xx/lpc31_ehci.c, chip.h, sama5/sam_ehci.c, and
|
||
chip.h: Fix cache related problem in LPC31 and SAMA5Dx EHCI drivers.
|
||
All buffers are now aligned with the cache line size in both starting
|
||
address and in length. This cause major problems in unlucky builds
|
||
where the USB host buffers where unaligned and abutting other data.
|
||
The cache flush and invalidate operations could be subverted by
|
||
accesses to adjacent data or could have unexpected side effects. This
|
||
bug has been in the ECHI drivers forever, but was only revealed due to
|
||
unlucky memory allocations during the integration of the hub feature
|
||
(2015-05-03).
|
||
* arch/arm/src/lpc17xx/lpc17_usbhost.c: Correct some initialization of
|
||
data structures. When hub support is enabled, it would overwrite the
|
||
end of an array and clobber some OS data structures (2015-05-03).
|
||
* configs/olimex-lpc1766stk: Make stacks usage configurable for USB
|
||
host waiter. It needs to be a lot deeper when hub support is enabled
|
||
(2015-05-03).
|
||
* fs/vfs/fs_poll.c: Fix resource leak and memory corruption on poll
|
||
failure. From Jussi Kivilinna (2015-05-04).
|
||
* All USB host drivers in arch/ and all USB class drivers in drivers/usbhost:
|
||
Modify the transfer() and asynch() methods so that the actual size of
|
||
the transfer is returned. Unverified on initial commit (2015-05-05).
|
||
* drivers/usbhost/usbhost_cdcacm.c: Add initial implementation of a host-
|
||
side CDC/ACM driver. Completely untested on initial commit (2015-05-06).
|
||
* configs/, drivers/usbhost/usbhost_storage.c, and included/nuttx/usb/usbhost.h:
|
||
Rename usbhost_storageinit() to usbhost_msc_initialize(). Add calls
|
||
to usbhost_cdcacm_initialize() if CONFIG_USBHOST_CDCACM is selected
|
||
(2015-05-06).
|
||
* arch/arm/include/kl and src/kl: Add support for the KL25Z64. The
|
||
KL25Z64 is a lower memory variant of the KL25Z128 and is used on the
|
||
Teensy LC. From Michael as SourceForge patch 50 (2015-05-07)
|
||
* configs/teensy-lc and related board support files: Add board support
|
||
for the Teensy LC board. Support is based off the Freedom KL25Z board.
|
||
LED, PWM, and UART0 have been tested. The SPI pins are mapped
|
||
correctly but have not yet been tested. From Michael Hope as
|
||
SourceForge patch 51 (2015-05-07).
|
||
* arch/arm/src/kl/kl_pwm.c: fix PWM debugging. TPM1 and TPM2 have two
|
||
channels instead of six and will hard fault if you try to read the
|
||
missing channels. From Michael Hope (2015-05-07).
|
||
* arch/arm/src/kl/kl_lowputc.c: enable the clocks to UART1 and UART2.
|
||
The previous version would cause a hard fault on startup due to the
|
||
modules not being clocked. Also drop the GPIO configuration as it's
|
||
done during kl_start(). From Michael Hope (2015-05-07).
|
||
* teensy-lc: remap UART0 to the standard pins. From Michael Hope
|
||
(2015-05-07).
|
||
* arch/arm/src/stm32 and include/stm32: Added support for STM32F302K8
|
||
and STM32F302K6. From Ben Dyer via PX4/David Sidrane (2015-05-08).
|
||
* configs/compal_e86: Calypso Compal-E86: Updates for execution out of
|
||
FLASH on the C139 phone. From Craig Comstock (2015-05-08).
|
||
* STM32 F3: Add DBGMCU register definitions for the F3 family. From
|
||
Greg Meiste (2015-05-09).
|
||
* arch/arm/src/stm32/chip/stm32_exti.h: Add EXTI line definitions for
|
||
the STM32L family (2015-05-09).
|
||
* net/tcp/tcp.h: Correct failures in long Telnet sessions by increasing
|
||
the size of the number of bytes sent from uint16_t to uint32_t. This
|
||
avoids an integer overflow that causes a Telnet sessions to be closed
|
||
unexpectedly. From Rony XLN (2015-05-12).
|
||
* include/stdio.h, sys/statfs.h, cxx/cstdio, and syscall/syscall.csv:
|
||
Remove duplicate prototype of statfs from stdio.h. Belongs in
|
||
sys/statfs.h only. Note by Michael Hope (2015-05-12).
|
||
* arch/arm/include/kl/chip.h: Fix typo in header file. From Michael
|
||
Hope (2015-05-12).
|
||
* arch/arm/src/kl/chip/kl_tpm.h: Fix offset to the TPM status register.
|
||
From Michael Hope (2015-05-12).
|
||
* net/local/local_connect.c: Correct some network lock logic: Two
|
||
error conditions where the network was not being unlocked and one
|
||
where it was getting unlocked twice. From Jussi Kivilinna (2015-05-12).
|
||
* net/local/, fs/vfs/fs_poll.c, drivers/pipes/pipe_common.c/.h,
|
||
include/nuttx/fs/fs.h: Add poll support for Unix stream sockets. From
|
||
Jussi Kivilinna (2015-05-12).
|
||
* net/local/: Local stream sockets had problem of double releasing pipes
|
||
(both server and client attempt release), which causes wrong pipe pair
|
||
being closed in multi-client case. Solve by adding per connection
|
||
instance ID to pipe names. From Jussi Kivilinna (2015-05-12).
|
||
* drivers/usbdev/ all class drivers: There needs to be a check to make
|
||
sure that the size of a returned string does not exceed the size of
|
||
the allocated request buffer. Strings such as vendor names or product
|
||
names will be truncated to fit in the request buffer (2015-05-12).
|
||
* arch/arm/src/samv7/sam_twihs.c: Fix SAMV TWIHS logic that performs
|
||
multi-message transfers with and without repeated starts (2015-05-12).
|
||
* maXTouch Xplained Pro: The above TWIHS fix was the last barrier to
|
||
getting the touchscreen working in the maXTouch Xplained Pro LCD
|
||
(2015-05-12).
|
||
* net/route/ and net/netdev/netdev_ioctl.c: Complete implementation of
|
||
the IPv6 routing logic. From Max Neklyudov (2015-05-13).
|
||
* net/udp/: Add inclusion of assert.h in networking files where needed
|
||
to avoid compilation errors. From Max Neklyudov (2015-05-13).
|
||
* /net/route/netdev_router.c: Fix bug in IPv6 router from Max Neklyudov
|
||
(2015-05-13).
|
||
* sched/pthread/pthread_kill.c: Re-implemented pthread_kill(). It was
|
||
just a simple wrapper around kill() but since the correct dispatching
|
||
of signals for multi-threaded task groups has been implemented,
|
||
calling kill() does not do what pthread_kill() is supposed to do. The
|
||
corrected implementation of pthread_kill() will direct the signal
|
||
specifically to the specific pthread and no other (2015-05-13).
|
||
* arch/arm/include/samdl, arch/arm/src/samdl, configs/samd20-xplained:
|
||
Rename the samd/ directories and configuration varialbes to samdl to
|
||
all the same directory structure to support the SAML21 (2015-05-14).
|
||
* arch/arm/include/samdl and arch/arm/src/samdl: And chip definitions,
|
||
configuration framework, and placeholder memory map and pin
|
||
configuration files for SAML21 support. Still incomplete on initial
|
||
commit (2015-05-14).
|
||
* include/nuttx/wdog.h, sched/mqueue/mq_timed*.c, semaphore/sem_timed*.c,
|
||
signal/sig_timed*.c, timer/timer_settime.c, and wdog/wd_start.c:
|
||
Update the type passed to watchdog timer handlers. Using uint32_t is
|
||
a problem for 64-bit machines (2015-05-18).
|
||
* configs/saml21-xplained: Add a board build configuration for the
|
||
SAML21 Xplained Pro. Initial commit is just the SAMD20 Xplained Pro
|
||
board support with naming changed. Does not yet build (2015-05-18).
|
||
* libc/net/lib_inetntoa.c: Correct errors in printing IP address when
|
||
type char is signed. From Max Neklyudov (2015-05-19).
|
||
* arch/arm/src/efm32/efm32_rtc_burtc.c: Updated EFM32 RTC driver from
|
||
Pierre-noel Bouteville (2015-05-19).
|
||
* arch/arm/src/tiva/chip/tm4c_memorymap.h, tm4c_pinmap.h, and vectors.h.
|
||
configs/tm4c1294-launchpad/include/board.h and src/tm4c_autoleds.c:
|
||
Fixes for Tiva TM4C1294NCPDT. From Frank Sautter. (2015-05-20).
|
||
* configs/tm4c1294-launchpad/include/board.h: Added TM4C1294NCPDT
|
||
EN0_LED2 (10/100-Base-Tx); removed all booster pack pin definitions.
|
||
From Frank Sautter (2015-05-20).
|
||
* nuttx/arch/arm/src/sam34/sam_serial.c: In NONBLOCKING mode serial
|
||
does not receive bytes from UART. This happens because RX interrupt
|
||
was disabled in the setup routine. To fix this I save interrupt
|
||
configuration before UART shutdown and restore it after. From Max
|
||
Neklyudov (2015-05-21).
|
||
* arch/arm/include/lpc11xx and src/lpc11xx: Support for the LPC11xx
|
||
family (the LPC1115 MCU in particular). Contributed by Alan Carvalho
|
||
de Assis (2015-05-22).
|
||
* configs/lpcxpresso-lpc1115: Support for the LPCXpression LPC1115
|
||
board. Contributed by Alan Carvalho de Assis (2015-05-22).
|
||
* arch/arm/src/sam34/Kconfig, sam_serial.c, and chip/sam_uart.h: Add
|
||
support for optical mode for the SAM4CM UART1. From Max Neklyudov
|
||
(2015-05-23).
|
||
* arch/arm/src/lpc11xx/: Add support for up_getc() which is needed
|
||
for NSH if there is no file system. From Alan Carvalho de Assis
|
||
(2015-05-23).
|
||
* LPCXpresso-LPC1115: Add a minimal NSH configuration that has the
|
||
file system disabled. Update README with OpenOCD instructions.
|
||
From Alan Carvalho de Assis (2015-05-23).
|
||
* Fix numerous typos in configuration variable names. Tracked down
|
||
by Alan Carvalho de Assis (2015-05-23).
|
||
* configs/teensy-2.0: Rename configs/teensy so that it is clearly
|
||
distinguished from teensy-lc and teensy-3.1 (2015-05-15).
|
||
* include/nuttx/mtd/mtd.h: Increase the size of the fields in the
|
||
geometry structure (again) to support larger FLASH sizes. Needed
|
||
by S<>bastien Lorquet (2015-05-26).
|
||
* SAM4CM and SAMA5D Free-running timer: Logic that samples the free
|
||
running counter reads the pending interrupt status register and
|
||
can cause interrupts to be lost. So, if when the status register
|
||
is read, the logic must also handle the timer overflow event.
|
||
Found and fixed by Max Neklyudov (2015-05-26).
|
||
* arch/arm/include/kinetis and arch/arm/src/kinetis: Basic support
|
||
for the Kinetis K20 architecture. Taken from PX4. This is the
|
||
work of Jakob Odersky (2015-05-26).
|
||
* net/: Move some ICMP event lists to the device structure. That
|
||
allows for both device-specific event processing and also devices
|
||
to generate events like network down. From Max Neklyudov (2015-05-27).
|
||
* net/: Extend Macs logic to ARP and ICMPv6. Also found and fix
|
||
several IPv6-related compilation errors that have crept in. IPv6
|
||
has been broken for awhile (2015-05-27).
|
||
* net/tcp: Fix an important TCP networking bug: 16-bit flags was
|
||
being converted to 8-bits in a few locations, causing loss of
|
||
status indications (2015-05-27).
|
||
* net/socket and net/tcp: net_startmonitor.c always returned OK. In
|
||
the case where a socket has already been closed, it correctly handled
|
||
the disconnection event but still returned OK. Returning OK caused
|
||
the callers of net_startmonitor to assume that the connection was
|
||
okay, undoing the good things that net_startmonitor did and causing
|
||
the socket to be marked as connected. This behavior was noted by
|
||
Pelle Windestam (2015-05-28).
|
||
* include/nuttx/net, net/arp, net/devif, net/icmp, net/icmpv6,
|
||
net/netdev, net/pkt, net/tcp, net/udp: Modify event list handling:
|
||
Now there are two event lists each device structure: (1) One is
|
||
for ARP and ICMP data related events, the other is for device
|
||
related events. Callback allocation/free routines no accept a
|
||
device parameter as well as a list: If the device parameter is
|
||
added, then the callback goes into both the connection-related
|
||
list AND the device event list. Thus each socket type can
|
||
received both custom data-related events as well as common
|
||
device related events (2015-05-28).
|
||
* net/socket and net/utils: setsockopt() fails when setting timeouts
|
||
to values less that an 100 msec. That is because the timeout is
|
||
limited to stops of 1 decisecond and because the conversion of
|
||
structure timeval was truncating the microsecond remainder. The
|
||
utility net_timeval2dsec now accepts and option to determine how it
|
||
handles the remainder: truncate, discarding the remainder, use the
|
||
remainder to round to the closed decisecond value, or use any non-zero
|
||
remainder to the next larger whole decisecond value. Bug discovered
|
||
by Librae (2015-05-29).
|
||
* configs/stm32f4discovery/src: Move up_cxxinitialize from
|
||
nuttx/configs/stm32f4discovery/src to apps/platform/stm32f4discovery
|
||
where it belongs (2015-05-29).
|
||
* net/sockets, net/tcp, net/udp: UDP Networking: Add support for
|
||
device event notification for UDP transfers (2015-05-29).
|
||
* net/sockets and net/tcp: TCP Networking: Add support for device event
|
||
notification for UDP transfers (2015-05-30).
|
||
* libc/Kconfig and stdio/lib_libvsprintf.c: Add an option to disable
|
||
support for long long formats in lib_vsprintf. From Alan Carvalho
|
||
de Assis (2015-05-30).
|
||
* net/net_initialize.c, net/detdev, and net/socket: The network device
|
||
list was protected by a re-entrant semaphore. With the recent change
|
||
to support network device callback, the network stack needs to access
|
||
the network device list too. Some drivers, however, run the network
|
||
stack from the interrupt level -- this is bad but a fact in the
|
||
current state. Of course, those drivers are unable to take the
|
||
semaphore and would assert.
|
||
The solution here is to eliminate the device devices semaphore
|
||
altogether. This eliminates netdev_semtake() and netdev_semgive()
|
||
and replace them with net_lock() and net_unlock() which have the
|
||
larger scope that is needed and will integrate properly with the
|
||
dinosaur interrupt driven stack (2015-05-31).
|
||
* net/socket/connect.c: In the TCP connection operation, it was trying
|
||
to setup the network monitor BEFORE the socket was successfully
|
||
connected. This, of course, has ALWAYS failed because the socket is
|
||
not yet connected and the TCP state is not yet correct for a connected
|
||
socket. However, because of other changes net_startmonitor() now
|
||
returns a failure condition that causes worse problems when trying to
|
||
connect. The fix is to move the logic that starts the network monitor
|
||
to AFTER the socket has been successfully connected (2015-05-31).
|
||
* tools/configure.c: Fix test for the existence of the apps/ directory.
|
||
Fix backward interpretation of options, -l was selecting Windows and
|
||
-w was selecting Linux. This was SourceForege Ticket #39 (2015-05-31).
|
||
* arch/include/stm32/chip.h and arch/src/stm32/Kconfig: Add basic
|
||
support for the STM32F205RG. From SourceForge Ticket 40 (anonymous,
|
||
2015-05-31).
|
||
* arch/arm/src/lpc17xx: Review, update, and modify the Ethernet driver
|
||
so that it works better with CONFIG_NET_NOINTS=y (2015-06-01).
|
||
* configs/: Update all LPC17xx networking configurations so that they
|
||
have CONFIG_NET_NOTINTS=y selected (2015-06-01).
|
||
* /arch/arm/src/armv7-m, binfmt/libelf, configs/stm32f4discovery/scripts,
|
||
/include/nuttx/binfmt, and libxx: Add support uClibc++ exceptions. This
|
||
involves additional handling for relative relation types, additional
|
||
support for unwinding, as well as additional changes. The culmination
|
||
of a big effort from Leo Aloe3132 (2015-06-01).
|
||
* configs/olimex-lpc1766stk: Rename the thttpd configuration to thttpd-nxflat.
|
||
Add a new configuration, thttpd-binfs, that provides an example of how
|
||
to build apps/netutils/thttpd using binfs instead NXFLAT+ROMFS
|
||
(2015-06-02).
|
||
* tools/cfgdefine.c: Extend the mkconfig tool so that it can dequote a
|
||
quoted list of quoted strings. THTTPD uses such a configuration
|
||
setting to provide the list of index files (2015-06-02).
|
||
* mq_timedreceive(): move the location where the errno value is set; the
|
||
ETIMEDOUT errno setting was being overwritten by subsequent actions
|
||
before returning. Noted by Freddie Chopin (2015-06-03).
|
||
* Networking: Modify how callback structures are stored to avoid
|
||
another potential use of a stale pointer (2015-06-03).
|
||
* POSIX message queues: Move mq_setattr() and mq_getattr() from
|
||
nuttx/libc/mqueue to nuttx/sched/mqueue. Also add syscall support
|
||
for mq_setattr() and mq_getattr(). This is necessary in protected and
|
||
kernel builds because in those cases the message queue structure is
|
||
protected and cannot be accessed directly from user mode code (2015-06-03).
|
||
* drivers/net/tun.c: TUN driver bug fix. From Max Neklyudov (2015-06-03.
|
||
* drivers/net/Kconfig, include/nuttx/net/mii.h, and
|
||
arch/arm/src/lpc17xx/lpc17_ethernet.c: Add support for the Micrel
|
||
KSZ8041 PHY to the LPC17xx Ethernet driver (2015-06-03).
|
||
* configs/lincoln60/netnsh: Add a network enabled configuration for
|
||
the Lincoln60 board (2015-06-03).
|
||
* drivers/net/tun.c: Misc. improvements to the TUN driver, mostly related
|
||
to poll(). From Max Neklyudov (2015-06-04).
|
||
* fs/, fs/unionfs, include/nuttx, include/sys, Documentation: Add
|
||
support for a union file system that can be used to overlay and merge
|
||
the content of two mounted file systems (2015-06-05).
|
||
* arch/arm/src/efm32/efm32_spi.c: Add SPI GPIO pin initialization. From
|
||
Pierre-noel Bouteville (2015-06-05).
|
||
* configs/sim/unionfs: Add a configuration for testing the Union File
|
||
System (2015-06-05).
|
||
* configs/lincoln60/thttpd-binfs: Add a thttpd-binfs configuration for
|
||
the Lincoln60. That configuration still does not work on initial
|
||
commit (2015-06-06).
|
||
* arch/arm/src/sama5/sam_can.c: Fix SAMA5 CAN frame construction. From
|
||
Max Holtzberg (2015-06-07).
|
||
|
||
7.11 2015-08-13 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/efm32/efm32_spi.c: Correct write to incorrect register in
|
||
EFM32 SPI driver. From Pierre-noel Bouteville (2015-06-09).
|
||
* configs/teensy-3.x: Add board support for the PJRC Teensy-3.1 board
|
||
(2015-06-09).
|
||
* arch/arm/src/samdl, configs/samd20-xplained, and configs/saml21-xplained:
|
||
In the SAML21, SERCOM5 uses a different SLOW clock channel (and, hence,
|
||
also a different SLOW GCLK generator). This means that the channel
|
||
selection cannot be a global definition but must be a per SERCOM
|
||
configuration setting (2015-06-10).
|
||
* arch/arm/src/kinetis and include/kinetis: Add support for MK20DN--VLH5
|
||
and MK20DX---VLH5. Needed for backward compatible support for
|
||
Teensy-3.0 (2015-06-10).
|
||
* configs/Kconfig and configs/teensy-3.x: Add support for Teensy-3.0
|
||
(2015-06-10).
|
||
* arch/arm/src/stm32/stm32l15xxx_rcc.c: STM322 F15x stm32_stdclockconfig()
|
||
was calling stm32_pw_setvos() which accessed PWR_CR via an inactive APB
|
||
From Juha Niskaneni (2015-06-11).
|
||
* fs/mount: Add the ability to mount a file system on top of en existing
|
||
node in the psuedo-file system (2015-06-11).
|
||
* arch/arm/src/sam34/sam_clockconfig.c: Add default loop optimization if
|
||
EEFC_FMR is available in the configuration (i.e., for SAM4S and 4E).
|
||
From Marco Aurélio da Cruz (2015-06-11).
|
||
* include/time.h and libc/time: Add asctime(), asctime_r(), ctime(), and
|
||
ctime_r() (2015-06-12).
|
||
* include/ and arch/: Clean up and review of header files for conformance
|
||
to standards (2015-06-12).
|
||
* arch/arm/src/samdl: Add build framework for SAML21 DMA support.
|
||
Nothing there yet except for skeletal logic taken from SAM3/4
|
||
(2015-06-12).
|
||
* include/pthread.h and nuttx/sched/pthread: Use -1 instead of 0 as PID
|
||
for unclaimed mutexes. From Juha Niskanen (2015-06-16).
|
||
* sched/pthread: Implement pthread_mutex_trylock() for recursive mutexes.
|
||
From Juha Niskanen (2015-06-16).
|
||
* libc/unistd/lib_getopt.c: Uninitialized variable can cause hardfault
|
||
from getopt if required argument is missing. From George McWilliams
|
||
(2015-06-18)
|
||
* arch/arm/include/samdl and arch/arm/src/samdl: Add architecture support
|
||
for the SAMD21 family (2015-06-19).
|
||
* configs/samd21-xplained: Board configuration for the SAMD21 Xplained
|
||
board (2015-06-21).
|
||
* arch/arm/src/sam34/sam_lowputc.c: Back out an error introduced with
|
||
commit 02c33f66c5a8be774034cd40e4125e9323c7b4d8. Causes an infinite
|
||
loop in up_lowputc(). From Max Neklyudov (2015-06-22).
|
||
* arch/arm/src/samv7/sam_lowput.c: Also back the bad change to sam_lowputc.c
|
||
for SAMV7 platform (2015-06-22).
|
||
* include/nuttx/fs/ioctl.h and power/relay.h: Add relay IOCTL definitions.
|
||
From Max Neklyudov (2015-06-22).
|
||
* sched/clock/clock_gettime.c: Use up_timer_gettime for CLOCK_MONOTONIC
|
||
in tickless mode. From Max Neklyudov (2015-06-22).
|
||
* crypto/ and SAM4CM: Add CFB and MAC AES modes. From Max Neklyudov
|
||
(2015-06-22).
|
||
* SAM4CM: Fix SUPC register definitions. From Max Neklyudov. Also
|
||
removed conditional logic form non-SAM4CM parts (Gregory Nutt)
|
||
(2015-06-22).
|
||
* SAM3/4: Add a TWI driver for the SAM4CM. From Max Neklyudov
|
||
(2015-06-22).
|
||
* SAMV7 Xplained: In clock configuration, divider was set to 25 to get
|
||
25*12MHz=300MHz CPU clock. The correct multiplier is 24 because the
|
||
calculation if (24+1)*12MHz. So the board was running at 312MHz.
|
||
From Efim Monjak (2015-06-26).
|
||
* NFS client: Fix prototype of unbind method. The function prototype
|
||
was not updated for NFS after a recent change to the file system
|
||
interface. From Manuel St<53>hn (2015-06-25).
|
||
* Broke the NuttX GIT repository into several, smaller repositories.
|
||
Eliminated the misc/ directory and the content under misc/Obsoleted
|
||
and misc/sims (2015-06-27).
|
||
* Removed the Documentation/ directory. Replaced with a GIT submodule
|
||
that will bring in the new standalone Documentation directory
|
||
(2015-06-29).
|
||
* Removed the configs/ directory. Replaced with a GIT submodule
|
||
that will bring in the new standalone boards directory (2015-06-29).
|
||
* arch/arm/src/armv6-m/up_exception.S: Fix Cortex-M0 assembly error
|
||
when the interrupt stack is enabled. From Alan Carvalho de Assis
|
||
(2015-06-30).
|
||
* arch/arm/src/armv6-m/up_assert.c: Port some per-process stack
|
||
dumping logic from ARMv7-M to ARMv6-M. From Alan Carvalho de Assis
|
||
(2015-06-30).
|
||
* tools/testbuild.sh: Add a script that can be used to perform
|
||
building testing for several board configurations (2015-06-30).
|
||
* sched/pthread/pthread_create.c: Group binding needs to be cleared
|
||
before sched_releasetcb(), as otherwise group_leave() will be called
|
||
and group->tg_nmembers decremented or group being released.
|
||
group_leave() should be called only after group_join() is called,
|
||
not after group_bind(). From Jussi Kivilinna (2015-07-01).
|
||
* arch/arm/src/sama5/sam_ehci.c: Fix some bad conditional compilation
|
||
that left a function undefined if CONFIG_USBHOST_ASYNCH is not
|
||
selected (2015-07-01).
|
||
* arch/arm/src/common/up_vfork.c: Fix a Cortex-A compilation error
|
||
when system calls are enabled in modes other than CONFIG_BUILD_KERNEL
|
||
(2015-07-01)
|
||
* include/nuttx/net/netconfig.h: Fix some backward compilation that was
|
||
emitting #error in the wrong condition when SLIP was enabled (2015-07-01).
|
||
* drivers/net/slip.c: Fix a missed name change when many of network
|
||
interface names changed sometime back but were apparently never updated
|
||
for SLIP (2015-07-01).
|
||
* drivers/input/stmpe811_base.c: In stmpe811_instanciate() when
|
||
CONFIG_STMPE811_MULTIPLE is enabled, and the call to stmpe811_checkid()
|
||
fails, then the linked device list is not restored to its previous state.
|
||
From Sebastien Lorquet (2015-07-02).
|
||
* sched/sched/sched_waitpid.c: Implement WNOHANG for waitpid() only and
|
||
for the case of CONFIG_SCHED_HAVE_PARENT not selected. From Max
|
||
Neklyudov (2015-07-02).
|
||
* arch/sim/src/up_head.S: Implement board_power_off() for the simulation
|
||
platform (2015-07-04).
|
||
* libc/unistd/lib_gethostname.c: Add support for sethostname() (2015-07-05).
|
||
* libc/net: Add support for gethostbyname() and gethostbyaddr(). Also
|
||
support included for the non-standard gethostbyname_r() and
|
||
gethostbyaddr_r() (2015-07-08).
|
||
* drivers/ioexpander and include/nuttx/ioexpander: This commit adds:
|
||
- headers in nuttx/ioexpander to define the "generic" ioexpander
|
||
framework
|
||
- files in drivers/ioexpander for the implementation of the NXP
|
||
PCA9555 framework
|
||
- bindings in drivers/Kconfig and drivers/Makefile
|
||
From Sebastien Lorquet
|
||
* arch/arm/src/lpc43xx/chip/lpc4310203050_pinconfig.h: Correct some
|
||
LPC4350 GPIO pin configurations. From Alessandro Temil (2015-07-09).
|
||
* mm/umm_heap, include/nuttx/kmalloc.h, userspace.h, mm/mm.h, and all
|
||
configurations that support protected mode: Redesigned how the user
|
||
space heap is accessed from the kernel code in protected mode. It
|
||
used to call memory management functions in user space via function
|
||
pointers in the userspace interface. That is inefficient because the
|
||
first thing that those memory management functions do is to trap back
|
||
into the kernel to get the current PID. Worse, that operation can be
|
||
fatal is certain fragile situations such as when a task is exiting.
|
||
The solution is to remove all of the memory management function calls
|
||
from the interface. Instead, the interface exports the users pace
|
||
heap structure and then kernel size implementations of those memory
|
||
management functions will operate on the userspace heap structure.
|
||
This avoids the unnecessary system calls and, more importantly,
|
||
failures do to freeing memory when a test exits (2015-07-10).
|
||
* libc/netdb: Move netdb functions from lib/net to lib/netdb. Move
|
||
the DNS client logic from apps/netutils/dnscient to libc/netdb.
|
||
Add support to gethostbyname() so that it will attempt a DNS host
|
||
lookup before consulting the host table (if so enabled) (2015-07-10).
|
||
* arch/arm/src/samdl/chip/saml_usb.h: Several fixes to register
|
||
definitions and types. From Janne Rosberg (2015-07-10).
|
||
* include/nuttx/net/ and libc/netdb: Repartitioning of DNS client
|
||
logic in preparation for IPv6 support (2015-07-12):
|
||
- Rename include/nuttx/net/dnsclient.h to dns.h
|
||
- Move internal DNS prototypes from dns.h to libc/netdb/lib_dns.h
|
||
- Global standard DNS definitions from libc/netdb/dns_soccket.c to
|
||
dns.h
|
||
- Eliminate dns_gethostip(). This is now an internal part of
|
||
gethostbyname()
|
||
- Eliminate interface dns_whois(). Not needed in this new context.
|
||
* include/nuttx/net/ and libc/netdb: Modifications to DNS client logic
|
||
and to dns_get/setserver() interfaces to support DNS clients at IPv6
|
||
addresses (still no support for resolution to IPv6 addresses)
|
||
(2015-07-12).
|
||
* include/nuttx/net/ and libc/netdb: Implement the low-level network DNS
|
||
packet protocol to request and receive IPv6 address mappings
|
||
(2015-07-12).
|
||
* libc/netdb: Add a default value for DNS server IP address. Make
|
||
sure that the IP address has been initialized before permitting DNS
|
||
queries (2015-07-13).
|
||
* libc/netdb: Add support for a DNS host name resolution cache. This
|
||
can save a lot of DNS name server lookups (but might also have the
|
||
negative consequence of using stale IP address mappings (2015-07-13).
|
||
* graphics/, libnx/, and include/nuttx/nx: Implement anti-aliasing in
|
||
order to clean the drawing of all edges (2015-07-14).
|
||
* drivers/lcd/ and include/nuttx/lcd: Modify the SSD1306 LCD driver to
|
||
support either the SPI or I2C interface. From Alan Carvalho de Assis
|
||
(2015-07-15).
|
||
* arch/src/stm32f7 and arch/include/stm32f7: Add architecture support
|
||
for the STMicro STM32 F7 (2015-07-15).
|
||
* drivers/can.c: Fix an issue in the CAN driver where the rx_sem
|
||
count can grow beyond bounds (2015-07-15).
|
||
* configs/stm32f762g-disco/: Add initialize support for the STMicro
|
||
STM32 F7 Discovery board. This is a work in progress and will be a
|
||
while before it is fully functional (2015-07-16).
|
||
* arch/../up_etherstub.c, arch/../up_initialize, and other files: Add
|
||
CONFIG_NETDEV_LATEINIT that can be used to suppress calls to
|
||
up_netinitialize() from early in initialization (2015-07-17).
|
||
* arch/arm/src/stm32: Extend STM32 Ethernet operating frequency to
|
||
180MHz. From Sebastien Lorquet (2015-07-17).
|
||
* STM32 F7 Discovery: Basic NSH configuration is functional with a
|
||
serial console. I-/D-Caches and DTCM have been enabled. The delay
|
||
loop has been calibrated -- very fast (2015-07-19).
|
||
* drivers/sensor and include/nuttx/sensors: Add support to Bosch BMP180
|
||
barometer. From Alan Carvalho de Assis (2015-07-20).
|
||
* configs/stm32f4discovery/: Add support to BMP180 driver on the
|
||
STM32F4Discovery. From Alan Carvalho de Assis (2015-07-20).
|
||
* arch/arm/src/stm32f7: Add an STM32 F7 Ethernet driver (2015-07-20).
|
||
* arch/arm/src/stm32f7: Port the STM32 F4 DMA driver. Untested on
|
||
initial commit (2015-07-20).
|
||
* arch/arm/src/sam34: Correct some problems with SAM3/4 watchdog driver.
|
||
Includes some small improvements. From Max Neklyudov (2015-07-21).
|
||
* arch/arm/src/stm32 and include/stm32: Add support for the STMicro
|
||
STM32 F446. From David Sidrane (2015-07-22).
|
||
* include/nuttx/sched.h, sched/, and fs/procfs: Increase the size of
|
||
the scheduling policy field from 1 to 2 bits to allow additional,
|
||
planned scheduling policies (2015-07-23).
|
||
* pthread_create: Fix an (unlikely) error in fallback value in the
|
||
event of a failure (which should never occur) (2015-07-23).
|
||
* include/, sched/, and libc/: Add support for sporadic scheduling
|
||
parameters in struct sched_param, posix_spawnattr_t, and pthread_attr_t.
|
||
Update all user interfaces to pass sporadic scheduling parameters.
|
||
(2015-07-23).
|
||
* sched/: Separate the round-robin logic into a separate file so that
|
||
it is symmetric with the sporadic stuff. Integrate the sporadic
|
||
scheduler into the time tick interrupt handling and into the tickless
|
||
operation (2015-07-24).
|
||
* arch/arm/src/moxart/: Add support for MoxaRT SoC found in the most
|
||
Moxa serial converters such as NP51x0, NP66xx, UC72xx. From Anton
|
||
D. Kachalov (2015-07-29).
|
||
* configs/moxa: Moxa NP51x0 series of 2-port advanced RS-232/422/485
|
||
serial device servers. From Anton D. Kachalov (2015-07-29).
|
||
* drivers/net/ and include/nuttx/net: Add support for a Faraday
|
||
* FTMAC100 Ethernet MAC Driver. From Anton D. Kachalov (2015-07-29).
|
||
* 16550 UART Driver: Add a configuration option to indicate the the
|
||
THR empty bit is inverted. This is the the case for the moxART SoC.
|
||
Based comments from Anton D. Kachalov (2015-07-29).
|
||
* STM32 F4: Add DMA support to the ADC driver for STM32 F4. From
|
||
Max Kriegler (2015-07-30).
|
||
* sem_tickwait(): Added this function for internal use within the
|
||
OS. It is a non-standard but more efficient version of sem_timedwait()
|
||
for use in higher performance device drivers (2015-08-01).
|
||
* drivers/net/slip.c: Fix another compilation error (2015-08-02).
|
||
* drivers/can.c include/nuttx/can.h, and fs/fs.h: Add CAN IOCTL command
|
||
definitions to manage CAN message filtering (2015-08-05)
|
||
* drivers/Kconfig and can.c: Add configuration to support DLC to byte
|
||
conversions needed for CAN FD mode (2015-08-05).
|
||
* arch/arm/src/samv7: Add an MCAN driver for the SAMV7 platform
|
||
(2015-08-06).
|
||
* drivers/sensors/lm92.c and include/nuttx/sensors/lm92.h: Add a driver
|
||
for the LM92 temperature sensor. Contributed by Paul Alexander Patience
|
||
(2015-08-06).
|
||
* drivers/sensors/as5048b.c and include/nuttx/sensors/as5048b.h: Add
|
||
support for an AS5048B rotary magnetic sensor. From Paul Alexander
|
||
Patience (2015-08-07).
|
||
* include/nuttx/spi/slave.h: Add a definition of an SPI slave
|
||
interface (2015-08-08).
|
||
* arch/arm/src/samv7: Add the framework for an SPI slave driver. This
|
||
driver has a lot of missing logic on initial commit (2015-08-09).
|
||
* arch/arm/src/samv7: Basic, no-DMA SPI slave driver is in place
|
||
(2015-08-10).
|
||
* fs/vfs/epoll.c and include/sys/epoll.h: Add a very simple epoll layer
|
||
just around poll calls. To satisfy build app requirements. From Anton
|
||
D. Kachalov (2015-08-10).
|
||
* drivers/mtd/ramtron.c: Update to include supportf for newer
|
||
RAMTRON parts. From David Sidrane (2015-08-10).
|
||
* Networking: Allow receipt of empty UDP packets. From Max Neklyudov
|
||
(2015-08-11).
|
||
* drivers/sensors/mb7040.c and include/nuttx/sensors/mb7040.h: Add
|
||
support for a MB7040 sonar driver. From Paul Alexander Patience
|
||
(2015-08-11).
|
||
* net/udp: Add support for send() for connected UDP sockets
|
||
(2015-08-11).
|
||
* drivers/sensors/ms5805.c and include/nuttx/sensors/ms5805.h: Add
|
||
support for an MS5805 altimeter. From Paul Alexander Patience
|
||
(2015-08-12).
|
||
|
||
7.12 2015-10-01 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* fs/vfs/fs_poll.c: Use sem_tickwait() instead of sem_timedwait()
|
||
From Macs Neklyudov (2015-08-13).
|
||
* fs/vfs/fs_poll.c: If we fail to setup the poll for any file
|
||
descriptor, for any reason, set the POLLERR bit (2015-08-13).
|
||
* libc/stdlib: Add support for div() to the C library. From
|
||
OrbitalFox (2015-08-14).
|
||
* libc/stdlib: Might as well add ldiv() and lldiv() to since
|
||
these are equivalent to div() with long and long long types,
|
||
respectively, instead of int (2015-08-14).
|
||
* include/signal.h and files that include it: Add si_errno to
|
||
siginfo_t (2015-08-14).
|
||
* drivers/sensors/mx58xx.c and include/nuttx/sensors/ms58xx.h:
|
||
Generalize the MS5805 altimeter driver to support other family
|
||
members and rename to ms58xx. From Paul Alexander Patience
|
||
(2015-08-14).
|
||
* Network drivers. Fix bug in tun interface driver. From Max
|
||
Neklyudov (2015-08-17).
|
||
* STM32: Added definitions for STM32F303K6, STM32F303K8, STM32F303C6,
|
||
STM32F303C8, STM32F303RD, and STM32F303RE devices. From Paul
|
||
Alexander Patience (2015-08-17).
|
||
* include/nuttx/can.h and all CAN drivers: Add an error indication
|
||
bit to the CAN message report. This indication must then be cleared
|
||
in all existing drivers. More to come (2015-08-18).
|
||
* arch/arm/src/lpc17/lpc17_irq.c: Set NVIC vector address so that
|
||
code can execute with a bootloader or can execute from RAM. From
|
||
Pavel Pisa (2015-08-20).
|
||
* All ARMV7-M IRQ setup: Always set the NVIC vector table address
|
||
unconditionally. This is needed in cases where the code is running
|
||
with a bootload and when the code is running from RAM. It is also
|
||
needed by the logic of up_ramvec_initialize() which gets the vector
|
||
base address from the NVIC. Suggested by Pavel Pisa (2015-08-21).
|
||
* SAMV7 USBHS DCD: The device controller driver is (finally) functional
|
||
(2015-08-21).
|
||
* recvfrom(): Correct wait for new data when NET_UDP_READAHEAD is
|
||
enabled. Fix size accounting when recvfrom_udpreadahead() sets
|
||
state.rf_recvlen == -1. I have not checked if data are accumulated
|
||
to the right position in the buffer however. From Pavel Pisa
|
||
(2015-08-21).
|
||
* sched/wdog/wd_create.c: Correct a counting error in the number
|
||
of available watchdog timers. When the number of free timers is
|
||
low, the counter could be incremented below zero (2015-08-21).
|
||
* arch/arm/src/stm32: Add OTG support for STM32F44x. From David
|
||
Sidrane (2015-08-21).
|
||
* arch/arm/src/lpc17: Actually implement options to use external
|
||
SDRAM and or SRAM for the heap. From Pavel Pisa (2015-08-21).
|
||
* gethostbyname(): correct returned address format when DNS is used.
|
||
The hostent.h_addr_list should point to raw in_addr or in6_addr
|
||
as defined in the standard. Original implementation used that
|
||
for numeric addresses but for DNS lookup returned pointer to
|
||
whole sockaddr_in or sockaddr_in6. From Pavel Pisa (2015-08-21).
|
||
* tools/mksymtab: declare g_symtab array as const to occupy RO
|
||
section (Flash). From Pavel Pisa (2015-08-23).
|
||
* libc/libc.csv and syscalls/syscalls.csv: Define some symbol
|
||
export conditions, correct errno and add sleep and usleep. From
|
||
Pavel Pisa (2015-08-23).
|
||
* net/ and include/nuttx/net: Remove references to PPP as a
|
||
link layer protocol (2015-08-24).
|
||
* net/, drivers/net, and include/net: Add definitions to support
|
||
a local loopback device and link layer (2015-08-24).
|
||
* libc/netdb, net/loopback, include/nuttx/net: Add NetDB support
|
||
for the local loopback device (2015-08-24).
|
||
* drivers/net/loopback.c: Add basic prototype of a local loopback
|
||
device (2015-08-24).
|
||
* networking: Correct return value from psock_tcp_accept(). From
|
||
SaeHie Park (2015-08-25).
|
||
* drivers/mtd/s25fl1.c: Add a driver for ST25L1*K QuadSPI parts
|
||
(2015-08-25).
|
||
* include/nuttx/spi/qspi.h: Develop a new interface for QSPI, at
|
||
least the way that QSPI is implemented on the SAMV71. Originally
|
||
planned to use the SPI interface, but it is just now compatible
|
||
with the SAMV71 QSPI hardware (2015-08-25).
|
||
* drivers/rwbuffer.c: Fix some logic errors. From Dmitry Nikolaev
|
||
via Juha Niskanen (2015-08-26).
|
||
* net/socket and net/tcp: Fix a problem in when there are multiple
|
||
network devices. Polls were being sent to all TCP sockets before.
|
||
This is not good because it means that packets may sometimes be
|
||
sent out on the wrong device. That is inefficient because it
|
||
will cause retransmissions and bad performance. But, worse, when
|
||
one of the devices is not Ethernet, it will have a different MSS
|
||
and, as a result, incorrect data transfers can cause crashes.
|
||
The fix is to lock into a single device once the MSS is locked
|
||
locked down (2015-08-27).
|
||
* drivers/lcd and include/nuttx/lcd: Add SSD1351 OLED controller
|
||
support. Contributed by Paul Alexander Patience (2015-08-28).
|
||
* include/nuttx/mtd/mtd.h: Move MTD ioctl command definitions from
|
||
include/nuttx/fs/fs.h to include/nuttx/mtd.h. Add ioctl commands
|
||
to protect and unprotect memory (2015-08-29).
|
||
* binfmt/builtin.c: Fix a memory leak: File was not being closed.
|
||
From Bruno Herrera (2015-08-30).
|
||
* fs/romfs: One allocation was not being freed if there was a
|
||
subsequent failure to allocation I/O buffers resulting in a memory
|
||
leak on certain error conditions. From Bruno Herrera (2015-08-30).
|
||
* arch/arm/src/up_internal.h and several ARM Make.defs files: In the
|
||
original implementation, !defined(CONFIG_ARMV7M_CMNVECTOR) was a
|
||
sufficient test to determine if lazy floating point register saving
|
||
was being used. But recents changes added common lazy register as
|
||
well so now that test must be (!defined(CONFIG_ARMV7M_CMNVECTOR) ||
|
||
defined(CONFIG_ARMV7M_LAZYFPU)) (2015-08-31).
|
||
* arch/arm/include/sama5 and src/sama5: Add basic chip description,
|
||
configuration support and interrupt definitions for the SAMA5D2
|
||
(2015-08-31).
|
||
* LPC43xx: Fix NVIC_SYSH_PRIORITY_STEP define. From Ilya Averyanov
|
||
(2015-09-01).
|
||
* LPC43xx: Fix missing #define in eeprom. From Ilya Averyanov
|
||
(2015-09-01).
|
||
* libc/math/lib_asin.c: The function did not convert for some input
|
||
values. Asin did not convert for values which do not belong to the
|
||
domain of the function. But aside of that the function also did not
|
||
converge for some allowed values. I achieved a conversion of the
|
||
function by reducing the DBL_EPSION and by checking if the input
|
||
value is in the domain of the function. This is a fix for the
|
||
problem but the function should always terminate after a given
|
||
number of iterations. From Stefan Kolb (2015-09-01).
|
||
* arch/arm/src/lpc43xx/lpc43_spi.c: Fix SPI driver. From Ilya
|
||
Averyanov (2015-09-02).
|
||
* arch/arm/src/lpc43xx/lpc43_ethernet.c: Add Ethernet support. From
|
||
Ilya Averyanov (2015-09-02).
|
||
* net/tcp: The logic that binds a specific network device to
|
||
a connection was faulty for the case of multiple network
|
||
devices. On bind(), the local address should be used to associate
|
||
a device with the connection (if the local address is not INADDR_ANY);
|
||
On connect(), the remote address should be used (in case the local
|
||
address is INADDR_ANY). On accept(), it does not matter but the
|
||
remote address is the one guaranteed to be available (2015-09-02).
|
||
* configs/Board.mk and configs/*/src/Makefile: Simplify configs/
|
||
Makefiles by combining common logic into a new Board.mk Makefile
|
||
fragment. From Paul Alexander Patience (2015-09-04).
|
||
* configs/sama5d2-xult: Add a very basic configuration for the SAMAD2
|
||
Xplained Ultra board. This configuration is incomplete and only
|
||
intended to support the initial board bring-up (2015-09-05).
|
||
* up_initialize() all architectures: Automatically initialize all
|
||
the TUN device if it is in the configuration (2015-09-06).
|
||
* Change all references from avsprintf to vasprintf. From Sebastien
|
||
Lorquet (2015-09-07).
|
||
* net/tcp: Fix unbuffered send compilation error when Ethernet is not
|
||
enabled. From Alan Cavalho de Assis (2015-09-07).
|
||
* LPC31 and SAMA5D EHCI: Fix qh_ioccheck to move bp to next QH. From
|
||
Ilya Averyanov (2015-09-07).
|
||
* LPC31 and SAMA5D EHCI: Performance improvement: Do not disable the
|
||
asynchronous queue when adding a new QH structure. From Ilya
|
||
Averyanov (2015-09-07).
|
||
* arch/arm/src/sama5: Separate memory mapping tables for SAMA5D2, 3,
|
||
and 4 (2015-09-08).
|
||
* libc/net/lib_shutdown.c: Add an empty implementation of the
|
||
standard shutdown function. This provides only the framework for
|
||
the shutdown function; the internal logic is not included
|
||
(2015-09-09).
|
||
* configs/nucleo-f303re: Support for the STMicro Nucleo F303RE board
|
||
from Paul Alexander Patience (2015-09-10).
|
||
* arch/arm/src/lpc43xx/lpc32_ehci.c and .h: LPC43xx EHCI driver from
|
||
Ilya Averyanov (2015-09-10).
|
||
* ARMv7-M, all "lazy" interrupt stack logic. Assembly instruction
|
||
that fetches the saved value is incorrect; replace with more
|
||
traditional push and pop. This is an important fix. Noted by
|
||
Stefan Kolb (2015-09-14).
|
||
* All ARMV7-M: Force 8-byte stack alignment when calling from assembly
|
||
to C to interrupt handling (2015-09-15).
|
||
* drivers/power/battery_gauge.c and include/nuttx/power/battery_gauge.h:
|
||
battery.c/h renamed to batter_gauge.c/.h since it really only
|
||
implements a battery fuel gauge. From Alan Carvalho de Assis (2015-09-19).
|
||
* drivers/power/battery_charger.c and include/nuttx/power/batter_charger.h:
|
||
Add a new framework to support a batter charger interface. From Alan
|
||
Carvalho de Assis (2015-09-19).
|
||
* drivers/power/bq2425x.c and .h: Battery Charger: Add BQ24250 driver.
|
||
From Alan Carvalho de Assis (2015-09-20).
|
||
* fs/mqueue/mq_open.c: When message queue is opened, inode_reserve()
|
||
leaves the reference count at zero. mq_open() logic must assure
|
||
that the reference count of the newly created inode is one (2015-09-23).
|
||
* arch/sim/src/Kconfig, Makefile, up_setjmp64.S: Modern Cygwin X86_64
|
||
machines follow the Microsoft ABI for parameter passing. The older,
|
||
Linux System 5 ABI will not work on X86_64-based Cygwin machines. Also,
|
||
the newer Cygwin tool chains do nor pre-pend symbol names with the
|
||
underscore character. With these changes the simulator agains works
|
||
with the newer Cygwin64 platform (2015-09-24).
|
||
* arch/arm/src/lpc43xx: Extensive I2C and clocking updates from Lok Tep
|
||
(2015-09-29).
|
||
* configs/lpc4370-link2: Support for the NXP LPC4370-Link2 development
|
||
board from Lok Tep (2015-09-29).
|
||
* configs/nucleo-f303re: Add SSD1351 SPI 4-wire interface. From Paul
|
||
Alexander Patience (2015-09-29).
|
||
* arch/arm/src/armv7-m/up_schedulesigaction.c: Fix logic that determines
|
||
if there is a pending signal action before scheduling the next signal
|
||
action. Both the test and the scheduling action need to be atomic
|
||
(2015-09-30).
|
||
* sched/wqueue/kwork_queue.c and libc/wqueue/work_queue.c: Logic that
|
||
sets the queued indication and the logic that does the actual queuing
|
||
must be atomic (2015-09-20).
|
||
|
||
7.13 2015-12-05 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* libc/stdlib/lib_bsearch.c and include/stdlib.h: Add the bsearch()
|
||
function from NetBSD (2015-10-02).
|
||
* libc/stdlib/lib_qsort.c and include/stdlib.h: Make coding style
|
||
more conformant, take description from OpenGroup.org, rename formal
|
||
parameters to match names used on OpenGroup.org (2015-10-02).
|
||
* drivers/lcd/st7565.c: Extend to include support for the ERC12864-3.
|
||
From Pierre-noel Bouteville (2015-10-07).
|
||
* fs/tmpfs: Created a directory that will eventually hold a trivial
|
||
temporary RAM file file system (2015-10-0i8).
|
||
* tools/: Add crappy style checking tool nxstyle.c. See thee tools/
|
||
README file for more info (2015-10-08).
|
||
* 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 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.
|
||
This lower half driver is only usable in a limited number of
|
||
situations, but can still serve as a module for the lower half button
|
||
driver. (2015-10-13).
|
||
* drivers/sensors/zerocross.c and include/nuttx/sensors/zerocross.h:
|
||
Add Zero Cross device driver support. From Alan Carvalho de Assis
|
||
(2015-10-13).
|
||
* configs/stm32f4discovery/src/stm32_zerocross.c: Add low level support
|
||
for the Zero Cross driver for the STM32F4-Discovery. From Alan
|
||
Carvalho de Assis (2015-10-13).
|
||
* drivers/sensors/max6675.c and include/nuttx/sensors/max6675.h: Add
|
||
support to Thermocouple-to-Digital converter MAX6675. From Alan
|
||
Carvalho de Assis (2015-10-18).
|
||
* configs/stm32f4discovery/src: Add board config to support MAX6675.
|
||
From Alan Carvalho de Assis (2015-10-18).
|
||
* arch/arm/src/samv7/sam_lowputc.c: Reconfigure System I/O when using
|
||
USART1. From Frank Benkert (2015-10-20).
|
||
* fs/semaphore: Named semaphores: Bad cast in sem_close(). Fixed by
|
||
reordering fields of struct nsem_inode_s so that the cast will work
|
||
(2015-10-22).
|
||
* Many files: Rename board_led_* functions to board_autoled_* functions.
|
||
This makes room in the namespace to handler user LED functions
|
||
(2015-11-01).
|
||
* Many files: Standardize naming of the user LED interface functions.
|
||
The new user LED interface functions are now prototyped in only in
|
||
include/nuttx/board.h and have name like board_userled_* (2015-11-01).
|
||
* drivers/leds/usersled_upper.c and include/leds/usersled.h: Add
|
||
a generic character driver that may be used by applications to write
|
||
to board LEDs (2015-11-01).
|
||
* drivers/leds/usersled_lower.c: Add a generic lower-half user LED
|
||
driver that may be used by any board that supports the standard
|
||
board user LED interfaces (2015-11-01).
|
||
* sched/clock: Fix error in clock_timespec_subtract(). Found by Lok
|
||
(2015-11-03).
|
||
* drivers/can.c and include/nuttx/can.h: 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
|
||
(2015-11-03).
|
||
* arch/arm/src/samv7: Add a call to can_txready() to the MCAN driver
|
||
(2015-11-03).
|
||
* arch/arm/src/samv7: Add MPU and protected build support (2015-11-06).
|
||
* arch/arm/src/samv7: The QSPI FLASH driver is now functional. This
|
||
driver operates in the memory-mapped, Serial Memory Mode (SMM)
|
||
(2015-11-07).
|
||
* drivers/bch: Block-to-character (BCH) driver should forward ioctl()
|
||
calls to the contained block driver (2015-11-09).
|
||
* arch/arm/samv7/sam_qspi.c: The QuadSPI driver is now functional
|
||
(2015-11-10).
|
||
* drivers/mtd/s25fl1.c: The S25FL1xx QuadSPI FLASH driver is now
|
||
functional (2015-10-11).
|
||
* arch/arm/samv7: Add an on-chip FLASH driver (2015-11-12).
|
||
* drivers/mtd/mtd_progmem.c: Add an upper half MTD device that can
|
||
use the interfaces defined in included/nuttx/progmem.h to provide
|
||
a standard MTD interface (2015-11-12).
|
||
* drivers/serial/serial.c, serialirq.c and include/nuttx/serial/serial.h:
|
||
Implement high level DMA infrastructure for serial devices. From
|
||
Max Neklyudov (2015-11-12).
|
||
* arch/arm/src/samv7 and arch/arm/include/samv7: Add support for the
|
||
SAME70 family of chips (2015-11-14).
|
||
* configs/stm32f429i-disco: configs/stm32f429i-disco/src/stm32_nsh.c
|
||
file calculated partition boundries based on page block sizes but
|
||
mtd_partition() is expecting calculations based on erase block size.
|
||
From Alan Carvalho de Assis (2015-11-16).
|
||
* Move rivers/wireless/cc3000/security.c to crypto/aes.c; move
|
||
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 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
|
||
timer driver for use with drivers/timers/timer.c. From Wail Khemir
|
||
(2015-11-17).
|
||
* drivers/sensors/ms58xx.c: Fix some issues with initialization and with
|
||
CRC calculation. From Karim Keddam (2015-11-17).
|
||
* drivers/mtd/w25.c: Fix W25 FLASH driver page read/write logic. From
|
||
Ken Pettit (2015-11-18).
|
||
* drivers/mtd/smart.c: Fix a Smart wear-leveling bug. From Ken Pettit
|
||
(2015-11-18).
|
||
* arch/sim/src/up_spiflash.c: Add support for W25 FLASH simulation.
|
||
From Ken Pettit (2015-11-18).
|
||
* configs/boardctl.h, Kconfig, include/sys/boardctl.h, and nuttx/board.h:
|
||
Add a command to the boardctl() interface to obtain a board unique ID
|
||
(2015-11-18).
|
||
* drivers/timers/ds3231.c: Driver extended to include support for the
|
||
DS1307 RTC (2015-11-18).
|
||
* configs/same70-xplained: Add basic NSH configuration for the SAME70
|
||
Xplained board. Initial commit is just the SAMV71-XULT files with
|
||
names changed appropriately (2015-11-18).
|
||
* 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 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
|
||
(2015-11-19).
|
||
* drivers/mtd/w25.c: Add support for byte write mode. From Ken Pettit
|
||
(2015-11-20).
|
||
* drivers/timers/pcf85263.c and include/nuttx/times/pcf85263.h: Add
|
||
a driver for the NXP PCF85263 I2C RTC. Untested on initial commit
|
||
(2015-11-20).
|
||
* fs/driver/fs_blockproxy.c: Add logic to create a temporary char driver
|
||
using drivers/bch to mediate character oriented accessed to a block
|
||
driver (2015-11-21).
|
||
* fs/vfs/open.c: If the use attempts to open a block driver, use
|
||
block_proxy() to insert a character driver conversion layer in front
|
||
of the block driver (2015-11-21).
|
||
* libc/stdio/lib_freopen.c and include/stdio.h: Add support for
|
||
freopen() (2015-11-22).
|
||
* include/sys/types.h and include/nuttx/mm.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
|
||
* fs/hostfs and arch/sim/src: Add a special file system for use with
|
||
simulator that supports access to the host file system from the
|
||
simulation. From Ken Pettit (2015-11-25).
|
||
* libc/time/lib_strftime.c: Add day-of-week support. (2015-11-25).
|
||
* drivers/lcd/ili9432.c: Fixed errors in orientation. Portrait,
|
||
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-register an MTD procfs entry. From Ken Pettit
|
||
(2015-11-25).
|
||
* 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).
|
||
* drivers/loop: Add 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 (2015-11-25).
|
||
* include/nuttx/net/netdev.h and several Ethernet drivers in arch/:
|
||
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
|
||
useless. This change 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 (2015-11-26).
|
||
* net/net_procfs.c: Add basic support for networking entries in the
|
||
procfs (2015-11-27).
|
||
* mtd/filemtd.c and smart.c: Add support for a /dev/smart loop device.
|
||
From Ken Pettit (2015-11-28).
|
||
* sched/pthread/: 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 (2015-11-29).
|
||
* configs/same70-xplained/nsh: The NSH configuration now seems fully
|
||
functional: serial console, LEDs, buttons, SDRAM, and HSMCI SD card
|
||
(2015-11-30).
|
||
* configs/same70-xplained/netnsh: Added and verified a network-enabled
|
||
NSH configuration for the SAME70-Xplained board (2015-11-20).
|
||
* net/: Remove CONFIG_NET_PINGADDRCONF. This was a uIP way of assigning
|
||
IP addresses, but is not standard and not a appropriate feature in
|
||
general (2015-12-01).
|
||
* fs/procfs: The procfs file system can now be configured so that it
|
||
supports a runtime registration of procfs entries with
|
||
CONFIG_FS_PROCFS_REGISTER=y (2015-12-01).
|
||
* arch/arm/src/stm32/stm32_ccm_procfs.c: 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 (2015-12-01).
|
||
* arch/arm/src/samv7/sam_tc.c: Port the SAMA5 timer/counter driver
|
||
to the SAMV7 (2015-12-02).
|
||
* arm/arm/src/samv7/sam_tickless.c: Port the SAMA5/SAM4CM tickless
|
||
logic to the SAMV7 (2015-12-02).
|
||
* fs/semaphore: Named semaphores: Back out "fix" of 2015-10-22. It was
|
||
correct before. The change of 2015-10-22 probably broke named
|
||
semaphores (2015-12-02).
|
||
* arch/arm/src/samv7: Bring programmable clock logic from SAMA5 into
|
||
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 PCK6
|
||
as a timer/counter clock source (2015-12-04).
|
||
|
||
7.14 2016-01-28 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* arch/arm/src/samv7: Port the TRNG driver from the SAMA5D3/4 to the
|
||
SAMV7 (2015-12-06).
|
||
* arch/arm/src/samv7: Port the WDT driver from the SAMA5D3/4 to the
|
||
SAMV7 (2015-12-06).
|
||
* arch/arm/src/samv7: Add an RSWDT driver (2015-12-06).
|
||
* drivers/net/telnet.c: Move the Telnet driver from apps/netutils/telnetd
|
||
to drivers/net. It is a driver a belongs in the OS. There are still
|
||
some interface related issues, however (2015-12-07).
|
||
* configs/: Update all configurations that use the Telnet daemon; those
|
||
configurations now need to separately enable the Telnet drvier
|
||
(2015-12-07).
|
||
* drivers/net/telnet.c: Now works like the loop device. A new interface
|
||
called telnet_initialize() registers a telnet session "factory"
|
||
device at /dev/telnet. Via ioctl, the factory device can create
|
||
instances of the telnet character devices at /dev/telnetN to support
|
||
Telnet sessions (2015-12-07).
|
||
* arch/arm/src/samv7: In USBHS device driver, fix check if zero length
|
||
packet is needed (2015-12-08).
|
||
* sched/pthread/: CRITICAL BUGFIX: Logic was wiping out the indication
|
||
that of the type of a pthread. Hence, it could be confused as a
|
||
task. Same problem as fixed on 2015-11-29, but in different location
|
||
(2015-12-09).
|
||
* sched/module: Add support for kernel modules. Initial commit is
|
||
just the ELF module support with name changes (2015-12-10).
|
||
* configs/samv71-xult/module: Add configuration for testing OS
|
||
modules (2015-12-12).
|
||
* sched/module: Add an implementation of rmmod() (2015-12-12).
|
||
* sched/module and fs/procfs: Add some basic module procfs support
|
||
(2015-12-12),
|
||
* arch/arm/src/armv7-r: Add basic architecture support for the ARMv7-R
|
||
processor family (2015-12-13).
|
||
* drivers/led: Adds a driver for the PCA9635PW I2C LED driver IC which
|
||
can be used to control the intensity of up to 16 LEDs. From Alexander
|
||
Entinger (2015-12-15).
|
||
* configs/launchxl-tms57004: Add basic board support for TI LaunchXL-
|
||
TMS57004. Not much to see there yet (2015-12-15).
|
||
* waitpid: CRITICAL BUGFIX. Add a reference count to prevent waitpid
|
||
from using stale memory released by the waited-for task group
|
||
(2015-12-22).
|
||
* sys/time.h: Add timeradd(), timersub(), timerclear(), timerisset(),
|
||
and timercmp() as macros. These are non-POSIX interfaces, but
|
||
included in most BSD deriviatives, including Linux. From Manuel St<53>hn
|
||
(2015-12-23).
|
||
* arch/arm/src/stm32: Add timer input capture driver. From Pierre-Noel
|
||
Bouteville (2015-12-24).
|
||
* arch/avr: Add support for the Atmega2560. From Dimitry Kloper
|
||
(2015-12-19).
|
||
* configs/arduino-mega2560: Add support for the Arduino-Mega2560. From
|
||
Dimitry Koper (2015-12-29).
|
||
* sched/signal, sched/mqueue, sched/timer, include/signal.h,
|
||
include/nuttx/signal, fs/aio, libc/aio, and probably other
|
||
directories: Add support for the SIGEV_THREAD notification method in
|
||
struct sigevent. This initial implementation will only work in the
|
||
FLAT build. See the top-level TODO file for additional details
|
||
(2015-12-30).
|
||
* include/nuttx/compiler.h, include/nuttx/streams.h include/stdio.h
|
||
include/syslog.h libc/stdio/, and libc/syslog: introduce support for
|
||
Atmel toolchain in-flash strings. Atmel toolchain AVR compiler
|
||
provides a transparent in-flash object support using __flash and
|
||
__memx symbols. The former indicates to compiler that this is a flash-
|
||
based object. The later used with pointer indicates that the referenced
|
||
object may reside either in flash or in RAM. The compiler automatically
|
||
makes 32-bit pointer with flag indicating whether referenced object is
|
||
in flash or RAM and generates code to access either in run-time. Thus,
|
||
any function that accepts __memx object can transparently work with RAM
|
||
and flash objects.
|
||
For platforms with a Harvard architecture and a very small RAM like AVR
|
||
this allows to move all constant strings used in trace messages to flash
|
||
in the instruction address space, releasing resources for other things.
|
||
This change introduces IOBJ and IPTR type qualifiers. The 'I' indicates
|
||
that the object may lie in instruction space on a Harvard architecture
|
||
machine. For platforms that do not have __flash and __memx or similar
|
||
symbols IOBJ and IPTR are empty, making the types equivalent to, for
|
||
example, 'const char' and 'const char*'. For Atmel compiler these will
|
||
become 'const __flash char' and 'const __memx char*'. All printf()
|
||
functions and syslog() functions are changed so that the qualifier is
|
||
used with the format parameter. From Dimitry Kloper (2016-01-05).
|
||
* drivers/net/tun.c: Fix a compile time error in the TUN driver. From
|
||
Vladimir Komendantskiy (2016-01-05).
|
||
* Kconfig and include/debug.h: Add configuration to support an
|
||
architecture-specific debug.h header file. From Dimitri Kloper
|
||
(2016-01-09).
|
||
* arch/avr/include/debug.h: Add an AVR-specific header file used when
|
||
the AVR MEMX pointer is used. From Dimitri Kloper (2016-01-09).
|
||
* tools/cnvwindeps.c: Add a tool that will convert paths in
|
||
dependencies generated by a Windows compiler so that they can be
|
||
used with the Cygwin make (2016-01-09).
|
||
* tools/mkwindeps.sh: A script that coordinates use of cnvwindeps.exe
|
||
(2016-01-09).
|
||
* tools/mkdeps.c: Deleted mkdeps.sh and mkdeps.bat. The mkdeps
|
||
executable generated from mkdeps.c is now that the only supported
|
||
way to make dependencies (2016-01-09).
|
||
* tools/mkdeps.c: Extended/fixed support for --winpath option.
|
||
Dependencies now work under Cygwin with a native Windows toolchain
|
||
(2016-01-10).
|
||
* libc/netdb: Add support for the use of a DNS resolver file like
|
||
/etc/resolv.conf (2016-01-14).
|
||
* drivers/sensors/mcp9844.c and include/nuttx/sensors/mcp9844.h: Driver
|
||
for the MCP9844 I2C digital temperature sensor with a selectable
|
||
resolution. From Alexander Entinger (2016-01-15).
|
||
* arch/arm/src/lpc43xx: Numerous LPC43 improvements to SPIFI and ADC
|
||
from Lok Tep (2016-01-15).
|
||
* configs/lpc4337-ws: Support for the WaveShare LPC4337-WS board. From
|
||
Lok Tep (2016-01-15).
|
||
* drivers/wireless/pn532.c: Add driver for the NXP pn532 NFC-chip. From
|
||
Janne Rosberg and others at Offcode Ltd (2016-01-17).
|
||
* drivers/sensors/lsm9ds1.c: Add driver for the STMicro LSM9DS1 chip.
|
||
The LSM9DS1 is a system-in-package featuring a 3D digital linear
|
||
acceleration sensor, a 3D digital angular rate sensor, and a 3D
|
||
digital magnetic sensor. From Paul Alexander Patience (2016-01-17).
|
||
* configs/olimex-stm32-h407: Added a port to the Olimex STM32 H407
|
||
board. This board features the STMicro STM32F407ZGT6 (144 pins).
|
||
Contributed by Neil Hancock. (2016-01-18)
|
||
* arch/arm/src/stm32/stm32_otgfs/hs/host.c: Fix some backward
|
||
arguments to stm32_putreg(). Note by Hang Xu (2016-01-18).
|
||
* include/nuttx/can.h and several CAN drivers: Add more extensive
|
||
error reporting capaibility to the CAN interface. From Frank
|
||
Benkert (2016-01-18).
|
||
* libc/misc/lib_tea.h and include/nuttx/crypto/tea.h: Add an
|
||
implementation of the Tiny Encryption Algorithm (2016-01-19).
|
||
* sim/include: Now supports a customizable startup script with a
|
||
read-only passwd file (2016-01-20).
|
||
* sim/nsh: Uses the custom start up script, includes hooks for
|
||
an MOTD message. (2016-01-20).
|
||
* include/clock.h and lots of other files: If the 64-bit timer is
|
||
selected, then use it whenever clock_systimer() is called rather
|
||
then chopping the 64-bit timer down to 32-bits. Add a new type,
|
||
systime_t to represent the 32- or 64-bit system timer (2016-01-21).
|
||
* sched/clock/clock_systimespec.c: Fix an error in a time
|
||
conversion (2016-01-21).
|
||
* include/nuttx/clock.h: Get rid of clock_systimer32() and
|
||
clock_systime64(). There is now only clock_systimer() (2016-01-21).
|
||
* arch/arm/src/kinetis: Numerous updates to the Kinetis ENET driver.
|
||
From Andrew Webster (2016-01-21).
|
||
* arch/arm/src/kinetis: Add support for the MK60N512VLL100 Kinetis part.
|
||
From Andrew Webster (2016-01-21).
|
||
* net/tcp and net/iob: Numerous fixes, mostly relate to TCP and IOB
|
||
buffering and race conditions. These were necessary for for the
|
||
NuttX networking later to be stable in some stress testing. From
|
||
Andrew Webster (2016-01-22).
|
||
* include/spi/spi.h: Add an optional hwfeatures() method to the
|
||
SPI interface (2016-01-23).
|
||
* drivers/spi/Kconfig and many other files: Remove CONFIG_SPI_OWNBUS:
|
||
Now its not just a good idea, its the law (2015-01-23).
|
||
* include/nuttx/math32.h and libc/misc: Add some utilities to support
|
||
64-bit arithmetic operations for platforms that do not support long
|
||
long types. Not yet used anywhere (2015-01-25).
|
||
* arch/arm/src/samv7/chip: Add an AFEC header file (2016-01-25).
|
||
* net/iob: iob_alloc_qentry() has the same issues as did iob_alloc()
|
||
fixed on 2016-01-23. (2016-01-26).
|
||
* drivers/usbhost/hid_parser.c: Wrong size used in memcpy(). From Hang
|
||
Xu (2016-01-25).
|
||
* drivers/ioexpander/pca9555.c: Fixed a bug in the function pca9555_setbit
|
||
which occurs if someone tries to set one of the pins 8-15. The problem is
|
||
that after the check if the pin is greater than 7 the variable addr is
|
||
incremented and used in the Call I2C_WRITEREAD. But later in the call to
|
||
the I2C_WRITE buf[0] is used as address but this address is not incremented
|
||
as it should be. Note address does mean the address to the register in the
|
||
ioexpander and not the I2C address. From Stefan Kolb (2016-01-26).
|
||
* drivers/ioexpander/pca9555: Convert to use I2C_TRANSFER vs. I2C_WRITEREAD,
|
||
the former is thread safe while the latter is deprecated (2016-01-26).
|
||
* drivers/i2c/i2c_writeread.c: Create a wrapper that uses I2C_TRANSFER
|
||
to implement I2C_WRITEREAD functionality (2016-01-26).
|
||
* I2C: Eliminate the I2C_WRITEREAD method (2016-01-26).
|
||
* drivers/i2c/i2c_read.c and i2c_write.c: Convert to use I2C_TRANSFER vs.
|
||
I2C_READ and I2C_WRITE which are not thread safe (2016-01-26).
|
||
* SPI: Rename the STM32 up_spiinitialize() to stm32_spibus_initialize()
|
||
(2016-01-26).
|
||
* SPI: Rename the SAM up_spiinitialize() to sam_spibus_initialize()
|
||
(2016-01-26).
|
||
* SPI: Rename the Tiva up_spiinitialize() to tiva_spibus_intialize()
|
||
(2016-01-26).
|
||
* SPI: Rename the PIC32MX/MZ up_spiinitialize() to pic32mx/mz_spibus_intialize()
|
||
(2016-01-26).
|
||
* SPI: Rename EFM32's efm32_spi_initialize to efm32_spibus_initialize()
|
||
for compatibility with these other changes (2016-01-26).
|
||
* SPI: Rename the KL up_spiinitialize() to kl_spibus_intialize() (2016-01-26).
|
||
* SPI: Rename the Kinetis up_spiinitialize() to kinetis_spibus_intialize()
|
||
(2016-01-26).
|
||
* SPI: Rename the LPC31xx up_spiinitialize() to lpc31_spibus_intialize(),
|
||
Rename the LPC17xx lpc17_spiinitialize() to lpc31_spibus_intialize(),
|
||
Rename the LPC43xx up_spiinitialize() to lpc43_spibus_intialize()
|
||
(2016-01-26).
|
||
* SPI: Rename the AVR up_spiinitialize() to avr_spibus_intialize(),
|
||
Rename the LPC2148 up_spiinitialize() to lpc214x_spibus_intialize(),
|
||
Rename the Calypso up_spiinitialize() to calypso_spibus_intialize(),
|
||
Rename the ez80 up_spiinitialize() to ez80_spibus_intialize(),
|
||
Rename the STR71xx up_spiinitialize() to str71_spibus_intialize(),
|
||
Rename the i.MX1 up_spiinitialize() to imx_spibus_intialize(),
|
||
Rename the LPC2378 up_spiinitialize() to lpc23_spibus_intialize(),
|
||
Rename the M9S12 up_spiinitialize() to hcs12_spibus_intialize(),
|
||
Rename the x86 up_spiinitialize() to i486_spibus_intialize(),
|
||
Rename the z16f up_spiinitialize() to z16_spibus_intialize().
|
||
up_spiinitialize() has been completely eliminated. (2016-01-27).
|
||
* fs/vfs/fs_poll.c: Fix handling of sem_tickwait() return value
|
||
sem_tickwait() does not return an -1+errno, it returns a negated
|
||
errno value. Noted by Freddie Chopin.
|
||
|
||
7.15 2016-03-27 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/analog/ads1242.c and include/nuttx/analog/ads1242.h: Driver
|
||
for the 24-Bit Differential Input ADC ADS1242 that communicates via
|
||
SPI with a MCU. Reading the ADC conversion result as well as configuring
|
||
the ADC, setting the input channel, etc. is implemented via ioctl calls.
|
||
However, it does not yet implement the standard ADC interface. From
|
||
Alexander Entinger (2016-01-29)
|
||
* configs/board/src/xyz_cxxinitialize.c: Move C++ initialization logic
|
||
out of the RTOS and into the application space, specifically to
|
||
apps/platform/board, where it belongs (2016-01-29).
|
||
* drivers/modem/u-blox.c and include/nuttx/drivers/u-blox.h: Add an upper
|
||
half driver for the U-Blox Modem. From Vladimir Komendantskiy
|
||
(2016-01-30).
|
||
* arch/arm/src/lpc17xx: Backport lpc43xx I2C driver, replacing the
|
||
lpc17xx I2C driver. This gives us the I2C_TRANSFER method (2016-01-30).
|
||
* arch/arm/src/lpc11xx: Backport the lpc17xx I2C driver, replacing the
|
||
lpc11xx I2C driver. This gives us the I2C_TRANSFER method (2016-01-30).
|
||
* arch/arm/src/lpc2378: Backo the Lpc17xx I2C driver, replacing the
|
||
lpc2378 I2C driver. This gives us the I2C_TRANSFER method (2016-01-30).
|
||
* configs/u-blox-c027: Support for the u-blox GSM and GPS module evaluation
|
||
board with NXP LPCExpresso LPC1768. The GSM module is one of LISA-C200,
|
||
LISA-U200 or SARA-G350. The GPS module is one of MAX-M7 or MAX-M8. From
|
||
Vladimir Komendantskiy (2016-01-31).
|
||
* drivers/, arch/, include/, numerous files: Restructuring of the I2C
|
||
interface necessary to eliminate some thread-safety issues inherent in
|
||
the legacy I2C interface design. This effects the interface definition,
|
||
all I2C clients, and all low-level I2C drivers. I have used caution,
|
||
but I still expect a change of this magnitude to introduce some errors.
|
||
Any bug reports of bug fixes will be much appreciated (2016-02-01).
|
||
* drivers/i2c/i2c_driver.c: Add an I2C character drivers to support
|
||
raw I2C data transfers for test applications (2016-02-02).
|
||
* I2C_RESET: Eliminate up_i2creset(). It should not be a global function;
|
||
Now it is an I2C interface method (2016-02-02).
|
||
* I2C: Rename up_i2cinitialize and up_i2cuninitilize to follow the correct
|
||
naming convention. These are not common interfaces used by the OS;
|
||
these are MCU-specific interfaces used only be MCU-specific code. The
|
||
the correct naming is xyz_i2cbus_initialize and xzy_i2cbus_uninitialize
|
||
where xzy is the MCU mnemonic (2016-02-02).
|
||
* Networking drivers that support CONFIG_NET_NOINTS: Fix a race condition
|
||
that can cause the TX poll timer to stop running. From Manuel Stuhn
|
||
(2016-02-03).
|
||
* All Network drivers: Remove the hsec parameter from devif_timer().
|
||
We can get better timing accuracy without it (2016-02-03).
|
||
* drivers/ioexpander/pca555.c: Add logic to make the PCA555 driver
|
||
thread safe (2016-02-03).
|
||
* sched/init/os_start.c and include/nuttx/init.h: Add a state variable
|
||
that provides the current level of OS initialization. This is needed by
|
||
some logic that may attempt to run early in the start-up sequence but
|
||
cannot run if a sufficient level of initialization has not yet occurred
|
||
(2016-02-05).
|
||
* libc/syslog/lib_syslog.c: If syslog timestamping is enabled, don't try to
|
||
get the time if the timer hardware has not yet been initialized
|
||
(2016-02-05).
|
||
* fs/procfs/fs_procfskmm.c: Add /proc/kmm entry that shows that state of
|
||
the kernel heap. Only useful in PROTECTED and KERNEL build modes where
|
||
there is a kernel heap (2016-02-06).
|
||
* sched/ and arch/: Replace explicit access to the OS internal data structure
|
||
g_readytorun() with the wrapper this_task() which hides the implementation
|
||
and will permit such things as more scalable representations of task queues
|
||
and SMP (2016-02-06).
|
||
* include/nuttx/net/arp.h, include/nuttx/net/ioctl.h, net/netdev/netdev_ioctl.c,
|
||
and ARP-related files: Add support for IOCTL commands to manage the
|
||
ARP table (2016-02-08).
|
||
* ARMv7-A, ARMv7-R, and ARMv7-A: Add test-and-set logic and definitions
|
||
needed to supports spinlocks (2016-02-09).
|
||
* include/nuttx/spinlock.h: Add basic definitions for spinlocks. Not yet
|
||
used by NuttX (2016-02-09).
|
||
* include/nuttx/arch.h, sched/sched/sched.h: Add some basic definitions
|
||
that may be needed for SMP support (2016-02-10).
|
||
* sched/init/os_start.c, sched/init/os_smpstart.c, and include/nuttx/arch.h:
|
||
Add some tentative SMP start-up logic (2016-02-10).
|
||
* arch/arm/sim/up_head.c and up_simsmp.c: Add multi-CPU support to the
|
||
simulation to support SMP investigation.. Currently crashes when CONFIG_SMP
|
||
is enabled as expected (2016-02-10).
|
||
* sched/sched.h and other files: Replace the bool 'prioritized' in the task
|
||
list table with a uint8_t bit set so that additional attributes of a task
|
||
list can be provided without adding more booleans (2016-10-11).
|
||
* Everywhere: Replace irqsave() with enter_critical_section(); replace
|
||
irqrestore() with leave_critical_section(). This is part of the onging
|
||
development of SMP support (2016-02-13).
|
||
* Conform to naming convention: Rename irqsave() to up_irq_save(); rename
|
||
irqrestore() to up_irq_restore(). These should no longer be used. If
|
||
your code still uses them, please switch to enter_critical_section()
|
||
and leave_critical_section() (2016-02-14).
|
||
* Also rename irqdisable() and irqenable() to up_irq_disable() and
|
||
up_irq_enable() (2016-02-14).
|
||
* sched/signal and include/nuttx/sched.h: Move the list of signal
|
||
actions from the TCB to the group structure. Signal handlers are not
|
||
per thread but, rather, per task group. I know, I preferred it the
|
||
other way too, but this is more compliant with POSIX (2016-02-18).
|
||
* fs/ procfs/fs_procfsproc.c: Add support for showing CPU if SMP is
|
||
enabled (2016-02-19).
|
||
* include/pthread.h, sched.h, sys/types.h and other files: Rename
|
||
cpuset_t to cpu_set_t which is the type used in some non-standard
|
||
Linux/GNU interfaces. Move definitions of cpu_set_t to include/sys/types.h.
|
||
Add prototypes for sched_setaffinity(), sched_getaffinity(),
|
||
pthread_attr_setaffinity_np(), pthread_attr_getaffinity_np(),
|
||
pthread_setaffinity_np(), and pthread_getaffinity_np(). No implementation
|
||
is yet in place (2016-02-19).
|
||
* sched/sched_cpuselect.c, include/nuttx/sched.h, and other files. Add
|
||
a CPU affinity set to the TCB if SMP is enabled and use this CPU set as
|
||
a mask for determining which CPUs the thread may run on (2016-02-19).
|
||
* libc/pthread, sched/pthread/pthread_start.c, and include/pthread.h:
|
||
Add an affinity field to the attrributes to permit controlling
|
||
which CPUs a pthread may run on. Implements pthread_att_setaffinity_np()
|
||
and pthread_attr_getaffinity_np() (2016-02-19).
|
||
* sched/pthread: Add pthread_setaffinity() and pthread_getaffinity()
|
||
(2016-02-19).
|
||
* sched/sched: Add sched_setaffinity() and sched_getaffinity() (2016-02-19).
|
||
* drivers/leds/rgbled.c: Add a driver to manage a RGB LED via PWM. From
|
||
Alan Carvalho de Assis (2016-02-22).
|
||
* arch/arm/src/stm32f4discovery: Add PWM support for the onboard RGB LED
|
||
From Alan Carvalho de Assis (2016-02-22).
|
||
* arch/arm/src/samv7: HSMCI driver can now be configured to handle unaligned
|
||
data buffers (2016-02-22).
|
||
* fs/fat: Add an option to force all transfers to be performed indirectly
|
||
using the FAT file system's internal sector buffers (2016-02-22).
|
||
* drivers/wireless/ieee802154: New directory. Nothing there yet (2016-02-25).
|
||
* wireless/: New top level directory. Nothing there yet (2015-02-26).
|
||
* wireless/ieee802154: Add an new directory to the build. Nothing there
|
||
yet (2016-02-26).
|
||
* include/nuttx/wireless/ieee802154: Add directory (and dummy header file)
|
||
(2016-02-16).
|
||
* arch/arm/include and src: Rename the imx directories to imx1 to make room
|
||
in the namespace for other members of the i.MX family (2016-02-27).
|
||
* arch/arm/include/imx6 and src/imx6: Evolving support for the NXP/Freescale
|
||
i.MX6Q (2016-02-28).
|
||
* configs/sabre-6quad: Placeholder that will eventually become board support
|
||
for the NXP/Freescale Sabre 6Quad board (2016-02-28).
|
||
* arch/arm/src/stm32: Support for STM32F46xx from Paul Alexander Patience
|
||
* sched/semaphore/sem_reset.c and include/nuttx/semaphore.h: Add an internal,
|
||
non-standard interface to reset a semaphore count. This is sometimes
|
||
needed by drivers in order to recover from error conditions (2016-03-05)
|
||
* AT24xx driver: Correct missing address calculation logic. From Frank
|
||
Benkert (2016-03-08).
|
||
* arch/ renaming: current_regs renamed to g_current_regs in all
|
||
architectures. For ARM which is slowly developing SMP capability,
|
||
g_current_regs is now an array of dimension 1 in most case but of higher
|
||
dimension of the architecuture supports multiple CPUs (2016-03-09).
|
||
* MTD: Increase block size in mtd_geometry_s to 32-bits (2016-03-09).
|
||
* include/nuttx/clock.h: Missing parenteses in MSEC2TICK macro can
|
||
cause wrong calculations. From Stefan Kolb (2016-03-09).
|
||
* Build system: Added a 'make olddefconfig' target that will refresh
|
||
a .config file without interaction. tools/refesh.sh now has a --silent
|
||
option so that it can be used in batch modes without human input
|
||
(2016-03-09).
|
||
* tools/testbuild.sh: .config files were not being updated because (a)
|
||
kconfig-conf was being called in the wrong directory and (b) apps/Kconfig
|
||
had not yet been created. Now uses 'make olddefconfig' (2016-03-09).
|
||
* arch/arm/src/stm32l4 and include/stm32l4: Add support for the STM32L4
|
||
family. From Sebastien Lorquet (2016-03-10).
|
||
* configs/nucleo-l476: Add support for the Nucleo-L476 board. From
|
||
Sebastien Lorquet (2016-03-10).
|
||
* sched/tls and include/nuttx/tls.h: Basic definitions needed to support
|
||
thread local storage (TLS). Not used anywhere yet (and may not be used
|
||
in the near future either) (2016-03-10).
|
||
* sched/sched_note.c and include/nuttx/sched_note.c: Add a configuration
|
||
option to buffer RTOS instrumentation data in an in-memory buffer
|
||
(2016-03-17).
|
||
* drivers/syslog/note_driver.c: Add a character driver that will allow
|
||
an application to read buffered scheduler instrumentation data (2016-03-17).
|
||
* arch/arm/src/samv7/sam_usbdevhs.c: The USB driver has had some issue that
|
||
would occasionally cause loss of packets. Back last December, a fix was
|
||
put in for this but the fix apparently worsens the problem; now causing
|
||
hangs. The basic problem is that the number of busy banks (NBUSYBKS)
|
||
status is not real time but is delayed. This was fixed; now when the DMA
|
||
completes and NBUSYBKS > 0, the NBUSYBK is interrupt is enabled and the
|
||
operations are deferred until NBUSYBKS is truly zero (2016-03-17).
|
||
* net/tcp/tcp_timer.c: Fix some logic when there are multiple network
|
||
interfaces. In this case, TCP timeout events can really only being
|
||
processed when the poll from the correct device is received (2016-03-20).
|
||
* sched/wqueue/kwork_signal.c: Fix logic to find an IDLE worker thread;
|
||
the test for busy was backward. From Linfei Chen (2016-03-22).
|
||
* include/sys/boardctl.h, configs/boardctl.c, and many configurations: Add
|
||
boardctl() support that will permit applications to control USB devices
|
||
(2016-03-25).
|
||
* configs/stm32l476vg-disco: Add support for the STM32L476VG Discovery
|
||
board. From Dave (2016-03-25).
|
||
|
||
7.16 2016-06-01 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* PM: Add activity domain to all PM interfaces and driver callbacks. If
|
||
CONFIG_PM_NDOMAINS == 1, then the legacy behavior is preserved. If
|
||
CONFIG_PM_NDOMAINS > 1, then multiple PM domains are supported. This
|
||
will allow separate control for certain power management groups. For
|
||
example, a network can be shut down without affect an ongoing UI (and
|
||
vice versa) (2016-03-27).
|
||
* apps/configs/vsn: Removed the VSN configuration from the main NuttX
|
||
repository. The VSN can still be found in the Obsoleted repository
|
||
(along with a full explanation in the README file there) (2016-03-29).
|
||
* arch/arm/src/armv7-m and stm32: Add support for the IAR toolchain for
|
||
the limited case of the ARMv7-M architecture and the STM32 chip. From
|
||
Aleksandr Vyhovanec (2016-04-02).
|
||
* arch/arm/src/stm32/stm32f40xxx_rtc.c: Add a custom RTC driver. From
|
||
Neil Hancock (2016-04-02).
|
||
* include/nuttx/timer/rtc.h and drivers/timers/rtc.c: Simplify the RTC
|
||
interface. The old interface was way to complex and was not fully
|
||
implemented anywhere (2016-04-02).
|
||
* Moved NuttX repository to https://bitbucket.org/nuttx/nuttx (2016-04-06).
|
||
* arch/arm/src/armv7-m/iar: Convert more assembly language files for
|
||
use with the IAR toolchain. From Kha Vo (2016-04-08)
|
||
* Fix miscellaneous build issues for the IAR compiler. From Kha Vo
|
||
(2016-04-08).
|
||
* tools/ide_exporter.py: IDE exported Python script for use with the
|
||
IAR toolchain. From Kha Vo (2016-04-08).
|
||
* STM3220G-EVAL: Add support for both the IAR and uVision GCC IDEs
|
||
From Kha Vo (2016-04-08).
|
||
* STM32F429I Discovery: Add support for the uVision GCC IDE. From
|
||
Kha Vo (2016-04-08).
|
||
* libc/signal and include/signal.h: Rename sigset() to signal().
|
||
sigset() is the System V function; signal() is the obsoleted POSIX
|
||
name. These seem to be equivalent. Neither are relevant in modern
|
||
POSIX programming but the name signal() probably has the better
|
||
credentials. sigset() is now relegated to a #define in signal.h that
|
||
makes it equivalent to signal() (2016-04-10).
|
||
* configs/nucleus2g: Removed the Nucleus2G configuration. There has
|
||
not been any activity with the commercial board in a few years and it
|
||
no longer appears to be available from the 2g-eng.com website.
|
||
Since the board is commercial and no longer publicly available, it
|
||
no longer qualifies for inclusion in the open source repositories.
|
||
The code as of this data is still available in the Obsoleted
|
||
repository at configs/nucleus2g (2016-04-12).
|
||
* arch/arm/src/stm32l4: Fix the STM32L4 SPI driver. That SPI driver is
|
||
quite different. They now handle frames of arbitrary size between 4
|
||
and 16 bits. It was broken before a new bit has to be set (RX fifo
|
||
threshold) to handle <= 8-bit transactions. If not set, the default is
|
||
16-bit packed >=8-bit frames and the RXNE bit is never set (it is set
|
||
when 16-bits are received). weird things as always.
|
||
This also add 8-bit access routines to the data register, because a
|
||
16-bit access to the data register when the frame size is below 9 bits
|
||
is interpreted as a packed dual frame exchange. Sebastien Lorquet
|
||
(2016-04-13).
|
||
* net/sockets/listen.c and accept.c and include/nuttx/net: Separate
|
||
out psock_listen() and psock_accept() for internal OS usage
|
||
(2016-04-14).
|
||
* fs/inode/, fs/vfs/, and sched/task/: File and socket descriptors are
|
||
no longer allocated for kernel threads. They must use SYSLOG for
|
||
output and the low-level psock interfaces for network I/O. This
|
||
saves a little memory which might be important for small footprint
|
||
configurations (2015-04-14).
|
||
* Framebuffer driver: Add a display number to each interface in order
|
||
to support multiple display devices (2015-04-14).
|
||
* drivers/wireless/nrf24l01.c: Fix backward calculation of relative
|
||
frequency. Noted by Henry Zhang (2015-04-15).
|
||
* drivers/sensors/h1750fvi.c: Add a character driver for Rohm Ambient
|
||
Light Sensor BH1750FVI. From Alan Carvalho de Assis (2016-04-15).
|
||
* configs/stm32f4discovery: Integrate BH1750FVI driver in the
|
||
STM32F4Discovery board. From Alan Carvalho de Assis (2016-04-15).
|
||
* drivers/mtd: Add MTD support for Micron N25Qxxx family of QSPI flash.
|
||
From Dave dev@ziggurat29.com (2016-04-17).
|
||
* arch/arm/src/stm32l: Add a QSPI driver. From Dave dev@ziggurat29.com
|
||
(2016-04-18).
|
||
* configs/stm32l476vb-disco: Add support for QSPI based N25Qxxx flash.
|
||
From Dave dev@ziggurat29.com (2016-04-18).
|
||
* graphics/vnc: Add support for a VNC server. This logic is code
|
||
complete, but untested and so not ready for prime time (2016-04-18).
|
||
* configs/samv71-xult/vnc: Add a configuration that will be used to
|
||
verify VNC (also untested) (2016-04-18).
|
||
* drivers/ioexpander: Fix an error in the PCA9555 driver: Under certain
|
||
error conditions, interrupts were not being re-enabled. Sebastien
|
||
Lorquet (2016-04-20).
|
||
* arch/arm/src/stm32 and configs/stm32f429i-disco: Correct some bad
|
||
commits that broke the LTDC display example. From Marco Krahl
|
||
(2016-04-22).
|
||
* configs/samv71-xult/vncwwm: Add a more complex NxWM configuration
|
||
to support further VNC testing (particularly of VNC keyboard and
|
||
mouse inputs). Initial configuration is not functional (2016-04-23).
|
||
* arch/arm/src/stm32l4: Add support for QSPI DMA. From Dave
|
||
dev@ziggurat29.com (2016-04-24).
|
||
* configs/stm32l476vg-disco: Update stm32l4 disco board to reflect QSPI
|
||
DMA support. From Dave dev@ziggurat29.com (2016-04-24).
|
||
* arch/arm/src/stm32l4: Add configuration options to allow SRAM2 to be
|
||
used for heap, or not at all, and to zero-initialize it on OS start,
|
||
or not at all. From Dave dev@ziggurat29.com (2016-04-24).
|
||
* drivers/mtd/smart.c: Return code of smart_scan not checked, can
|
||
cause success result in failure case, leading to 'dev' pointer being
|
||
invalid. From Dave dev@ziggurat29.com (2016-04-27).
|
||
* arch/arm/src/stm32l4: Add support for QSPI memory mapped mode. From
|
||
Dave dev@ziggurat29.com (2016-04-27).
|
||
* configs/stm32l476vg-disco: Add board ioctls for allowing user
|
||
application to cause QSPI memory mapped mode to be engaged and
|
||
disengaged. Also partitioned QSPI flash for file system and other
|
||
(eventually xip). From Dave dev@ziggurat29.com (2016-04-27).
|
||
* fs/mount: Fix a backward debug assertion. Noted by David Sidrane
|
||
(2016-04-29).
|
||
* arch/arm/src/stm32l4: Add support for HSE and MSI clocks, and auto
|
||
trim of MSI to LSE (needed for USB). From Dave dev@ziggurat29.com
|
||
(2016-04-29).
|
||
* arch/arm/src/stm32l4: Add support for unique id function to arch;
|
||
modified board to support unique id boardctl. From Dave
|
||
dev@ziggurat29.com (2016-05-03).
|
||
* Makefile.unix and tools/mkexport.sh: Pass top-level make to the
|
||
script to allow -j greater than 1. From David Sidrane (2016-05-04).
|
||
* arch/arm/src/stm32, stm32f7, stm32l4: Fix typo in variable name in
|
||
serial BREAK logic. Review other serial implementations for similar
|
||
naming problems. (2016-05-05).
|
||
* arch/arm/src/samv7: Fix typo in MATRIX register definitions. From
|
||
Stefan Kolb (2016-05-06).
|
||
* arch/arm/src/stm32l4: Problem with resetting backup domain clears
|
||
clocking options set up before in *rcc.c use INITS flag to avoid magic
|
||
reg value to detect power up reset state of RTC correct a problem
|
||
clearing interrupt flags (they weren't) which prevented an alarm from
|
||
ever being used more than once per reset cycle. From Dave
|
||
dev@ziggurat29.com (2016-05-07).
|
||
* arch/arm/src/tiva: Fix a bug of GPIO falling-edge interrupt for tiva.
|
||
From Young (2016-05-07).
|
||
* drivrs/mtd: Add a driver for SST26F spi/qspi flash devices (SPI mode
|
||
only). From Sebastien Lorquet (2016-05-10).
|
||
* Several Makefiles: Add .PHONY definitions to prevent 'clean up to date'
|
||
message weirdness when 'make clean' is done with no .config or Make.defs
|
||
file (2016-05-10).
|
||
* include/nuttx/can.h and drivers/can.c: Improve CAN error reporting.
|
||
From Frank Benkert (2016-05-11).
|
||
* fs/Kconfig: Allow CONFIG_FS_WRITABLE to be manually selectable
|
||
(2016-05-11).
|
||
* Various file: Search for places where a stray semicolon following an
|
||
if condition cause the if body to be executed unconditionally. Fixes
|
||
in all SAM DMA logic, unionfs, OS signalling logic,
|
||
* configs/nucleo-144: Basic port for the Nucleo-144 board with the
|
||
STM32F746ZG MCU. From Kconstantin Berezenko (2015-05-12).
|
||
* arch/arm-src/armv7-a: Complete re-design of logic to initialize each
|
||
CPUn, n > 0, when CONFIG_SMP=y (2016-05-13).
|
||
* arch/arm/src/imx6 and configs/sabre-6quad: The basic i.MX6 port is
|
||
complete. This is a very minimal port at present and probably still
|
||
has some as-of-yet-undiscovered issues (2016-05-17).
|
||
* arch/*/Makefile: Add definitions that can be overrided to use GCC
|
||
instead of LD in the final link. From Paul Alexander Patience
|
||
(2016-05-18) .
|
||
* arch/arm/src/stm32, stm32l4, and stm32f7 serial: Add support for
|
||
compliant BSD-style breaks. From David Sidrane (2016-05-18).
|
||
* enter/leave_critical_section() may attempt to access task lists before
|
||
they have been initialized in the SMP configuration (2016-05-18).
|
||
* configs/stm32f103-minimum: Add support for this minimual STM32F103CBT6
|
||
"blue" board. From Alan Carvalho de Assis (2016-05-18).
|
||
* arch/arm/src/sam* Watchdogs: Rename up_wdginitialize() to something
|
||
more appropriate for an internal, MCU-specific function (2016-05-18).
|
||
* configs/*/src/*_watchdog.c: Remove all implementations of
|
||
up_wdginitialize() which was only used by apps/examples/watchdog.
|
||
That internal OS function is no longer called from application code.
|
||
If you want to use the watchdog example, you will need to configure
|
||
the watchdog driver by calling the appropriate, MCU-specific driver
|
||
configuration function from your board initialization logic
|
||
(2016-05-18).
|
||
* arch/srm/src/stm32l4: Add CAN support for STM32L4. From Sebastien
|
||
Lorquet (2016-05-19).
|
||
* arch/arm/src/samv7: Adds a JTAG config and ERASE config to Kconfig to
|
||
set the CCFG_SYSIO SYSIO Pins. From David Sidrane (2016-05-19).
|
||
* arch/sim/src: Enhance networking support for the simulation under Linux.
|
||
Includes updated support for Linux TUN/TAP, and the addition of support
|
||
for Linux bridge devices. From Steve (2016-05-20).
|
||
* configs/stm32f411e-disco: Add basic configuration for stm32f411e-disco
|
||
board with STM32F411VE chip. From Konstantin Berezenko (2016-05-20).
|
||
* i.MX6 Sabre-6Quad: Basic SMP NSH configuration is now working. But
|
||
this is probably only because the SMP NSH case does not stress the
|
||
logic. There are know outstanding SMP issues as noted in the
|
||
Sabre-6Quad README.txt file (2016-05-22).
|
||
* configs/sabre-6quad: Add an SMP configuration; Enable procfs in all
|
||
configurations (2016-05-22).
|
||
* include/nuttx/crypto/aes.h: Modifications to the crypto API needed
|
||
for LPC43xx. From Alexander Vasiljev (2016-05-23).
|
||
* arch/arm/src/lpc43xx: Add AES support. From Alexander Vasiljev
|
||
(2016-05-24).
|
||
* configs/*/src/tiva_timer.c: Tiva boards: Fix a naming collision,
|
||
rename board-specific function from tiva_timer_initialize() to
|
||
tiva_timer_configure() to remove conflict (2016-05-23).
|
||
* arch/arm/src/sam*: Ensure that the TWIHS (i2c) hw get's its clock
|
||
set when the sequence of sam_i2cbus_initialize(),
|
||
sam_i2cbus_uninitialize(), then sam_i2cbus_initialize() or twi_reset()
|
||
is called. I found this a while back in the stm32 family, so there
|
||
may be more arch-es with this sort of bug. I suppose any driver that
|
||
has the notion of "do not set the freq if it is already set" could be
|
||
suspect. From David Sidrane (2016-05-23).
|
||
* arch/arm/src/samv7: Add the up_systemreset interface to the samv7
|
||
arch. The approach is slightly different in that: 1) It enables
|
||
ARCH_HAVE_RESET and allows the user to set if, and for how long, to
|
||
drive External nRST signal. It also does not contain a default
|
||
board_reset, as that really should be done in the config's src if
|
||
CONFIG_BOARDCTL_RESET is defined. From David Sidrane (2016-05-23).
|
||
* arch/arm/include/lpc43xx and src/lpc43xx: Adds definitions for the
|
||
LPC4337jet100 chip. From Alexander Vasiljev (2016-05-24).
|
||
* Many files: board_app_initialize() now accepts an argument that may
|
||
be used to support initialization in different configurations
|
||
(2016-05-24).
|
||
* arch/arm/src/samv7: Remove disabling of whole USB on suspend of USBHS.
|
||
This fix removes the disabling of the whole USB peripheral on suspend
|
||
interrupt. Its enough to freeze the clock instead. When disabling the
|
||
whole peripheral, the next wakeup-interrupt comes up with an disabled
|
||
clocking. The unfreeze clock has no effect, because the master clock
|
||
is disabled. This makes all registers, including the IDR unwriteable
|
||
and the IRQ falls in an endless loop blocking the whole system.
|
||
Furthermore the disabling of the peripheral clock prevents hotplugging
|
||
or reconnecting the USB. From Frank Benkert (2015-05-25).
|
||
* drivers/lcd: Add support for PCF8574 LCD Backpack driver. This driver
|
||
supports an interface board that is based on the PCF8574 io expander
|
||
and supports the HD44780-based (or compatible) LCD modules. There
|
||
are a myriad of different vendors of such, but they are principally
|
||
the same, save wiring and minor features like jumpers for I2C
|
||
addresses. This driver supports known and unknown variants. From
|
||
Dave (ziggurat29, 2013-6-26).
|
||
* arch/arm/stm32: Add support for a custom 1-wire driver. The serial
|
||
driver already supports a 1-wire interface, but this driver uses the
|
||
same serial logic to implement a lower half driver much like the I2C
|
||
lower half driver. From Aleksandr Vyhovanec (2015-05-25).
|
||
* fs/: Add logic to detach a file structure from a file descriptor.
|
||
This is for use only within the OS. It permits an open file or driver
|
||
to be used across multiple threads (2016-05-26).
|
||
* arch/arm/src/stm32l4: Get I2C working for STM32L4. From Dave
|
||
(ziggurat29) (2016-05-25).
|
||
* fs/ and include/nuttx/fs: Add logic to detach a file structure from a
|
||
file descriptor. This is for use only within the OS. It permits an
|
||
open file or driver to be used across multiple threads. (2016-05-26).
|
||
* drivers/analog/adc.c, include/nuttx/analog/adc.h, and all ADC lower
|
||
half drivers: No longer uses global adc_receive() call. Added a new
|
||
bind() method to the ADC interface. Now the ADC upper half driver
|
||
will register its receipt-of-data callback. This change allows the
|
||
ADC lower half driver to be used with a differ ADC upper half
|
||
(2016-05-26).
|
||
* drivers/analog/ads1255.c: Must not do SPI access from interrupt
|
||
handler. Use the worker thread instead. Must also lock the SPI bus
|
||
before using it. (2015-05-26).
|
||
* drivers/: Several SPI-based drivers modified. All drivers that use
|
||
SPI must call SPI_LOCK and SPI_UNLOCK. This is not optional
|
||
(2016-05-26).
|
||
* drivers/sensors: Fix a bug in crc computation for ms583730.
|
||
Implement POSIX read (2016-05-27).
|
||
* arch/arm/src/samv7: This is a fix to a problem in the handling of the
|
||
oneshot timer. Due to a wrong assumption concerning the behavior
|
||
directly after the start of the timer/counter the function
|
||
sam_oneshot_cancel(…) calculates the wrong remaining time. The code
|
||
assumes that the counter register is zero directly after the start of
|
||
the timer, but this is not true. To start the time/counter a software
|
||
trigger is invoked, this trigger starts the timer/count and sets the
|
||
counter register to zero, but the reset of the counter register is not
|
||
performed instantly. According to the datasheet: "The counter can be
|
||
reset by a trigger. In this case, the counter value passes to zero on
|
||
the next valid edge of the selected clock." Thus the counter is set to
|
||
zero between 0 and USEC_PER_TICK microseconds after the clock was
|
||
started.
|
||
In my fix I use the freerun count value to determine if at least one
|
||
tick passed since the start of the timer and thus if the value of the
|
||
oneshot counter is correct. I also tried to use the function
|
||
up_timer_gettime(…) to achieve this but, at least if compiled with no
|
||
optimization the problem vanishes without using the value of the
|
||
function, the function call takes too long.
|
||
Another problem treated in the fix is that if the oneshot timer/counter
|
||
is canceled, we only know the remaining time with a precision of
|
||
USEC_PER_TICK microseconds. This means the calculated remaining time
|
||
is between 0 and USEC_PER_TICK microseconds too long. To fix this I
|
||
subtract one tick if the calculated remaining time is greater than one
|
||
tick and otherwise set the remaining time to zero. By doing so the
|
||
measured times are much more precise as without it. From Stefan Kolb
|
||
(2016-05-27).
|
||
* arch/arm/src/sama5: Stefan Kolb's change to the SAMV7 Oneshot Timer
|
||
should also be applied to the SAMA5 oneshot time since the drivers are
|
||
identical (2016-05-27).
|
||
* arch/arm/src/stm32l4: Add support for SPI 4 and 5 on stm32f411 chips.
|
||
From Konstantin Berezenko (2016-05-27).
|
||
* arch/arm/src/sam34: Stefan Kolb's change to the SAMV7 Oneshot Timer
|
||
should also be applied to the SAM3/4 oneshot time since the drivers
|
||
are identical (2016-05-29).
|
||
* arch/arm/src/stm32: Allow to not use all channel in a lower part of
|
||
PWM. From Pierre-noel Bouteville (2016-05-30).
|
||
* libc/math: Add a NAN test on 'x' in asin function of lib_asin.c.
|
||
Suggested by Pierre-noel Bouteville (2016-05-31).
|
||
* arch/arm/src/stm32: Fix logic in F4 RTCC driver that prevent ALARM
|
||
interrupt. From Neil Hancock (2016-05-31).
|
||
* arch/arm/src/stm32: Fix STM32 ValueLine ADC IRQ number selection.
|
||
From David Sidrane (2016-05-31).
|
||
* arch/arm/src/samv7: Fix missing unlock of device in MCAN
|
||
mcan_txempty(). From Frank Benkert (2016-06-01).
|
||
|
||
7.17 2016-07-25 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/mtd/flash_eraseall.c: Removed. This is no longer used
|
||
in the OS and is simply a wrapper around the MDIOC_BULKERASE
|
||
IOCTL command. It used to be called (only) from
|
||
apps/system/flash_eraseall, but that has been removed because it
|
||
violated the OS/application interface -- by calling flash_eraseall().
|
||
The old code can be found in the Obsoleted' repository (and a revised
|
||
version can be found at apps/fsutils/flash_eraseall) (2016-06-03).
|
||
* arch/arm/src/stm32: STM32 Timer Driver: Change calculation of per-
|
||
timer pre-scaler value. Add support for all timers (2016-6-03)
|
||
* drivers/lcd: Correct conditional compilation in ST7565 driver. From
|
||
Pierre-noel Bouteville (2016-6-03)
|
||
* arch/arm/src/stm32: Correct conditional compilation in STM32 timer
|
||
capture logic. From Pierre-noel Bouteville (2016-6-03)
|
||
* arch/arm/src/efm32: Fix EFM32 FLASH conditional compilation. From
|
||
Pierre-noel Bouteville (2016-6-03)
|
||
* arch/arm/src/lpc43xx: Fix errors in GPIO interrupt logic. From v01d
|
||
(phreakuencies) (2016-06-04)
|
||
* arch/arm/src/kl and lpc11xx: rename xyz_lowputc to up_putc. Remove
|
||
all references to up_lowputc, everywhere (2016-06-04).
|
||
* configs/stm32f103-minimum: Add minnsh configuration. From Alan
|
||
Carvalho de Assis (2016-06-04).
|
||
* arch/arm/src/stm32: Add the up_getc() function to STM32 in order to
|
||
support the minnsh configuration. From Alan Carvalho de Assis
|
||
(2016-06-04).
|
||
* include/sys/boardctl.h: Needs to be usable with C++ files (2016-06-05).
|
||
* tools/tesbuild.sh will now build NxWM configurations (2016-06-05).
|
||
* arch/arm/src/stm32: In PWM driver, just update duty if frequency is
|
||
not changed and PSM started. This removeis glitch or blinking when
|
||
only duty is frequently changed. From Pierre-noel Bouteville (2016-06-05).
|
||
* arch/arm/src/kinetis: Add a USB device controller driver. Derived from
|
||
the pic32mx usb driver, which uses the same usb controller. From kfazz
|
||
(2016-06).
|
||
* configs/teensy-3.x: Add USB support and a usbnsh configuration. From
|
||
kfazz (2016-06).
|
||
* arch/arm/src/stm32: Add support for the STM32F105R. From Konstantin
|
||
Berezenko (2016-06-06).
|
||
* include/signal.h: Change type of SIG_ERR, SIG_IGN, ... to
|
||
_sa_handler_t. The type void does not work with the IAR toolchain.
|
||
From Aleksandr Vyhovanec (2016-06-07).
|
||
* configs/nucleo-144: Refactored configs/nucleo-144 sub-directories to
|
||
support additional nucleo-144 board. Add support for the Nucleo-F767ZI
|
||
board. From David Sidrane (2016-06-07).
|
||
* arch/arm/src/stm32f7 and include/stm32f7: Added STM32F76xxx and
|
||
STM32F77xx families. From David Sidrane (2016-06-08).
|
||
* Refactoring configs/nucleo-144 sub-directories to support additional
|
||
nucleo-144 board. Add support for the Nucleo-F767ZI board. From David
|
||
Sidrane (2016-06-08).
|
||
* include/assert.h: Check if NDEBUG is defined. From Paul Alexander
|
||
Patience (2016-06-08).
|
||
* arch/arm/src/stm32: Fix STM32 DMA code and configuration for STM32F37X
|
||
chips. From Marten Svanfeldt (2016-06-08).
|
||
* drivers/mtd: Add a driver of IS25xP SPI flash devices. From Marten
|
||
Svanfeldt (2016-06-09).
|
||
* arch/arm/src/Kconfig and configs/teensy-3.x: Teensy clock fixes. The
|
||
High Gain bit in MCG_C1 was preventing teensy from booting except
|
||
after a programming session. The second change doesn't appear to
|
||
change any functionality, but complies with restrictions in the k20
|
||
family reference manual on FEI -> FBE clock transiions. From kfazz
|
||
(2016-06-09).
|
||
* configs/*/include/board.h: Fix timer input clock definitions. From
|
||
David Sidrane (2016-06-09).
|
||
* Networking: In both IPv6 and IPv4 incoming logic: (1) Should check
|
||
if the packet size is large enough before trying to access the packet
|
||
length in the IP header. (2) In the comparison between the IP length
|
||
and the full packet length, need to subtract the size of the link
|
||
layer header before making the comparison or we will get false
|
||
positives (i.e., the packet is really too small) (2016-06-09)
|
||
* configs/: All configurations that have both CONFIG_NSH_LIBRARY=y and
|
||
CONFIG_NET=y must now also have CONFIG_NSH_NETINIT=y (2016-06-09).
|
||
* arch/arm/src/kinetis: Kinetis pwm support, based on kl_pwm driver.
|
||
From kfazz (2016-06-09).
|
||
* arch/srm/src/stm32: Fix compilation errors in debug mode of
|
||
stm32_pwm.c. From Konstantin Berezenko (2016-06-09).
|
||
* arch/arm/src/kinetis: Support up to 8 channels per timer. From kfazz
|
||
(2016-06-09).
|
||
* lib/: crc16: fix error. From Paul Alexander Patience (2016-06-10).
|
||
* lib/: Add crc64 support. From Paul Alexander Patience (2016-06-10).
|
||
* arch/arm/src/kinetis: Added kl_dumpgpio functionality as
|
||
kinetis_pindump. From kfazz (2016-06-10).
|
||
* arch/arm/src/sam34: Fix some errors in AFEC header file. From
|
||
OrbitalFox (2016-06-10).
|
||
* arch/arm/include/stm32: Correct the can2 rx irq number for stm32f10xx
|
||
chips. From Konstantin Berezenko (2016-06-10).
|
||
* drivers/include/input: Button upper half driver: Add definitions
|
||
needed for compilation with the poll() interface is not disabled
|
||
(2016-06-11).
|
||
* Kconfig/, include/debug.h, and many other files: (1) Debug features
|
||
are now enabled separately from debug output. CONFIG_DEBUG is gone.
|
||
It is replaced with CONFIG_DEBUG_FEATURES. (2) The macros dbg() and
|
||
vdbg() have renamed as err() and info(), respectively. This also
|
||
applies to all of the variants as well, lldbg(), llvdbg(), XXdbg(),
|
||
XXvdbg(), XXlldbg(), and XXllvdbg(). (3) Add a new debug level,
|
||
warn() (and all variants vwarn(), llwarn(), etc.). (4) Debug
|
||
assertions can now be enabled separately from debug output. (5) You
|
||
can now enable subsystem/device driver debug output at different
|
||
output levels. For example, CONFIG_DEBUG_FS no longer enables file
|
||
system debug output. It enables general file system debug logic and
|
||
enables selection of CONFIG_DEBUG_FS_ERROR, CONFIG_DEBUG_FS_WARN,
|
||
and CONFIG_DEBUG_FS_INFO (2016-06-12).
|
||
* strtoul() and strtoull(): Fix errno settings required by function
|
||
definition. Resolved Bitbucket Issue #1. From Sebastien Lorquet
|
||
(2016-06-13)
|
||
* arch/arm/src/stm32f7: Add SPI driver. DMA not yet supported. From
|
||
David Sidrane (2016-06-14).
|
||
* configs/nucleo-144: Add test for STM32 F7 SPI. From David Sidrane
|
||
(2016-06-14).
|
||
* alert(): New debug macro: alert(). This is high priority,
|
||
unconditional output and is used to simplify and stanardize crash
|
||
error reporting(2016-06-14).
|
||
* arch/arm/src/tiva: Bug Fix in tiva_serial.c - UART5, UART6 and UART7
|
||
were not being configured as TTYS0 for printing over serial console.
|
||
From Shirshak Sengupta (2016-06-14).
|
||
* SAMV7: SPI: SPI-Freq. 40MHz; VARSELECT; hw-features
|
||
This change adds the following improvements:
|
||
- Increase the allowed SPI-Frequency from 20 to 40 MHz.
|
||
- Correct and rename the "VARSELECT" option
|
||
This option was included in the code as "CONFIG_SPI_VARSELECT" but
|
||
nowhere defined in a Kconfig file. The change renames it to
|
||
"CONFIG_SAMV7_SPI_VARSELECT" and corrects the implementation
|
||
according the datasheet of Atmel. In short, this option switches
|
||
the processor from "fixed peripheral selection" (single device) to
|
||
"variable peripheral selection" (multiple devices on the bus).
|
||
- Add a new Function to the interface to control the timing and delays
|
||
of the chip according the ChipSelect lines. This function can
|
||
control the delay between the assertion of the ChipSelect and the
|
||
first bit, between the last bit and the de-assertion of the
|
||
ChipSelect and between two ChipSelects. This is needed to tune the
|
||
transfer according the specification of the connected devices.
|
||
- Add three "hw-features" for the SAMV7, which controls the behavior
|
||
of the ChipSelect:
|
||
- force CS inactive after transfer: this forces a (short)
|
||
de-assertion of the CS after a transfer, even if more data is
|
||
available in time
|
||
- force CS active after transfer: this forces the CS to stay active
|
||
after a transfer, even if the chip runs out of data.
|
||
Btw.: this is a prerequisit to make the LASTXFER bit working at all.
|
||
- escape LASTXFER: this suppresses the LASTXFER bit at the end of the
|
||
next transfer. The "escape"-Flag is reset automatically.
|
||
From Frank Benkert (2016-06-14)
|
||
* Many CONFIG_DEBUG_* options did not have matching macros defined in
|
||
include/debug.h. Rather, there were various definitions scattered
|
||
throughout the sourse tree. These were collected together and
|
||
centralized with single macro definitions in include/debug.h
|
||
(2016-06-15)
|
||
* STM32F7: Add SPI, I2C, and ADC drivers. From Lok Tep (2016-06-15).
|
||
* err(), warn(), info(), and alert() renamed to include leading '_'.
|
||
This was done to avoid some naming collisions (2-06-16
|
||
* STM32: Move backup domain reset to to earlier in the initialization
|
||
sequence (stm32_rcc.c() in order to avoid disabling LSE during RTC
|
||
initialiation. From Alan Carvalho de Assis (2016-06-16).
|
||
* SYSLOG: syslog() will now automatically redirect output to lowsyslog()
|
||
if called from an interrupt handler (2016-06-16).
|
||
* STM32: When configuring a GPIO via stm32_configgpio() the function
|
||
will first set the mode to output and then set the initial state of
|
||
the gpio later on. If you have an application with an externaly
|
||
pulled-up pin, this would lead to a glitch on the line that may be
|
||
dangerous in some applications (e.G. Reset Line for other chips,
|
||
etc). This changes sets the output state before configuring the pin
|
||
as an output. From Pascal Speck (2016-06-17).
|
||
* STM32 F7: Apply Pascal Speck's GPIO STM32 change to STM32 L4
|
||
(2016-06-17).
|
||
* STM32 L4: Apply Pascal Speck's GPIO STM32 change to STM32 L4.
|
||
From Sebastien Lorquet (2016-06-17).
|
||
* Review all uses of *err(). These macro family should indicate only
|
||
error conditions. Convert *err() to either *info() or add ERROR:,
|
||
depending on if an error is reported (2016-06-17).
|
||
* STM32F7: Review, correct, and update I2C, SPI, and ADC drivers. From
|
||
David Sidrane (2016-06-17).
|
||
* LPC17 Ethernet: Needs to correctly ignore PHYID2 revision number
|
||
when comparing PHY IDs (2016-06-18).
|
||
* SYSLOG: Consolidate all SYSLOG logic in drivers/syslog. Add an
|
||
abstraction layer that supports: (1) redirection of SYSLOG outpout.
|
||
This is usually so that you can boot with one SYSLOG output but
|
||
transition to another SYSLOG output when the OS has initialialized,
|
||
(2) adds common serialization of interrupt output as a configuration
|
||
option. Without this configuration setting, interrupt level output
|
||
will be asynchronous. And (3) vsyslog is now a system call and is
|
||
usable with other-than-FLAT builds (2016-06-19).
|
||
* TCP Networking: While working with version 7.10 I discovered a
|
||
problem in TCP stack that could be observed on high network load.
|
||
Generally speaking, the problem is that RST flag is set in
|
||
unnecessary case, in which between loss of some TCP packet and its
|
||
proper retransmission, another packets had been successfully sent.
|
||
The scenario is as follows: NuttX did not receive ACK for some
|
||
sent packet, so it has been probably lost somewhere. But before
|
||
its retransmission starts, NuttX is correctly issuing next TCP
|
||
packets, with sequence numbers increasing properly. When the
|
||
retransmission of previously lost packet finally succeeds, tcp_input
|
||
receives the accumulated ACK value, which acknowledges also the
|
||
packets sent in the meantime (i.e. between unsuccessful sending of
|
||
lost packet and its proper retransmission). However, variable unackseq
|
||
is still set to conn->isn + conn->sent, which is truth only if no
|
||
further packets transmission occurred in the meantime. Because of
|
||
incorrect (in such specific case) unackseq value, few lines further
|
||
condition if (ackseq <= unackseq)is not met, and, as a result, we
|
||
are going to reset label. From Jakub Łągwa (2016-06-20).
|
||
* SYSLOG: Remove lowsyslog(), vlowsyslog(), and associated macros
|
||
*llinfo(), *llwarn(), and llerr(). In the redesigned syslog() logic,
|
||
these serve no purpose (2016-06-20).
|
||
* Make system: Need to build the drivers/ directory even it file
|
||
descriptors are not supported. There are things in the drivers/
|
||
directory that are still needed (like SYSLOG logic) (2016-06-20).
|
||
* assert.h: Define static assert for C++ usage. From Paul Alexander
|
||
Patience (2016-06-21).
|
||
* arch/arm/src/stm32l4: Add ioctls to set/get bit timing in stm32l4.
|
||
Add ioctl hooks to allow future management of can id filters. From
|
||
Sebastien Lorquet (2016-06-21).
|
||
* drivers/can.c: Add support for poll. From Paul Alexander Patience
|
||
(2016-06-21).
|
||
* drivers/syslog: Extend SYSLOG logic so that we can send SYSLOG output
|
||
to a file. Not verified on initial commit (2016-06-21).
|
||
* arch/arm/src/stm32l4: Add some CAN mode IOCTL calls. These will be
|
||
useful for device autotest when the application boots. They are
|
||
redundant with the CONFIG_CAN_LOOPBACK option, which can now just be
|
||
interpreted as a default setting. From Sebastien Lorquet (2016-06-22).
|
||
* drivers/syslog: syslog_dev_flush() needs to check if the inode is a
|
||
mountpoint before calling the flush() method. Noted by David Sidrane
|
||
(2016-06-22).
|
||
* arch/arm/src/stm32f7: Adds SDMMC1 for stm32F7 74-75. From Lok Tep
|
||
(2016-06-22).
|
||
* drivers/syslog: SYSLOG character device channel will now expand LF to
|
||
CR-LF. Controllable with a configuration option (2016-06-22).
|
||
* arch/arm/src/stm32l4: Implementation of loopback IOCTLs. From
|
||
Sebastien Lorquet (2016-06-22).
|
||
* Documentation: Add SYSLOG documentation to the porting guide
|
||
(2016-06-22).
|
||
* configs/stm32f746g-disco: Removed knsh configuration it failed to
|
||
refresh (via tools/refresh.sh). I assume that it is a hand-edited
|
||
configuration and, hence, must be removed from the repository
|
||
(2016-06-23).
|
||
* arch/arm/arc/sam34: DAC bugfix: DACC_WPMR_WPKEY_MASK -> DACC_WPMR_WPKEY.
|
||
Timer bugfix: Fix ops check in TCIOC_STOP. From Wolfgang Reissnegge
|
||
(2016-06-23).
|
||
* configs/nucleo-144: Added SDMMC support to Nucleo-144. From David
|
||
Sidrane (2016-06-23).
|
||
* arch/arm/src/stm32: Port STM32L4 CAN IOCTLs to STM32. From Sebastien
|
||
Lorquet (2016-06-24).
|
||
* drivers/ioexpander: Add support for a very simple GPIO driver. It
|
||
supports only pre-conrigured input and output pins and only basic
|
||
input and output operations (2016-06-24).
|
||
* arch/arm/src/lpc43xx: Correct auto-negotiation mode in the LPC43xx
|
||
Ethernet. From Alexander Vasiljev (2016-06-24)
|
||
* arch/arm/src/samv7: TWIHS Driver improved and GPIO-Driver fixed for
|
||
Open-Drain Pins
|
||
- sam_gpioread: Now the actual line level from the pin is read back.
|
||
This is extremely important for Open-Drain Pins, which can be used
|
||
bidirectionally
|
||
- Re-Implemented twi_reset-function and enhanced it so it can be
|
||
called from inside the driver (see next point)
|
||
- Glitch-Filter: Added a configuration option to enable the twi-built-
|
||
in glitch filter
|
||
- Added a "Single Master Mode": In EMC Testing the TWI-Bus got stuck
|
||
because the TWI-Master detected a Multi-Master access (but there is
|
||
no second master). With the option "Single Master" we detect these
|
||
events and automatically trigger a twi_reset. We also do an
|
||
automatic recovery if a slave got stuck (SDA stays low).
|
||
With the above changes I²C-Bus reliability in harsh environments (eg.
|
||
EMC) is greatly improved. The small change in the GPIO-Driver was
|
||
necessary because otherwise you cannot read back the correct line
|
||
status of Open-Drain Outputs and this is needed by the twi_reset
|
||
function. From Michael Spahlinger (2016-06-24)
|
||
* arch/arm/src/stm32f7: BUGFIX:PLLs IS2 and SAI P Calculation. From
|
||
David Sidrane (2016-06-24).
|
||
* arch/arm/src/stm32f7: USB support. From Lok Tep (2016-06-27).
|
||
* configs/olimex-stm32-e407: Add support for Olimex STM32 E407
|
||
board. From Mateusz Szafoni (2016-06-27).
|
||
* drivers/ioexpander: Shadow-Mode: The output- and configuration
|
||
registers of the IO-Expander are held in the microcontrollers memory
|
||
and only written to the IO-Expander. This reduces bus traffic and
|
||
is more error-proof than the normal read-modify-write operation. Retry
|
||
Mode: If enabled and an error occurs while writing to the IO-Expander
|
||
the current transmission is automatically repeated once. From Michael
|
||
Spahlinger (2016-06-27).
|
||
* libc/hex2bin: Move the portable library portion of apps/system/hex2bin
|
||
to nuttx/libc/hex2bin where it can be shared with the OS internals
|
||
(2016-06-27).
|
||
* configs/nucleo-144: Added USB OTG device to Nucleo-144. From David
|
||
Sidrane (2016-06-27).
|
||
* arch/arm/src/stm32l4: STM32 CAN fixes need to be backported to
|
||
STM32L4 as well (2016-06-27).
|
||
* ARM stack check: Fix double fault on IDLE task with stack size = 0.
|
||
From David Sidrane (2016-06-27).
|
||
* configs/nucleo-144: Added bbsram test to Nucleo-144. From David
|
||
Sidrane (2016-06-27).
|
||
* arch/arm/src/stm32f7: Added PWR, RTC, and BBSRAM support for stm32f7.
|
||
From David Sidrane (2016-06-27).
|
||
* Build system: Fixed build of SAMV71-XULT/nsh. With the changes from
|
||
26f7b8c the build process of the default configuration did not succeed
|
||
anymore. From Michael Spahlinger (2016-06-28).
|
||
* sched/semaphore: Need to set errno to EINVAL on errors in sem_post()
|
||
and sem_wait(). From Paul Alexander Patience (2016-06-28).
|
||
* Build system: This change fixes a build problem that only occurs when
|
||
reconfiguring from Linux to Windows or vice-versa. It is a problem
|
||
that was present but not usually experienced until two things happened:
|
||
(1) The pre_config target was added to run before the menconfig
|
||
operation and (2) the context target was added before the pre_config
|
||
target in order to set up the correct symbolic links (in the apps/platform
|
||
directory) needed by the pre_config target.
|
||
But then now if you start with a Linux system and run 'make menuconfig'
|
||
to switch to Linux, the context target will execute first and set up
|
||
POSIX style symbolic links before doing the menuconfig. Then after the
|
||
menuconfig, the make will fail on Windows if you are using a Windows
|
||
native toolchain because that native toolchain cannot follow the Cygwin-
|
||
style symbolic links.
|
||
The fix here is to also execute the clean_context AFTER executing
|
||
menuconfig. A lot more happens now: It used to be that doing 'make
|
||
menuconfig' only did the menuconfig operation. Now it does context,
|
||
pre_config, menuconfig, clean_context. Not nearly as snappy as it used
|
||
to be (2016-06-28).
|
||
* arch/arm/src/efm32, lcp43, stm32, stm32l4: disable interrupts with
|
||
NVIC_IRQ_CLEAR. From Paul Alexander Patience (2016-06-28).
|
||
* arch/arm/src/stm32f7: STMF7xxx RTC: (1) Remove proxy #defines, (2)
|
||
Ensure the LSE(ON) etal are set and remembered in a) A cold start
|
||
(RTC_MAGIC invalid) of the RTC, and b) A warm start (RTC_MAGIC valid)
|
||
of the RTC but a clock change. The change was needed because in bench
|
||
testing a merge of the latest's STM32 53ec3ca (and friends) it became
|
||
apparent that the sequence of operation is wrong in the reset of the
|
||
Backup Domain in the RCC code. PWR is required before the Backup
|
||
Domain can be futzed with. !!!This Code should be tested on STM32 and
|
||
if needed rippled to the STM32 families. From David Sidrane
|
||
(2016-06-28).
|
||
* arch/arm/src/stm32f7: Added STMF7xxx RTC. From David Sidrane
|
||
(2016-06-28).
|
||
* arch/arm/src/stm32: STM32 BBSRAM fixed (and formatted) flags. From
|
||
David Sidrane (2016-06-28).
|
||
* arch/arm/src/stm32f7: STM32F7 BBSRAM fixed (and formatted) flags.
|
||
From David Sidrane (2016-06-28).
|
||
* arch/arm/src/stm32f7: Added STM32F7 DBGMCU. From David Sidrane
|
||
(2016-06-28).
|
||
* arch/arm/src/samv7: SAMV7: CAN Message Filtering fixed: (1) stdfilters
|
||
didn't work because the filter was never enabled (wrong number of bits
|
||
to shift), and (2) Filters were never used because the configuration
|
||
register cannot be written without using the initialization mode.
|
||
Both bugs are fixed by this change. Filtering has been tested with
|
||
both standard and extended identifiers and is now working properly.
|
||
From Michael Spahlinger (2016-06-29).
|
||
* configs/Kconfig and dummy/: Add logic to support custom board
|
||
directories that include a Kconfig file. During the context phase
|
||
of the build, any Kconfig file in the custom board directory is copied
|
||
into configs/dummy, replacing the existing Kconfig file with the
|
||
target Kconfig file (2016-06-29).
|
||
* arch/arm/src/stm32l4: Port support for both RX FIFOs from STM32 CAN.
|
||
From Paul Alexander Patience (2016-06-29).
|
||
* Remove all inclusion of header files from the apps/include directory.
|
||
This caused a lot of reshuffling of logic: binfmt pcode support,
|
||
usbmonitor is now a kernel thread, TZ/Olson database moved to
|
||
libc/zoneinfo (2016-06-29).
|
||
* drivers/mtd: Several MTD FLASH drivers nullify the freed 'priv'
|
||
structure and failed to return NULL as stated in the comments.
|
||
Result, will operate on a NULL pointer later. Noted by David Sidrane
|
||
(2016-06-30).
|
||
* arch/arm/src/kinetis: Add basic support for the K64 family. I
|
||
leveraged the changes from https://github.com/jmacintyre/nuttx-k64f
|
||
and merged into the existing kinetis code with a lot of changes and
|
||
additions (like pin multiplexing definitions). (2016-07-01).
|
||
* configs/freedom-k64f: Add support for the NXP Freedom-K64F board.
|
||
This is primarily the work of Jordan Macintyre. I leveraged this
|
||
code from https://github.com/jmacintyre/nuttx-k64f but with
|
||
significant corrections (LEDs, buttons, README, etc) and extensions
|
||
and updates to match more recent BSPs (2016-07-01).
|
||
* libc/signal: Add raise() (2016-07-04).
|
||
* drivers/syslog: Add a SYSLOG character device that can be used to re-
|
||
direct output to the SYSLOG (2016-07-05).
|
||
* net/netdev: Break out internal interface psock_ioctl() (2016-07-06).
|
||
* configs/stm32f4disovery: add can driver for stm32f4discovery. From
|
||
Matthias Renner (2016-07-06).
|
||
* configs/freedom-k64f: Increase MCU clock to 120MHz (2016-07-06).
|
||
* arch/arm/src/stm32: Add support for Tickless mode (two timer
|
||
implementation). From Max Neklyudov (2016-07-06).
|
||
* drivers/usbdev: cdcacm_unbind leaks write request objects. This
|
||
arises due to freeing the bulk IN endpoint before the loop that
|
||
frees the requests via cdcasm_freereq. That function checks the
|
||
parameters and skips the freeing if either is NULL. Freeing the bulk
|
||
IN enpoint will cause the first param to be NULL, thereby bypassing
|
||
the free operation. To fix, I moved the release of the bulk IN
|
||
endpoint until after to loop (much as was the case for the OUT and
|
||
read requests, which did not exhibit the problem). From ziggurat29
|
||
(2016-07-07).
|
||
* arch/arm/src/stm32l4: Update usb dev/host controller drivers to
|
||
reflect new(ish) logging standards; augment device enpoint and fifo
|
||
allocation #defines to do more sanity checking, and be automatically
|
||
adaptive to size changes. Update README.txt to reflect current status
|
||
of the implementation. From ziggurat29 (2016-07-07).
|
||
* arch/arm/src/stm32f7: Fixed STM32F7 DMA stm32_dmacapable. DMA working
|
||
on SDMMC. From David Sidrane (2016-07-07).
|
||
* configs/stm32f4discovery: add configuration files for canard. From
|
||
Matthias Renner (2016-07-08).
|
||
* drivers/pipe: Add missing configuration for pipe ring buffer size.
|
||
From Frank Benkert (2016-07-08).
|
||
* STM32L4: Fix incorrect clock setup for LPTIM1. From ziggurat29
|
||
(2016-07-08).
|
||
* nucleo-l476rg and stm32lf76vg-disco: Define timer clock frequencies on
|
||
STM32L4-based boards. From ziggurat29 (2016-07-08).
|
||
* STM32L4: Add support for tickless OS, and incidentally timers, pwm,
|
||
oneshot, free-running.... From ziggurat29 (2016-07-08).
|
||
* SAM3/4 I2C: Fix reversed logic in twi_startmessage(). From Wolfgang
|
||
Reissnegger (2016-07-09).
|
||
* VFS ioctl(). Per comments from David Sidrane, file_ioctl() should not
|
||
return succeed if the ioctl method is not supported. It probably
|
||
should return ENOTTY in that case (2016-07-09).
|
||
* libm: This change should significantly improve the performance of
|
||
single precision floating point math library functions. The vast
|
||
majority of changes have to do with preventing the compiler from
|
||
needlessly promoting floats to doubles, performing the calculation
|
||
with doubles, only to demote the result to float. These changes only
|
||
affect the math lib functions that return float. From David Alessio
|
||
(2016-07-11).
|
||
* STM32F4 Discovery: Add FPU support for ostest for the STM32F4Discovery
|
||
platform. From David Alessio (2016-07-11).
|
||
* Build system: Remove the includes/apps link to apps/include. It is
|
||
no longer used. From Sebastien Lorquet (2016-07-11).
|
||
* printf(): If there are no streams, let printf() fall back to use
|
||
syslog() for output (2016-07-11).
|
||
* Qemu-i486: Fix qemu-i486/ostest/Make.defs test for M32. From Heath
|
||
Petersen (2016-07-12).
|
||
* UART 16550: Handle when CONFIG_SERIAL_UART_ARCH_IOCTL is not enabled.
|
||
From Heath Petersen (2016-07-12).
|
||
* Kinetis Ethernet: Add support for the KSZ8081 PHY (2016-07-12).
|
||
* SST26 Driver: Before accessing the sst26 flash, the "Global Unlock"
|
||
command must me executed, which I do in the sst26 driver. BUT re-
|
||
reading the datasheet, the WREN instruction is required to enable the
|
||
execution of this command. This was not done. I have no idea how the
|
||
driver currently works except by chance. The writes should never
|
||
happen at all, the flash is half-enabled! From Sebastien Lorquet
|
||
(2016-07-12).
|
||
* Freedom K64F: Add a networking NSH configuration. (2016-07-12).
|
||
* N25Qxx Driver: Alter the notion of 'blocksize' to be equivalent to
|
||
'flash write page size' in order to align with assumptions in the
|
||
smartfs driver (at least, maybe other things do as well). Correct a
|
||
bug that was previously masked by having blocksize=eraseblocksize
|
||
which would cause buffer overflows and delicious hardfaults. Trivial
|
||
spelling changes in comments, etc. From ziggurat29 (2016-07-12).
|
||
* STM32L476 Discovery: Update stm32l476 disco to include init code for
|
||
smartfs and nxffs for cases where those fs are included in build.
|
||
From ziggurat29 (2016-07-12).
|
||
* Kinetis Ethernet and Freedom-K64F: Freedcom-K64F PHY address was
|
||
wrong. Modified Ethernet driver to try all PHY addresses and then
|
||
only fail if the driver cannot find a usable PHY address. MDIO pin
|
||
must have an internal pull-up on the Freedom-K64F (2016-07-12).
|
||
* Kinetis Ethernet: Add support for CONFIG_NET_NOINTS (2016-07-12).
|
||
* SmartFS: Fix a 32-byte memory leak. From Ken Pettit (2016-07-12).
|
||
* Freedom-K64F: SDHC is now enabled in the nsh configuration (but does
|
||
not work)Add hooks for automounter; Change NSH configuration to use
|
||
Windows (2016-07-13).
|
||
* SAMV7 USBHS Device: This change solves a problem which causes data
|
||
loss while sending data via USB. This problem is caused by an incorrect
|
||
handling of the endpoint state in the USB driver sam_usbdevhs. This
|
||
leads under some circumstances to situations in which an DMA transfer
|
||
is setup while a previous DMA transfer is currently active. Amongst
|
||
other things I introduced the new endpoint state USBHS_EPSTATE_SENDING_DMA
|
||
for the fix. To reproduce the problem, I used a program which send as
|
||
many data as possible via a CDC/ACM device and verified the received
|
||
data on the PC. From Stefan Kolb (2016-07-13).
|
||
* STM32: Fix bug in oneshot timer. From Max Neklyudov (2016-07-13).
|
||
* STM32L4: Port foward bugfix from stm32 of oneshot timer. From
|
||
ziggurat29 (2016-07-13).
|
||
* STM32 and EFM32: I'm using syslog through ITM. In this case
|
||
syslog_channel function is call before RAM initialisation in
|
||
stm32_clockconfig. But syslog channel uses a global variable that is
|
||
reset to default by the RAM initialization. From Pierre-noel
|
||
Bouteville (2016-07-14).
|
||
* LPC43xx SPIFI: If CONFIG_SPIFI_SECTOR512 undefined, lpc43_bwrite
|
||
doesn't do actual write (probably copy/paste errors). Still not sure
|
||
about current state of lpc43_spifi implementation, but for me NXFFS
|
||
works with this patch. From Vytautas Lukenskas (2016-07-14).
|
||
* SMART MTD layer: Fixes freesector logic error when sectorsPerBlk=256,
|
||
adds DEBUGASSERT for invalid geometry and additional memory debug
|
||
logic. Also fixes the dangling pointer on error bug. From Ken
|
||
Pettit (2016-07-14).
|
||
* arch/arm/src/lpc32xx: Extend LPC43xx EMC code to support SDRAM on a
|
||
dynamic memory interface. From Vytautas Lukenskas (2016-07-19).
|
||
* arch/sim/src: Add the simulated QSPI (N25Q) flash to the simulation
|
||
and modify sim up_spiflash.c to enable it to run with different MTD
|
||
drivers based on config options (currently m25p, sst26 and w25).
|
||
From Ken Pettit (2016-07-19).
|
||
* drivers/pipe: Add support to allocating different sizes for pipe and
|
||
fifo buffers. Adds mkfifo2() and pipe2() which are just like mkfifo()
|
||
and pipe(), but allow control of the size of the underlying, in-memory
|
||
circular buffer . Move pipe() and mkpipe() to nuttx/libc, they are no
|
||
longer core OS interfaces. Capability currenty used only by PTY logic
|
||
to support, configurable, smaller buffers for PTYs (2016-07-19).
|
||
* include/nuttx/drivers: Move driver-related files from include/nuttx
|
||
to include/nuttx/drivers. Move driver related prototypes out of
|
||
include/nuttx/fs/fs.h and into new include/drivers/drivers.h
|
||
(2016-07-20).
|
||
* include /nuttx/lib: Move library-related files from include/nuttx to
|
||
include/nuttx/lib (2016-07-21).
|
||
* drivers/serial/serial.c: Fix a race condition noted by Stefan Kolb.
|
||
Between the test if the TX buffer is full and entering a critical
|
||
section, bytes may be removed from the TX buffer making the wait
|
||
unnecessary. The unnecessary wait is an inefficiency, but not really
|
||
a problem. But with USB CDC/ACM it can be a problem because the
|
||
entire TX buffer may be emptied when we lose the race. If that
|
||
happens that uart_putxmitchar() can hang waiting for data to be
|
||
removed from an empty TX buffer (2016-07-22).
|
||
* arch/arm/src/stm32 and stm32l4: STM32 F4/L4 RTC ALARM: were enabling
|
||
interrupts too early in the power-up sequence, BEFORE the interrupt
|
||
system was being initialized (2016-07-23).
|
||
* drivers/ioexpander: GPIO driver: Add support for receiving signals
|
||
from interrupt pins (2016-07-23).
|
||
* drivers/usbdev: USBMSC: Add locks when removing request from queue.
|
||
From Wolfgang Reissnegger (2016-07-23).
|
||
* drivers/usbdev: USBMSC: Fix reversed logic on waiting for SCSI thread
|
||
start. The scsi thread was waiting for the wrong condition. However,
|
||
this was masked by the fact that the code creating the scsi thread was
|
||
also holding usbmsc_scsi_lock(priv) while initializing data, hence
|
||
this lock synchronized the scsi thread start with init completion.
|
||
From Wolfgang Reissnegger (2016-07-23).
|
||
* arch/arm/src/sam34: SAM3/4 UDP: Fix handling of endpoint RX FIFO
|
||
banks. This fixes a race condition where the HW fills a FIFO bank
|
||
while the SW is busy, resulting in out of sequence USB packets
|
||
(2016-07-23).
|
||
* Freedom-K64F: Add PWM support. From Jordan MacIntyre (2016-07-25).
|
||
|
||
7.18 2016-10-08 Gregory Nutt <gnutt@nuttx.org>
|
||
|
||
* drivers/serial/pty.c, serial.c, usbdev/cdcacm.c, include/nuttx/fs/ioctl.h:
|
||
Fix FIONWRITE and add FIONSPACE. All implementations of FIONWRITE
|
||
were wrong. FIONWRITE should return the number of bytes waiting in
|
||
the outgoing send queue, not the free space. Rather, FIONSPACE should
|
||
return the free space in the send queue (2016-07-25).
|
||
* lib_dumpbuffer: Now prints a large on-stack buffer first to avoid
|
||
problems when the syslog output is prefixed with time. From Pierre-
|
||
noel Bouteville (2016-07-27).
|
||
* sched/clock and sched/sched: Add standard adjtime() interface and
|
||
basic timekeeping support. Normally used with an NTP client to keep
|
||
system time in synchronizationi. From Max Neklyudov (Merged on
|
||
20160-07-28).
|
||
* arch/arm/src/stm32: Add timekeeping support for the STM32 tickless
|
||
mode. From Max Neklyudov (Merged on 20160-07-28).
|
||
* Top-Level Makefiles. Fix a chicken-and-egg problem. In the menuconfig
|
||
target, the context dependency was executed before kconfig-mconf.
|
||
That was necessary because the link at apps/platform/board needed to
|
||
be set up before creating the apps/Kconfig file. Otherwise, the
|
||
platform Kconfig files would not be included. But this introduces
|
||
the chicken-and-egg problem in some configurations.
|
||
In particular: (1) An NX graphics configuration is used that requires
|
||
auto-generation of source files using cpp, (2) the configuration is
|
||
set for Linux, but (3) we are running under Cygwin with (4) a Windows
|
||
native toolchain. In this case, POSIX-style symbolic links are set
|
||
up but the Windows native toolchain cannot follow them.
|
||
The reason we are running 'make menuconfig' is to change from Linux
|
||
to Cygwin, but the target fails. During the context phase, NX runs
|
||
CPP to generate source files but that fails because the Windows native
|
||
toolchain cannot follow the links. Checkmate.
|
||
This was fixed by changing all of the make menuconfig (and related)
|
||
targets. They no longer depend on context being run. Instead, they
|
||
depend only on the dirlinks target. The dirlinks target only sets
|
||
up the directory links but does not try to run all of the context
|
||
setup; the compiler is never invoked; no code is autogeneraed; and
|
||
things work (2016-07-28).
|
||
* tools/refresh.sh: Recent complexities added to apps/ means that
|
||
configuration needs correct Make.defs file in place in order to
|
||
configure properly (2016-07-28).
|
||
* tools/kconfig2html.c: Update to handle absolute paths when sourcing
|
||
Kconfig files (2016-07-29).
|
||
* libc/math: This fixes the following libc/math issues: (1) asin[f l]()
|
||
use Newton’s method to converge on a solution. But Newton’s method
|
||
converges very slowly (> 500,000 iterations) for values of x close
|
||
to 1.0; and, in the case of asinl(), sometimes fails to converge
|
||
(loops forever). The attached patch uses an trig identity for
|
||
values of x > sqrt(2). The resultant functions converge in no more
|
||
than 5 iterations, 6 for asinl(). (2) The NuttX erf[f l]() functions
|
||
are based on Chebyshev fitting to a good guess. The problem there’s a
|
||
bug in the implementation that causes the functions to blow up with x
|
||
near -3.0. This patch fixes that problem. It should be noted that
|
||
this method returns the error function erf(x) with fractional error
|
||
less than 1.2E-07 and that’s fine for the float version erff(), but
|
||
the same method is used for double and long double version which
|
||
will yield only slightly better precision. This patch doesn't address
|
||
the issue of lower precision for erf() and erfl(). (3) a faster
|
||
version of copysignf() for floats is included. From David S. Alessio
|
||
(2016-07-30).
|
||
* I/O Expander: Remove hard-coded PCA9555 fields from ioexpander.h
|
||
definitons. Add support for an attach() method that may be used when
|
||
any subset of pin interrupts occur (2016-07-31).
|
||
* PCA9555 Driver: Replace the signalling logic with a simple callback
|
||
using the new definitons of ioexpander.h. This repartitioning of
|
||
functionality is necessary because (1) the I/O expander driver is the
|
||
lower-lower part of any driver that uses GPIOs (include the GPIO
|
||
driver itself) and should not be interacting directly with the much
|
||
higher level application layer. And (2) in order to be compatible
|
||
with the GPIO driver (and any arbitrary upper half driver), the
|
||
PCA9555 should not directly signal, but should call back into the
|
||
upper half. The upper half driver that interacts directly with the
|
||
application is the appropriate place to be generating signal
|
||
(2016-07-31).
|
||
* drivers/ioexpander/skeleton.c: Add a skeleton I/O Expander driver
|
||
(based on the PCA9555 driver) (2016-07-31).
|
||
* I/O Expander Interface: Encode and extend I/O expander options to
|
||
include interrupt configuration (2016-07-31).
|
||
* drivers/ioexpander: Add an (untested) TCA64XX I/O Expander driver
|
||
leveraged from Project Ara (2016-07-31).
|
||
* I/O Expander Interface: Add argument to interrupt callback. Add a
|
||
method to detach the interrupt (2016-08-01).
|
||
* drivers/ioexpander: Add a GPIO lower-half driver that can be used to
|
||
register a GPIO character driver for accessing pins on an I/O expander
|
||
(2016-08-01).
|
||
* drivers/ioexpander: Add PCF8574 I/O Expander driver. Some cleanup
|
||
also of other expander drivers (2016-08-01).
|
||
* drivers/ioexpander: GPIO driver: Add IOCTLs to get the pin type and
|
||
to unregister a signal handler (2016-08-01).
|
||
* configs/sim: Add simulator-based test support for apps/examples/gpio
|
||
2016-08-01).
|
||
* drivers/sensors: Add KXJT9 Accelerometer driver from the Motorola
|
||
Moto Z MDK (2016-08-02).
|
||
* arch/arm/sim: Add a simulated I/O Expander driver (2016-08-03).
|
||
* configs/sim: Add logic to set the simulated I/O expander for testing
|
||
with apps/examples/gpio (2016-08-03).
|
||
* fs/fat: FAT performance improvement. In large files, seeking to a
|
||
position from the beginning of the file can be very time consuming.
|
||
ftell does lssek(fd, 0, SET_CURR). In that case, that is wasted time
|
||
since we are going to seek to the same position. This fix short-
|
||
circutes fat_seek() in all cases where we attempt to seek to current
|
||
position. Suggested by Nate Weibley (2016-08-03).
|
||
* tools/sethost.sh: Add sethost.sh. This is a script that you can use
|
||
to quickly change the host platform from Linux to Windows/Cygwin.
|
||
Might save you a lot of headaches (2016-08-03).
|
||
* arch/arm/src/tiva: Add tiva PWM lower-half driver implementation.
|
||
From Young (2016-08-05).
|
||
* drivers/spi/spi_transfer.c: Add a helper function that encapsulates
|
||
and manages a sequence of SPI transfers (2016-08-05).
|
||
* drivers/spi: Add an SPI character driver that will permit access to
|
||
the SPI bus for testing purposes. This driver is a simple wrapper
|
||
around spi_transfer() (2016-08-05).
|
||
* drivers/wireless: Add MFRC522 RFID ISO14443 and Mifare transceiver
|
||
driver. From Alan Carvalho de Assis (2016-08-06).
|
||
* configs/stm32f103-minimum: Add board support to MFRC522 driver. From
|
||
Alan Carvalho de Assis (2016-08-06).
|
||
* arch/renesas: Rename arch/sh to arch/renesas (2016-08-06).
|
||
* arch/arm/src/efm32, stm32, stm32l4: STM32 and EFM32 SPI drivers
|
||
adopted an incompatible conventions somewhere along the line. The
|
||
set the number of bits to negative when calling SPI_SETBITS which had
|
||
the magical side-effect of setting LSB first order of bit
|
||
transmission. This is not only a hokey way to pass control
|
||
information but is supported by no other SPI drivers. This change
|
||
three things: (1) It adds HWFEAT_LSBFIRST as a new H/W feature.
|
||
(2) It changes the implementations of SPI_SETBITS in the STM32 and
|
||
EFM32 derivers so that negated bit numbers are simply errors and it
|
||
adds the SPI_HWFEATURES method that can set the LSB bit order, and
|
||
(3) It changes all calls with negative number of bits from all
|
||
drivers: The number of bits is now always positive and SPI_HWFEATURES
|
||
is called with HWFEAT_LSBFIRST to set the bit order (2016-08-08).
|
||
* arch/arm/src/stm32: Add missing SPI2 and SPI3 support for STM32F3F3.
|
||
Add STM32F37XX DMA channel configuration. For STM32F37XX,
|
||
SYSCFG_EXTICR_PORTE defined twice. From Alan Carvalho de Assis
|
||
(2016-08-08).
|
||
* arch/arm/src/stm32: Make stm32_pwr_enablebkp thread safe. From
|
||
Max Neklyudov (2016-08-09).
|
||
* arch/arm/src/stm32: SAM3/4 GPIO: Enable peripheral clock for GPIO port
|
||
when GPIO is configured as input. The value of a GPIO input is only
|
||
sampled when the peripheral clock for the port controller the GPIO
|
||
resides in is enabled. Therefore we need to enable the clock even when
|
||
polling a GPIO. From Wolfgang Reissnegger (2016-08-09).
|
||
* arch/arm/src/tiva: Fix two bugs of tiva pwm lower-half driver
|
||
implementation. From Young (2016-08-10).
|
||
* sched/group: Explicitly initialize the group tg_exitsem with
|
||
sem_init(). The existing logic worked because the correct
|
||
initialization value is all zero, but it is better to initialize the
|
||
semaphore explicitly (2016-08-10).
|
||
* arch/arm/stm32: Fix bad pllmul values for STM32F1XX connectivity line.
|
||
STM32F1XX connectivity line supports only x4, x5, x6, x7, x8, x9 and
|
||
x6.5 values. From Michał Łyszczek (2016-08-11).
|
||
* include/nuttx/timers: Add oneshot timer lower half interface
|
||
(2016-08-11).
|
||
* arch/arm/src/stm32: Add a experimental oneshot, lower-half driver for
|
||
STM32 (2016-08-11).
|
||
* arch/arm/src/samv7: Add option to support oneshot timer without free-
|
||
running timer. Add oneshot lower half driver (2016-08-11).
|
||
* arch/arm/src/sama5: Add option to support oneshot timer without free-
|
||
running timer. Add oneshot lower half driver (2016-08-11).
|
||
* arch/arm/src/sam34: SAM4CM: Add option to support oneshot timer without
|
||
free-running timer. Add oneshot lower half driver (2016-08-11).
|
||
* arch/arm/src/stm32l4: Add oneshot lower half driver (2016-08-11).
|
||
* libc/stdlib: strtod() was not returning endptr on error conditions
|
||
(2016-08-11).
|
||
* libc/math: floor(), floorf(), and floorl(): Fix logic error. Was not
|
||
correctly handling negative integral value (2016-08-11).
|
||
* configs/sim: Add a configuration useful for testing Mini Basic
|
||
(2016-08-12).
|
||
* drivers/timers: Add an upper-half, oneshot timer character driver
|
||
(2016-08-12).
|
||
* arch/sim/src: Add a simulated oneshot lowerhalf driver (2016-08-12).
|
||
* arch/arm/src/stm32: STM32F3 SPI: Fix the number of bit setting for
|
||
the F3. That and data packing work differently on the STM32F3 than
|
||
for other STM32 parts (2016-08-12).
|
||
* arch/arm/stm32 and stm32l4: Enabling SPI DMA loses other bits in CR2
|
||
(2016-08-13).
|
||
* arch/arm/src/stm32: STM32F3 SPI: Cannot write always 16-bit value to
|
||
DR register because of how the F3 implements data packing (2016-08-13).
|
||
* Kinetis: Add support for I2C and RTC. From v01d (phreakuencies)
|
||
(2016-08-13).
|
||
* teensy 3.x i2c. From v01d (phreakuencies) (2016-08-13).
|
||
* SH1106 0.96 OLED module support (SSD1306 compatible) + I2C fixes.
|
||
From v01d (phreakuencies) (2016-08-13).
|
||
* Add support for SAMV7 DACC module. From iotr Mienkowski (2016-08-15).
|
||
* Add oneshot board initialization to stm32f103-minimum. From Alan
|
||
Carvalho de Assis (2016-08-15).
|
||
* drivers/audio/tone.c: Add Audio Tone Generator for NuttX. From Alan
|
||
Carvalho de Assis (2016-08-16).
|
||
* configs/stm32f103-minimum: Add board configuration to initialize Audio
|
||
Tone Generator. From Alan Carvalho de Assis (2016-08-16).
|
||
* STM32F411 and STM32F446 map i2c2_sda_4 to different alternate function
|
||
numbers. From Konstantin Berezenko (2016-08-17).
|
||
* STM32 DMA Fix: Change stm32 adc dma callback to send channel number
|
||
instead of index. From Konstantin Berezenko (2016-08-17).
|
||
* SAMA5: Add missing oneshot max_delay method (2016-08-18).
|
||
* configs/stm32bufferfly2: Add support for the Kamami stm32butterfly2
|
||
development board with optional ETH phy. From Michał Łyszczek
|
||
(2016-08-19).
|
||
* libc/misc: Separate XorShift128 PRNG from /dev/urandom and make it
|
||
generally available (2016-08-20).
|
||
* sched/sched_cpuload_oneshot: Use the oneshot timer with optional
|
||
entropy to measure cPU load if so configured (2016-08-20).
|
||
* drivers/usbhost/usbhost_composite.c: An an EXPERIMENTAL prototype of
|
||
how USB host support for composite devices might be implemented. This
|
||
feature is EXPERIMENTAL because (1) it is untested and (2) has some
|
||
know design issues that must be addressed before it can be of use
|
||
(2016-08-28).
|
||
* CXXFLAGS: add -fcheck-new whenever -fno-exceptions is used. From Beat
|
||
Küng (2016-08-23).
|
||
* tools/mkfsdata.pl was still generating the old-style apps/include
|
||
inclusion paths (2016-08-23).
|
||
* drivers/sensors: Add drvier for the LIS3MDL 3 axis magnetometer. From
|
||
Alexander Entinger (2016-08-23).
|
||
* drivers/sensors: Add driver for the MLX90393 3 axis magnetometer.
|
||
From Alexander Entinger (2016-08-23).
|
||
* drivers/mtd: Add Fujistu MB85RS256B ramtron support. From Beat Küng
|
||
(2016-08-23).
|
||
* drivers/sensors: Add driver for the LIS3DSH 3 axis accelerometer. From
|
||
Alexander Entinger (2016-08-24).
|
||
* drivers/sensors: Add driver for the Bosch BMG160 3 axis gyroscope.
|
||
From Alexander Entinger (2016-08-24).
|
||
* STM32: Add IAR-style STM32F1xx vectors. Tested on STM32F103RB and
|
||
STM32F107RC. From Aleksandr Vyhovanec (2016-08-24).
|
||
* libc/header files: Add POSIX type sig_atomic_t. From Sebastien
|
||
Lorquet (2016-08-24).
|
||
* libc/header files: isatty() should be prototypes in unstid.h, not
|
||
termios.h. From Sebastien Lorquet (2016-08-24).
|
||
* Documentation: Update to NuttX C coding style document with additions
|
||
discussing long comments on the right side of a statement or data
|
||
definition (2016-08-24).
|
||
* LPC43xx serial: Fix typos in LPC43 serial driver. Found by Vytautas
|
||
Lukenskas (2016-08-24).
|
||
* libc/time: This commit adds the difftime() function. The function
|
||
depends on the toolchain-dependent CONFIG_HAVE_DOUBLE so is not
|
||
available on tiny platforms. From Sebastien Lorquet (2016-08-24).
|
||
* libc/stdio: Add support for remove(). From Sebastien Lorquet
|
||
(2016-08-25).
|
||
* STM32 OTGFS device: Fix for lost first word from FIFO
|
||
|
||
1) Do not overwrite Reserved Bits in GINTSTS (per ref manual)*
|
||
2) Acknowledge all pending int on entry to ISR that are Only rc_w1*
|
||
3) Do not disable RXFVL*
|
||
4) Loop until RXFVL is cleared*
|
||
5) Only clear the NAK on the endpoint on the
|
||
OTGFS_GRXSTSD_PKTSTS_SETUPDONE to not loose the first WORD of
|
||
FIFO all the data (Bug Fix)
|
||
|
||
Changed marked *are just driver clean up and ensure ints are not lost.
|
||
The bug fix is #5
|
||
|
||
Test case open putty and observer the Set/Get LineCoding. Without this
|
||
fix #5 the Get will not match the Set, and in fact the data might be
|
||
skewed by 4 bytes, that are lost from the FIFO if the
|
||
OTGFS_DOEPCTL0_CNAK bit is set in the OTGFS_GRXSTSD_PKTSTS_SETUPRECVD
|
||
as opposed to the OTGFS_GRXSTSD_PKTSTS_SETUPDONE
|
||
|
||
Set Line Coding DATA1: 4B | 00 c2 01 00 00 00 08 | c8 1B
|
||
Get Line Coding DATA1: 4B | .. .. .. .. 00 00 08 c8 .. 00 00 07 | 7a 72
|
||
|
||
From David Sidrane (2016-08-25).
|
||
* Add system() to stdlib.h. Actual implementation is in
|
||
apps/system/system (2016-08-25).
|
||
* include/nuttx/input: Add missing prototype for btn_lower_initialize()
|
||
(2016-08-27).
|
||
* configs/stm32f103-minimum: Add board config support to SPI LCD module
|
||
JLX12864G-086. From Alan Carvalho de Assis (2016-08-28).
|
||
* net/tcp: tcp_ipvX_bind() not actually using the ported selected with
|
||
port==0. Also removes duplicate call to pkt_input(). Issues noted by
|
||
Pascal Speck (2016-08-30).
|
||
* STM32 F7: Remove duplicate call to pkt_input from Ethernet driver.
|
||
Issues noted by Pascal Speck (2016-08-30).
|
||
* STM32L4 OTGFS device: Apply stm32 fix to stm32l4. From Sebastien
|
||
Lorquet (2016-08-31).
|
||
* drivers/contactless: Remove contactless drivers from drivers/wireless
|
||
to drivers contactless. From Sebastien Lorquet (2016-08-31).
|
||
* USB host composite is at least partially functional. No longer depends
|
||
on CONFIG_EXPERIMENTAL (2016-09-02).
|
||
* MTD: Fixed cloned typos in several FLASH drivers. From Aleksandr
|
||
Vyhovanec (2016-09-02).
|
||
* MTD: SPI-based driver for Macronix MX25L3233F or MX25L6433F. From
|
||
Aleksandr Vyhovanec (2016-09-02).
|
||
* sched/: The TCB nchildren field should not be incremented when
|
||
pthreads are created (2016-09-06).
|
||
* sched/: Move fields related to parent/child task relationship out of
|
||
TCB into group structure (2016-09-06).
|
||
* STM32L4: Add support for USART3-USART5. For STM32L4 parts, the higher
|
||
number USART ports supported varies. Add the HAVE_USARTx definitions
|
||
to the configuration to allow enabling the higher numbered USART ports.
|
||
From Jim Wylder (2016-09-15).
|
||
* configs/stm32l476-mdk: Support basic booting and nsh on Motorola MDK.
|
||
The Motorola MDK is based off of an earlier version of NuttX. This
|
||
only provides a basic NSH shell. From Jim Wylder (2016-09-15).
|
||
* STM32 USB: Set USB address to avoid a failed assertion. From Pierre-noel
|
||
Bouteville (2016-09-15).
|
||
* STM32 L4 and L7 USB: Pierre's assertion-avoidance change should also be
|
||
applied to STM32 F7 and L4 (2016-09-15).
|
||
* sched/: mq_send() was not setting the errno value on certain failures
|
||
to allocate a message (2016-09-15).
|
||
* include/nuttx/modem: Move all modem-related IOCTL commands to a common
|
||
file to assure that they will be unique (2016-09-16).
|
||
* STM32 F4 Discovery: Add support for XEN1210 3D-board. From Alan
|
||
Carvalho de Assis (2016-09-17).
|
||
* drivers/sensors: Adds support for the Sensixs XEN1210 3D-board. This
|
||
sensor is used on NANOSATC-BR2 a Brazillian CUBESAT project. From
|
||
Alan Carvalho de Assis (2016-09-16).
|
||
* include/analog/dac.h: Make DAC structure packed. From Marc Rechté
|
||
(2016-09-20).
|
||
* All SAM Ethernet Drivers: Add support so that the drivers can be built
|
||
with CONFIG_NET_MULTIBUFFER=y (2016-09-20).
|
||
* Tiva Ethernet: Needs support for CONFIG_NET_MULTIBUFFER=y (2016-09-20).
|
||
* drivers/net: NET_TUN=y => NET_MULTIBUFFER=y. From Vladimir
|
||
Komendantskiy (2016-09-20).
|
||
* SAM3/4: Fix GPIO pull-up/down code. Enabling the pull-down resistor
|
||
while the pull-up resistor is still enabled is not possible. In this
|
||
case, the write of PIO_PPDER for the relevant I/O line is discarded.
|
||
Likewise, enabling the pull-up resistor while the pull-down resistor
|
||
is still enabled is not possible. In this case, the write of PIO_PUER
|
||
for the relevant I/O line is discarded. From Wolfgang Reißnegger
|
||
(2016-09-20).
|
||
* SAM GPIO: Apply Wolfgang's change for SAM3/4 to SAMA5 and SAMV7
|
||
(2016-09-20).
|
||
* Tiva QEI: Add QEI lower-half driver impl. for Tiva series chip. From
|
||
Young (2016-09-21).
|
||
* STM32, L4, and F7: Remove GPIO_ETH_RMII_TX_CLK. TX_CLK is not present
|
||
in RMII. Mateusz Szafoni (2016-09-22).
|
||
* sched/: Define 'group' even if HAVE_GROUPID is not set. From Mateusz
|
||
Szafoni (2016-09-22).
|
||
* sched/: vector table should have dimension NR_IRQS, not NR_IRQS+1.
|
||
From Sagitta Li (2016-09-22).
|
||
* fs/mount: Corrects a bad assertion noted by Pierre-noel Bouteville.
|
||
Also fixes a reference counting problem in an error condition: When
|
||
the mountpoint inode is found but is not an appropriate mountpoint,
|
||
the reference count on the inode was not being decremented (2016-09-22).
|
||
* libnx/nxglib: Fix handling of near-horizontal lines of width 1 in
|
||
nxgl_splitline(). Missing handling for degenerate condition caused
|
||
width 1 lines such as (0, 0) - (100, 10) to have gaps in the drawing.
|
||
From Petteri Aimonen (2016-09-22).
|
||
* drivers/net/slip.c: Fix calculations using MSEC_PER_TICK. If
|
||
USEC_PER_TICK is less than 1000, then MSEC_PER_TICK will be zero. It
|
||
will be inaccurate in any case (2016-09-25).
|
||
* Tiva QEI: Add a new ioctl command (set MAXPOS) for tiva QEI. From
|
||
Young (2016-09-26).
|
||
* LPC43xx Serial: There are some small problems in LPC43xx RS485 mode
|
||
configuration. In particular: (1) UART0,2,3 do not have DTR pins
|
||
(different from UART1), so, Kconfig needs to be adjusted. (2)
|
||
lpc43_uart.c in RS485 mode only configures DIR pin, but doesn't enable
|
||
pin output for UART0,2,3. (3) should be option to reverse DIR control
|
||
pin output polarity. (4) lpc43xx/chip/lpc43_uart.h doesn't have USART3
|
||
definitions. NOTE: I didn't modified and didn't tested USART1, as it
|
||
has different hardware. From Vytautas Lukenskas. From Vytautas
|
||
Lukenskas (2016-09-30).
|
||
* STM32 Ethernet: Correct typo in conditional logic. From Neil Hancock
|
||
(2016-10-01).
|
||
* sched/pthread and task: When a pthread is started, there is a small
|
||
bit of logic that will run on the thread of execution of the new
|
||
pthread. In the case where the new pthread has a lower priority than
|
||
the parent thread, then this could cause both the parent thread and
|
||
the new pthread to be blocked at the priority of the lower priority
|
||
pthread (assuming that CONFIG_PRIORITY_INHERITANCE is not selected).
|
||
This change temporarily boosts the priority of the new pthread to at
|
||
least the priority of the new pthread to at least the priority of the
|
||
parent thread. When that bit of logic has executed on the thread of
|
||
execution of the new pthread, it will then drop to the correct
|
||
priority (if necessary) before calling into the new pthread's entry
|
||
point (2016-10-01).
|
||
* configs/stm32f103-minimum: Add stm32_bringup support and userled
|
||
example to STM32F103 Minimum board. From Alan Carvalho de Assis
|
||
(2016-10-02).
|
||
* STM32 L4: Add support for quadrature encoders on STM32L4. Sebastien
|
||
Lorquet (2016-10-02).
|
||
* configs: Add support for qencoders on various nucleo boards. From
|
||
Sebastien Lorquet (2016-10-03).
|
||
* STM32 L4 USB Device: Fixed L4 USB Driver by avoiding SETUPDONE and
|
||
EPOUT_SETUP. From David Sidrane (2016-10-04).
|
||
* configs/olimex-stm32-e407: Add some networking configurations. From
|
||
Mateusz Szafoni (2016-10-06).
|
||
* STM32 SPI: stm32_modifycr2 should be available on all platforms if DMA
|
||
is enabled. (2016-10-06).
|
||
* STM32 DMA2D: fix an error in up_dma2dcreatelayer where an invalid
|
||
pointer was returned when a certain underlying function failed. From
|
||
Jens Gräf (2016-10-07).
|
||
* include/nuttx/fs/nxffs.h: Needs forward reference to struct mtd_dev_s
|
||
and needs to include stdbool.h (2016-10-09).
|
||
* STM32F103 Minimum: Note in Kconfig that the board supports buttons.
|
||
From Alan Carvalho de Assis (2016-10-11).
|
||
* STM32F103 Minimum: Add button support. From Alan Carvalho de Assis
|
||
(2016-10-11).
|
||
* arch/arm/kinetis and configs/freedom-k64f: Add UID Unique ID. From
|
||
Neil Hancock (2016-10-13).
|
||
* arch/arm/src/stm32l4: (1) too many parentheses when calculating max
|
||
chan count and (2) channel 4 does not have a complementary output. From
|
||
Sebastien Lorquet (2016-10-14).
|
||
* arch/arm/src/stm32l4: Support Complementary PWM outputs on STM32L4.
|
||
From Sebastien Lorquet (2016-10-14).
|
||
* Support PWM testing on board nucleo-l476. From Sebastien Lorquet
|
||
(2016-10-14).
|
||
* arch/arm/src/stm32: Support oversampling by 8 for the STM32 F4.
|
||
From David Sidrane (2016-10-15).
|
||
* libc/stdio: Fixes sscanf %sn where strlen(data) < n. From David
|
||
Sidrane (2016-10-15).
|
||
* arch/risc-v: Add support for the RISC-V architecture and
|
||
configs/nr5m100-nexys4 board. I will be making the FPGA code for
|
||
this available soon (within a week I would say). The board support on
|
||
this is pretty thin, but it seems like maybe a good idea to get the base
|
||
RISC-V stuff in since there are people interested in it. From Ken
|
||
Pettit (2016-10-16).
|
||
* C library: Add a dummy setlocale() function to avoid drawing the
|
||
function from newlib (2016-10-17).
|
||
* libc/wchar: Add wcslen, wmemchr, wmemcmp, wmemcpy and wmemset to NuttX.
|
||
From Alan Carvalho de Assis (2016-10-17).
|
||
* syscalls: Add setlocale to libc.csv (2016-10-17).
|
||
* libc/locale: Add clocale header file (2016-10-18).
|
||
* libc/wchar: Add functions btowc, mbrtowc, mbtowc, wcscmp, wcscoll,
|
||
wmemmove. From Alan Carvalho de Assis (2016-10-18).
|
||
* usbhost/enumerate: fix possible buffer overwrite. From Janne Rosberg
|
||
(2016-10-18).
|
||
* configs/Board.mk: Add extra clean operations (2016-10-18).
|
||
* usbhost/composite: fix compile; missing semicolons. From Jann
|
||
Rosberg (2016-10-18).
|
||
* libc/stdio: Include wchar.h in lib_libvsprintf.c to fix compilation
|
||
error. From Alan Carvalho de Assis (2016-10-18).
|
||
* arch/arm/src/kinetis: Added missing headers. From David Sidrane
|
||
(2016-10-18).
|
||
* arch/arm/src/kinetis: Kinetis broke out SPI to kinetis/kinetis_spi.h.
|
||
From David Sidrane (2016-10-18).
|
||
* arch/arm/src/kinetis: Broke out DMA to use the modern Nuttx chip
|
||
inclusion - still STUBS. From David Sidrane (2016-10-18).
|
||
* arch/arm/src/kinetis: Kinetis Support ARMV7 Common Vector and FPU.
|
||
From David Sidrane (2016-10-18).
|
||
* arch/arm/src/kinetis: Kinetis Allow CONFIG_ARMV7M_CMNVECTOR,
|
||
CONFIG_STACK_COLORATION, CONFIG_ARCH_FPU. From David Sidrane
|
||
(2016-10-18).
|
||
* arch/arm/src/kinetis: Kinetis i2c driver offset swapped for value
|
||
in kinetis_i2c_putreg. From David Sidrane (2016-10-18).
|
||
* Add functions wcrtomb, wcslcpy, wcsxfrm, wctob, wctomb, wctype,
|
||
localeconv, strcoll, strxfrm. From Alan Carvalho de Assis
|
||
(2016-10-18).
|
||
* libc/wctype: Add wctype.h; Move lib_wctype.c to libc/wctype.
|
||
From Alan Carvalho de Assis (2016-10-18).
|
||
* include/: Modify locale.h to add localeconv() and lconv structure.
|
||
From Alan Carvalho de Assis (2016-10-18).
|
||
* include/sys/time.h: timersub macro modified per recommendations of
|
||
phreakuencies (2016-10-18).
|
||
* include/: Add isblank() macro to ctype.h. From Alan Carvalho de
|
||
Assis (2016-10-19).
|
||
* libc/wctype: Add iswctype, towlower, towupper and wcsftime functions.
|
||
From Alan Carvalho de Assis (2016-10-19).
|
||
* syslog: Fixes required for file syslog output. From Max Kriegleder
|
||
(2016-10-19).
|
||
* arch/arm/src/stm32: add TIM8 to STM32F103V pinmap. From Maciej Wójcik
|
||
(2016-10-19).
|
||
* libc/locale: Allows c++ code to compile with or without
|
||
CONFIG_LIBC_LOCALE and will generate a link error if CONFIG_LIBC_LOCALE
|
||
is not defined and setlocale is referneced. With CONFIG_LIBC_LOCALE
|
||
defined setlocale will act as if MB string is not supported and return
|
||
"C" for POSIX. C and "". From David Sidrane (2016-10-19).
|
||
* Add vectors for interrupt levels 2-6 (2016-10-20).
|
||
* strtof: Add strtof() as simply a copy of strtod with types and
|
||
limits changed (2016-10-20).
|
||
* arch/arm/src/stm32v7: Register the watchdog device at the configured
|
||
device path CONFIG_WATCHDOG_DEVPATH vs. hard-coded /dev/wdt. From Frank
|
||
Benkert (2016-10-21).
|
||
* configs/*/defdonf The buttons example was changed to archbuttons. As
|
||
a result all of the button configurations are broken and need some
|
||
renaming in the defconfig files. Noted by Frank Berkert (2016-10-21).
|
||
* configs/stm32f103-minimum: Add support to PWM on STM32F103-Minimum
|
||
board. From Alan Carvalho de Assis (2016-10-21).
|
||
* include/ctype.h and cxx/cctype: Implement ctype.h functions as inline
|
||
if possible. cctype can then properly select namespace (2016-10-22).
|
||
* libc/unisted: Add strtold() (2016-10-22).
|
||
* sscanf: Use strtof() instead of strtod() if a short floating point
|
||
value was requested. The should help performance with MCUs with 32-bit
|
||
FPU support with some additional code size (2016-10-22).
|
||
* Remove support for software prioritization of interrupts (2016-10-23).
|
||
* drivers/net/tun.c: Fix bug in TUN interface driver. From Max
|
||
Nekludov (2016-10-24).
|
||
* arch/arm/src/stm32: A new implementation of the STM32 F4 I2C bottom
|
||
half. The commin I2C as this did not handled correctly in the current
|
||
implementation (see also https://github.com/PX4/NuttX/issues/54). The
|
||
changes almost exclusively affect the ISR. From Max Kriegleder
|
||
(2016-10-24).
|
||
* arch/arm/src/stm32l4: Fix I2C devices RCC registers. From Sebastien
|
||
Lorquet (2016-10-25).
|
||
* arch/arm/src/stm32l4: Enable and renames for 32l4 UARTs 4 and 5.
|
||
From Sebastien Lorquet (2016-10-25).
|
||
* configs/stm32f103-minimum: Fix Timers 2 to 7 clock frequencies.
|
||
From Alan Carvalho de Assis (2016-10-25).
|
||
* arch/arm/src/stm32: Initial implemention of the STM32 F37xx SDADC
|
||
module. There are also changes to ADC, DAC modules. SDADC has only been
|
||
tested in DMA mode and does not support external TIMER triggers. This
|
||
is a work in progress. From Marc Rechté (2016-10-25).
|
||
* Add logic to attach peripheral interrupt sources to CPU interrupts
|
||
(2016-10-25).
|
||
* CHxN channels are always outputs. From Sebastien Lorquet
|
||
(2016-10-26).
|
||
* sched/semaphore: Within the OS, when a thread obtains a semaphore
|
||
count it must call sem_addholder() if CONFIG_PRIORITY_INHERITANCE is
|
||
enabled. If a count is available, then sem_wait() calls
|
||
sem_addholder(), otherwise it waited for the semaphore and called
|
||
sem_addholder() when it eventually received the count.
|
||
|
||
This caused a problem when the thread calling sem_wait() was very
|
||
low priority. When it received the count, there may be higher
|
||
priority threads "hogging" the CPU that prevent the lower priority
|
||
task from running and, as a result, the sem_addholder() may be
|
||
elayed indefinitely.
|
||
|
||
The fix was to have sem_post() call sem_addholder() just before
|
||
restarting the thread waiting for the semaphore count.
|
||
|
||
This problem was noted by Benix Vincent who also suggested the
|
||
solution (2016-10-26).
|
||
* configs/stm32f103-minimum: Add RGB LED support on STM32F103 Minimum
|
||
board. From Alan Carvalho de Assis (2016-10-26).
|
||
* arch/arm/src/stm32f7: stm32_i2c.c Dejavu. Fixes a bug previously
|
||
found in the F4. From David Sidrane (2016-10-26).
|
||
* arch/arm/src/stm32f7: stm32f76xx77xx_pinmap.h Missed one. From
|
||
David Sidrane (2016-10-26).
|
||
* LPC32xx serial: Fix a typo in ioctl TIOCSRS485 ioctl. From Vytautas
|
||
Lukenskas (2016-10-27).
|
||
* sched/clock: Correct clock initialization. The correct range for
|
||
the month is 0-11 but is entered as 1-12 in the .config file
|
||
(2016-10-27).
|
||
* arch/*/include: Add architecture-specific inttypes.h. From Paul
|
||
A. Patience (2016-10-27).
|
||
* sched/Kconfig: Add ranges to START_YEAR, MONTH, and DAY (2016-10-28).
|
||
* configs/nucleo-f303re: Add STM32 F303RE hello configuration; remove
|
||
duplicate setting from board.h. From Marc Rechté (2016-10-18).
|
||
* arch/arm/src/lpc32xx: Restore RS485 mode on serial port open (if
|
||
RS485 is enabled via menuconfig). From Vytautas Lukenskas (2016-10-28).
|
||
* arch/arm/src/stm32f7: otgdev fixed typo. From David Sidrane
|
||
(2016-10-28).
|
||
* arch/xtensa: Basic architectural support for Xtensa processors and
|
||
the Expressif. ESP32 added. Totally untested on initial release
|
||
(2016-10-31).
|
||
* configs/esp32-core: Basic support for Expressif ESP32 Core v2 board
|
||
added. The initial release includes an NSH and an SMP test
|
||
configuration. Totally untested on initial relesae (2016-10-31).
|
||
* configs/bambino-200e: Add basic support to Micromint Bambino 200E
|
||
board. This includes contributions from Jim Wolfman. From Alan
|
||
Carvalho de Assis (2016-11-01).
|
||
* drivers/mtd/at24xx.c: Added EEPROM timeout. Fromo Aleksandr
|
||
Vyhovanec (2016-11-02).
|
||
* arch/misoc: Adds basic support for the Misoc procoessors and the
|
||
LM32 in particular. From Ramtin Amin (2016-11-01).
|
||
* configs/misoc. Board support for testing Misoc LM32 with Qemu.
|
||
From Ramtin Amin (2016-11-01).
|
||
* arch/arm/src/stm32: I think, that Size is (highest address+1 - Base
|
||
address). Base address has been removed and if address+count >= size
|
||
we are outside of the Flash. From David Sidrane (2016-11-01).
|
||
* sched/semaphore, sched/phread/, libc/semaphore, libc/pthread: Add
|
||
pthread_mutexattr_get/set_protocol and non-standard sem_get/set_protocol.
|
||
These may use to enable or disable priority inheritance on a single
|
||
semaphore (2016-11-02).
|
||
* arch/arm/src/stm32: Fix ADC compilation error when DMA isn't enabled.
|
||
From Paul A. Patience (2016-11-02).
|
||
* drivers/ and drivers/spi: Fix Kconfig warning. This commit moves the
|
||
ARCH_HAVE_SPI options outside the check for SPI. Those options don't
|
||
depend on SPI, and Kconfig files in arch/ enable them even if SPI isn't
|
||
enabled.
|
||
|
||
Sourcing the driver's Kconfig in drivers/Kconfig only if support for
|
||
the driver is enabled prevents us from defining these ARCH_HAVE options
|
||
in the driver's Kconfig. We should probably remove the other checks in
|
||
drivers/Kconfig and check if the drivers are enabled only in their
|
||
Kconfig. From Paul A. Patience (2016-11-02).
|
||
* Move protoypes for the non-standard include/semaphore.h file to the
|
||
non-standard include/nuttx/semaphore.h with the other non-standard
|
||
semaphore interfaces (2016-11-02).
|
||
* include/semaphores.h: Provide macros for sem_setprotocol() and
|
||
sem_getprotocol() if priority inheritance is not enabled. More
|
||
SEM_PRIO_* definitions to include/nuttx/semaphore.h (2016-11-02).
|
||
* drivers/serial.c: Make sure that priority inheritance is not
|
||
enabled for the signaling semaphores used in the serial driver
|
||
(2016-11-03).
|
||
* arch/arm/src/stm32f7: Fix to SPI-Master driver. Without this the
|
||
chip select decoding feature will not work properly. From Michael
|
||
Spahlinger (2016-11-03).
|
||
* drivers/, net/, fs/, sched, arch/, graphics/, libnx,: Disable
|
||
priority inheritance on all semaphores used for signaling (2016-11-03).
|
||
* sched/semaphore: Handle a case of missing proxy for sem_setprotocol.
|
||
Reorder so that (1) this error is avoided, and (2) >No proxy is needed
|
||
if priority inheritance is not enabled (2016-11-03).
|
||
* config/*/defconfgs: More fallout from name change of
|
||
apps/examples/buttons to archbuttons (2016-11-03).
|
||
* configs/nucleo_f303re: Various fixes to get the adc configuration
|
||
building again after PR. Refresh all configurations (2016-11-03).
|
||
* arch/misoc/src/common: Add interrupting Misoc serial driver. From
|
||
Ramtin Amin (2016-11-04)
|
||
* Fix a number of header files with mismatched 'extern C {' and '}'
|
||
(2016-11-05).
|
||
* Provide do-nothing stubs for mutex attribute interfaces if features
|
||
ot enabled. pthread_cond includes a signaling semaphore and should
|
||
call sem_setprotocol (2016-11-05).
|
||
* arch/arm/src/armv7-r: Fix compilation error. This commit fixes
|
||
compilation errors on MPU support for ARMv7-R. From Heesub Shin
|
||
(2016-11-06).
|
||
* arch/arm/src/armv7-r: fix invalid drbar handling. In ARMv7-R,
|
||
[31:5] bits of DRBAR is physical base address and other bits are
|
||
reserved and SBZ. Thus, there is no point in passing other than the
|
||
base address. From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/armv7-r: Remove the redundant update on SCTLR.
|
||
mpu_control() is invoking cp15_wrsctlr() around SCTLR update
|
||
redundantly. From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/armv7-r: add new Kconfig entries for d/i-cache.
|
||
Unlike in ARMv7-A/M, Kconfig entries for data and instruction caches
|
||
are currently missing in ARMv7-R. This commit adds those missing
|
||
Kconfig entries. Actual implmenetation for those functions will be
|
||
added in the subsequent patches. From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/armv7-r: add cache handling functions. This commit
|
||
adds functions for enabling and disabling d/i-caches which were
|
||
missing for ARMv7-R. From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/armv7-r: fix typo in mpu support. s/ARMV7M/ARMV7R/g.
|
||
From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/armv7-r: fix CPSR corruption after exception handling.
|
||
A sporadic hang with consequent crash was observed when booting. It
|
||
seemed to be caused by the corrupted or wrong CPSR restored on return
|
||
from exception. NuttX restores the context using code like this:
|
||
|
||
msr spsr, r1
|
||
|
||
GCC translates this to:
|
||
|
||
msr spsr_fc, r1
|
||
|
||
As a result, not all SPSR fields are updated on exception return.
|
||
This should be:
|
||
|
||
msr spsr_fsxc, r1
|
||
|
||
On some evaluation boards, spsr_svc may have totally invalid value at
|
||
power-on-reset. As it is not initialized at boot, the code above may
|
||
result in the corruption of cpsr and thus unexpected behavior.
|
||
|
||
From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/armv7-r: fix to restore the Thumb flag in CPSR. Thumb
|
||
flag in CPSR is not restored back when the context switch occurs while
|
||
executing thumb instruction. From Heesub Shin (2016-11-06).
|
||
* sched/wqueue: When queuing new LP work, don't signal any threads
|
||
if they are all busy. From Heesub Shin (2016-11-06).
|
||
* sched/wqueue: Signal sent from work_signal() may interrupt the low
|
||
priority worker thread that is already running. For example, the worker
|
||
thread that is waiting for a semaphore could be woken up by the signal
|
||
and break any synchronization assumption as a result. It also does not
|
||
make any sense to send signal if it is already running and busy. This
|
||
commit fixes it. From Heesub Shin (2016-11-06).
|
||
* arch/arm/src/stm32f7: STM32F7 SD/MMC driver depends on
|
||
CONFIG_SDIO_DMA which is only defined in stm32/Kconfig. Changed to
|
||
CONFIG_STM32F7_SDMMC_DMA and defined in stm32f7/Kconfig (2016-11-07).
|
||
* arch/arm/src/stm32: Add PWM driver support for STMF37xx. The
|
||
changes have been tested successfuly for TIM4 and TIM17 (different
|
||
IPs). From Marc Rechté (2016-11-07).
|
||
* sched/semaphore: sem_trywait() no longer modifies the errno value
|
||
UNLESS an error occurs. This allows these functions to be used
|
||
internally without clobbering the errno value. From Freddie Chopin
|
||
(2016-11-09).
|
||
* arch/arm/src/stm32l4: Change the way to configure quadrature encoder
|
||
prescalers. From Sebastien Lorquet (2016-11-09).
|
||
* libc/unisted: Patch brings strtol() and related functions more
|
||
conformant with POSIX. Corner cases like strtol(-2147483648, NULL, 10)
|
||
now pass clang -fsanitize=integer without warnings. From Juha Niskanen
|
||
(2016-11-10).
|
||
* drivers/sensors and configs/stm32f103-minimum: Add Vishay VEML6070
|
||
driver and support for STM32F103-Minimum board. From From Alan
|
||
Carvalho de Assis(2016-11-13).
|
||
* Misoc LM32: Corrects a bug that never occured in qemu on simulation or
|
||
real fpga. The error was that the r1 register was being modified out of
|
||
context switching and not restoring it. From Ramtin Amin (2016-11-14)
|
||
* arch/arm/src/samv71: A problem occurred with the SAMV7 USBDEVHS driver
|
||
if the USB cable is unplugged while a large amount of data is send over
|
||
an IN endpoint using DMA. If the USB cable is plugged in again after a
|
||
few seconds it is not possible to send data over this IN endpoint again,
|
||
all other endpoints work as expected.
|
||
|
||
The problem occurs because if the USB cable is unplugged while an DMA
|
||
transfer is in flight the transfer is canceled but the register
|
||
SAM_USBHS_DEVDMACTRL is left in an undefined state. The problem was
|
||
fixed the problem by resetting the register SAM_USBHS_DEVDMACTRL to a
|
||
known state. Additionally all pending interrupts are cleared.
|
||
|
||
From Stefan Kolb (2016-11-14).
|
||
* configs/esp32-core: ESP32 Core v2: Add configuration to supporting
|
||
linking NuttX for execution out of IRAM (2016-11-14).
|
||
* libc/unistd: sleep() was returning remaining nanoseconds (kind of),
|
||
instead the remaining seconds. From Eunbong Song (2016-11-15).
|
||
* sched/irq: Fixes for the SMP case: (1) Change order for SMP case in
|
||
enter_critical_section: (1) Disable local interrupts BEFORE taking
|
||
spinlock and (2) If SMP is enabled, if any interrupt handler calls
|
||
enter_critical_section(), it should take the spinlock. (2016-11-15).
|
||
* arch/xtensa: Add EXPERIMENTAL hooks to support lazy Xtensa co-
|
||
processor state restore in the future (2016-11-16).
|
||
* Add some experimental changes to enter/leave_critical_section to
|
||
deal with the case where interrupts are disabled only on the local
|
||
CPU (2016-11-16).
|
||
* sched/irq: Add logic to handled nested calls to
|
||
enter_critical_section() from interrupts handlers (with SMP)
|
||
(2016-11-16).
|
||
* drivers/timer: Remove the timer driver TIOC_SETHANDLER IOCTL call.
|
||
This calls directly from the timer driver into application code. That
|
||
is non-standard, non-portable, and cannot be supported (2016-11-17).
|
||
*drivers/timer: Add timer driver hooks to support signal notification
|
||
of timer expiration. Commented out because invasive interface changes
|
||
would also be required to complete the implementation (2016-11-17).
|
||
* arch/arm/src/armv7-m: Fix double allocation of MPU region in mmu.h
|
||
(2016-11-17).
|
||
* timer driver: Use signal to notify of timer expiration. Add generic
|
||
argument so that there can be additional usage. From Sebastien Lorquet
|
||
(2016-11-17).
|
||
* All timer lower half drivers. Port Sebastien's changes to all all
|
||
other implementations of the timer lower half. Very many just and
|
||
untested. Expect some problems. (2016-11-17).
|
||
* sched/irq: irq_csection() has a bad assumption in the SMP case. It
|
||
assumed that the state of certain variables. That was true on entry
|
||
into the interrupt handler, but might change to the execution of logic
|
||
within the interrupt handler (2016-11-18).
|
||
* config/ nucleo-l476rg: Add support for timers to nucleo l476. From
|
||
Sebastien Lorquet (2016-11-18).
|
||
* drivers/net: Add option to use low-priority work queue to all drivers
|
||
in drivers/net. Not yet added to all architecture-specific network
|
||
drivers (2016-11-18).
|
||
* sched/wdog: Most interrupt handling logic interacts with tasks via
|
||
standard mechanism such as sem_post, sigqueue, mq_send, etc. These all
|
||
call enter_critical_section and are assumed to be safe in the SMP case.
|
||
|
||
But certain logic interacts with tasks in different ways. The only one
|
||
that comes to mind are wdogs. There is a tasking interface that to
|
||
manipulate wdogs, and a different interface in the timer interrupt
|
||
handling logic to manage wdog expirations.
|
||
|
||
In the normal case, this is fine. Since the tasking level code calls
|
||
enter_critical_section, interrupts are disabled an no conflicts can
|
||
occur. But that may not be the case in the SMP case. Most
|
||
architectures do not permit disabling interrupts on other CPUs so
|
||
enter_critical_section must work differently: Locks are required to
|
||
protect code.
|
||
|
||
So this change adds locking (via enter_critical section) to wdog
|
||
expiration logic for the the case if the SMP configuration
|
||
(2016-11-18).
|
||
* SAM3/4: Add delay between setting and clearing the endpoint RESET bit
|
||
in sam_ep_resume(). We need to add a delay between setting and
|
||
clearing the endpoint reset bit in SAM_UDP_RSTEP. Without the delay the
|
||
USB controller will (may?) not reset the endpoint. If the endpoint is
|
||
not being reset, the Data Toggle (DTGLE) bit will not to be cleared
|
||
which will cause the next transaction to fail if DTGLE is 1. If that
|
||
happens the host will time-out and reset the bus. Adding this delay
|
||
may also fix the USBMSC_STALL_RACEWAR in usbmsc_scsi.c, however this
|
||
has not been verified yet. From Wolfgang Reißnegger (2016-11-18).
|
||
* SAM3/4: Remove unused 'halted' flag in UDP driver. From Wolfgang
|
||
Reißnegger (2016-11-18).
|
||
* SAM3/4: Remove 'stalled' flag in UDP driver. The flag is not necessary.
|
||
The state of the endpoint can be determined using 'epstate' instead.
|
||
From Wolfgang Reißnegger (2016-11-18).
|
||
* USBMSC: Fix length of mode6 sense reply packet. From Wolfgang
|
||
Reißnegger (2016-11-18).
|
||
* configs/dk-tm4c129x: Typo fix. From Wolfgang Reißnegger (2016-11-18).
|
||
* Typo fix in sam_udp.c. From Wolfgang Reißnegger (2016-11-18).
|
||
* STM32: STM32F303xB and STM32F303xC chips have 4 ADCs. From Paul A.
|
||
Patience (2016-11-19).
|
||
* vfork(): Fix a race condition in the SMP case. Existing logic
|
||
depended on the fact that the child would not run until waitpid was
|
||
called because the child had the same priority as the parent. BUT
|
||
in the SMP case that is not true... the child may run immediately on
|
||
a different CPU (2016-11-19).
|
||
* arch/: Add option to use low-priority work queue to all Ethernet
|
||
drivers in arch that support CONFIG_NET_NOINTS (2016-11-19).
|
||
* sched/clock: Correct calculation for the case of Tickless mode with
|
||
a 32-bit timer. In that case, the calculation was returning
|
||
millisecond accuracy. That is not good when the timer accuracy is < 1
|
||
msec. From Rajan Gill (2016-11-19).
|
||
* sched/task: task_restart() test not supported on SMP systems. This is
|
||
not fully implemented (2016-11-19).
|
||
* This commit adds a new internal interfaces and fixes a problem with
|
||
three APIs in the SMP configuration. The new internal interface is
|
||
sched_cpu_pause(tcb). This function will pause a CPU if the task
|
||
associated with 'tcb' is running on that CPU. This allows a different
|
||
CPU to modify that OS data stuctures associated with the CPU. When the
|
||
other CPU is resumed, those modifications can safely take place. The
|
||
three fixes are to handle cases in the SMP configuration where one CPU
|
||
does need to make modifications to TCB and data structures on a task
|
||
that could be running running on another CPU. Those three cases are
|
||
task_delete(), task_restart(), and execution of signal handles. In
|
||
all three cases the solutions is basically the same: (1) Call
|
||
sched_cpu_pause(tcb) to pause the CPU on which the task is running,
|
||
(2) perform the necessary operations, then (3) call up_cpu_resume() to
|
||
restart the paused CPU (2016-11-20).
|
||
* task_restart: Make sure new task starts with pre-emption disabled and
|
||
not in a critical section (2016-11-21).
|
||
* Fix a typo in a spinlock macro (2016-11-21).
|
||
* Spinlocks: Added capability to provide architecture-specific memory
|
||
barriers. This was for i.MX6 but does not help with the SMP problems.
|
||
It is still a good feature (2016-11-21).
|
||
* Remove a assertion condition that appears to rarely cause false-alarm
|
||
assertions. Teported by Petteri Aimonen (2016-11-21).
|
||
* The examples/qencoder app was trying to init the encoder by a direct
|
||
call into the board, cheating in a local header to declare the normally
|
||
unavailable function prototype. From Sebastien Lorquet (2016-11-22).
|
||
* configs: All QE encoder files. Last change made timer hard-coded to 3.
|
||
Make configurable (2016-11-22).
|
||
* configs: Remove all traces of the no-longer existent ARCHBUTTONS
|
||
example. Remove all button configurations that depended on the
|
||
obsoleted ARCHBUTTON example (2016-11-22).
|
||
* nucleo-l476rg: Add better selection of timer (2016-11-22).
|
||
* implementation of dumpgpio for stm32l4, was required for pwm debug.
|
||
From Sebastien Lorquet (2016-11-22).
|
||
* SMP: Add logic to avoid a deadlock condition when CPU1 is hung waiting
|
||
for g_cpu_irqlock and CPU0 is waitin for g_cpu_paused (2016-11-22).
|
||
* Misoc: Add timer driver. From Ramtin Amin (2016-11-22).
|
||
* Misoc: Add commits and warnings about missing caculation of the timer
|
||
reload value (2016-11-22).
|
||
* SAM3/4: Name of method is now setcallback, not sethandler (2016-11-22).
|
||
* sam4s-xplained-pro/nsh: Configuration uses old, improper timer interface.
|
||
CONFIG_TIMER disabled in configuration. (2016-11-22).
|
||
* sam4s-xplained-pro: Remove obsolete timer initialization logic
|
||
(2016-11-22).
|
||
* Misoc LM32: Make system timer configurable via CONFIG_USEC_PER_TICK.
|
||
From Ramtin Amin (2016-11-23).
|
||
* LPC43xx: Add timer driver; configs/bambino-200e: Add support for timer
|
||
driver. From Alan Carvalho de Assis (2016-11-23).
|
||
* SMP: Fix backward condition in test (2016-11-23).
|
||
* ARMv7-A SMP: Add a little logic to signal handling (2016-11-24).
|
||
* Misoc LM32: Add signal handling logic. From Ramtin Amin (2016-11-24).
|
||
* SMP: Add spin_trylock(). Use this in conditions where other CPUs need
|
||
to stopped but we cannot call enter_critical_section (2016-11-24).
|
||
* Fix for F1 RTC Clock, tested on F103. From Maciej Wójcik (2016-11-25).
|
||
* SMP: Fix yet another potential deadlock (2016-11-25).
|
||
* Enable CONFIG_RTC in the hymini-stm32v/nsh2 (kitchensink) config.
|
||
From Maciej Wójcik (2016-11-26).
|
||
* This adds support for keeping i.MX6 inter-processor communication data
|
||
in a non-cached address region (2016-11-26).
|
||
* i.MX6: Disable non-cached region support. Add SCU register definitions
|
||
(2016-11-26).
|
||
* i.MX6: Add some controls to enable SMP cache coherency in SMP mode
|
||
(2016-11-26).
|
||
* ARMv7-A: Fix some SCU SMP logic (2016-11-26).
|
||
* ARMv7-A/i.MX6: Modify handling of the SMP cache coherency
|
||
configuration so that it is identical to the steps from the TRM.
|
||
Makes no differenct, however (2016-11-27).
|
||
* The Smoothie project needs to compile C++ inside config/boardname/src/
|
||
to use with High Priority Interruption, then I modified the board
|
||
configs Makefile to support it. It works fine for the first time
|
||
compilation, but if we execute "touch config/boardname/src/Pin.cxx"
|
||
and execute "make" it will not detect that Pin.cxx was modified. I
|
||
think there is some other place I should modify, but I didn't find
|
||
it. From Alan Carvalho de Assis (2016-11-27).
|
||
* ARMv7-A/i.MX6 SMP: Move SMP coherernt cache setup to earlier in
|
||
initialization of CPUn, n>0 (2016-11-27).
|
||
* ARMv7 GIC: SGIs are non-maskable but go through the same path as other,
|
||
maskable interrupts. Added logic to serialize SGI processing when
|
||
necessary (2016-11-27).
|
||
* sched_note: Extend OS instrumentation to include some SMP events
|
||
(2016-11-27).
|
||
* sched_note: Add spinlock instrumentation; In SMP configurations,
|
||
select to log only notes from certain CPUs (2016-11-28).
|
||
* Misoc LM3: Add Misoc Ethernet driver. Integrate network support into
|
||
configs/misoc/hello. Remove configs/misoc/include/generated directory.
|
||
I suppose the the intent now is that this is a symbolic link? DANGER!
|
||
This means that you cannot compile this code with first generating
|
||
these files a providing a symbolic link to this location! From Ramtin
|
||
Amin (2016-11-28).
|
||
* Add tools/showsize.sh (2016-11-28).
|
||
* configs/misoc: Add a sample directory containing generated sources.
|
||
This is really only useful for performing test builds. You really
|
||
must generate the Misoc architecture for a real-life build. From
|
||
Ramtin Amin (2016-11-28).
|
||
* sched_note: Permit spinlock and critical section notes in in-memory
|
||
buffer iff sched_not_get() interfaces is disabled (2016-11-28).
|
||
* STM32 DAC: Fix shift value whenever there are is a DAC2 and, hence,
|
||
up to three interfaces. From Marc Rechté (2016-11-29).
|
||
* Back out a debug change that was included in commit (2016-11-29).
|
||
* i.MX6: Don't output the alphabet if CONFIG_DEBUG_FEATURES is not set
|
||
(2016-11-29).
|
||
* Misoc LM32: Add logic to flush/invalidate caches. From Ramtin Amin
|
||
(2016-11-29).
|
||
* drivers/net/: Adapt all Ethernet drivers to work as though
|
||
CONFIG_NET_MULTIBUFFER were set. Remove all references to
|
||
CONFIG_NET_MULTIBUFFER (2016-11-29).
|
||
* stm32_otghshost: if STM32F446 increase number of channels to 16. From
|
||
Janne Rosberg (2016-11-30).
|
||
* usbhost_composite: fix end offset in usbhost_copyinterface(). From
|
||
Janne Rosberg (2016-11-30).
|
||
* usbhost_cdcacm: add CDC_SUBCLASS_ACM and CDC_PROTO_ATM to supported
|
||
class and proto. From Janne Rosberg (2016-11-30).
|
||
* LPC43 SD/MMC: Correct some git definitions on SMMC control register
|
||
in lpc43_sdmmc.h. From Alan Carvalho de Assis (2016-11-30).
|
||
* STM32L4: Correct USART1/2 definitions. Use default mbed UART4
|
||
settings. From Sebastien Lorquet (2016-12-01).
|
||
* boardctl: Add new boardctl() command ,BOARDIOC_NX_START, to start the
|
||
NX server as a kernel thread (2016-12-01).
|
||
* GPDMA driver for the LPC43xx. The GPDMA block is basically the same
|
||
as the LPC17xx. Only the clock configuration is different and LPC43xx
|
||
has four different DMA request sources, where LPC17xx has only two.
|
||
From Alan Carvalho de Assis (2016-12-01).
|
||
* Remove RGMP and RGMP drivers (2016-12-02).
|
||
* i.MX6: Add an untested SPI driver taken directly from the i.MX1 port
|
||
(2016-12-02).
|
||
* Eliminate CONFIG_NO_NOINTS. There is no longer any support for
|
||
interrupt level processing of the network stack. Lots of files changed
|
||
-> lots of testing needed (2016-12-03).
|
||
* Fix DEBUGASSERT() in group_signal.c. From Masayuki Ishikawa
|
||
(2016-12-04).
|
||
* Add support for the SAM5CMP-DB board. From Masayuki Ishikawa
|
||
(2016-12-04).
|
||
* SAM3/4: Add SMP support for the dual-core SAM4CM. From Masayuki
|
||
Ishikawa (2016-12-04).
|
||
* C Library: Allow option to enable IP address conversions even when the
|
||
IP address family is not supported (2016-12-04).
|
||
* SSD1306: Fix errors in SPI mode configuration. From Gong Darcy
|
||
(2016-12-04).
|
||
* SAMA5 does not build when executing from SDRAM before board
|
||
frequencies are not constant. Rather, the bootloader configures the
|
||
clocking and we must derive the clocking from the MCK left by the
|
||
bootloader. This means lots more computations. This is untested on
|
||
initial commit because I don't have a good PWM test setup right now
|
||
(2016-12-04).
|
||
* Olimex-LPC1766-STK: Enable procfs in NSH configuration. Automount
|
||
/proc on startup (2016-12-05).
|
||
* SAM4CMP-DB: Add hooks to auto-mount the procfs file system on startup
|
||
in board bring-up logic (2016-12-05).
|
||
* Remove all references to BOARDIOC_PWMSETUP and board_pwm_setup()
|
||
(2016-12-05).
|
||
* Remove all references to BOARDIOC_ADCSETUP and board_adc_setup()
|
||
(2016-12-05).
|
||
* Added Timers 2-5 and control of SAI and I2S PLLs. From David Sidrane
|
||
(2016-12-05).
|
||
* Added support for stmf469 SAI and I2S PLL configuration and STM446
|
||
fixes. From David Sidrane (2016-12-05).
|
||
* Expanded otgfs support to stm32F469 and stm32f446. Added missing bits
|
||
definitions, Used stm32F469 and stm32f446 bit definitions, Removed
|
||
unsed header file. From David Sidrane (2016-12-05).
|
||
* Remove BOARDIOC_CAN_INITIALIZE. CAN initialization is now done in the
|
||
board initialization logic just like every other device driver
|
||
(2016-12-06).
|
||
* STM32F7: Allow the config to override the clock edge setting. From
|
||
David Sidrane (2016-12-06).
|
||
* For Cortex-A9, should also set ACTLR.FW in SMP mode to enble TLB and
|
||
cache broadcasts. Does not fix SMP cache problem (2016-12-07).
|
||
* sched notes: Add additional note to see if/when CPU is started in SMP
|
||
mode (2016-12-07).
|
||
* EFM32: Fix a compilation error. From Pierre-noel Bouteville
|
||
(2016-12-07).
|
||
* pthreads: Add pthread_cleanup_push() and pthread_cleanup_pop()
|
||
(2016-12-08).
|
||
* BUGFIX:STM32F427 was rebooting. Over reached family. From David
|
||
Sidrane (2016-12-08).
|
||
* Add pthread_setcanceltype() and pthread_testcancel() (2016-12-09).
|
||
* Added STM32F469 RAM size and deliberated STM32F446 size. From David
|
||
Sidrane (2016-12-09).
|
||
* Typo in stm32f76xx77xx_pinmap.h edited online with Bitbucket. From
|
||
David Sidrane (2016-12-09).
|
||
* stm32_allocateheap.c edited online with Bitbucket. From David Sidrane
|
||
(2016-12-09).
|
||
* LPC43xx SD card: Correct pin configuration options needed for SD card
|
||
pins. From Alan Carvalho de Assis (2016-12-09).
|
||
* pthread_mutex_destroy(): Fix an error in destroying a mutex which can
|
||
occur after a pthread has been canceled while holding the mutex
|
||
(2016-12-09).
|
||
* Add support for cancellation points (2016-12-09).
|
||
* Forgot to add some files in the last commit (2016-12-10).
|
||
* Correct some default font IDs. From Pierre-Noel Bouteville
|
||
(2016-12-10).
|
||
* task_delete() now obeys all cancellation point semantics (2016-12-10).
|
||
* Add task_setcancelstate(), task_setcanceltype(), and task_testcancel().
|
||
These are non-standard interfaces analogous to the correponding pthread_
|
||
interfaces that provide cancellation controls for tasks (2016-12-10).
|
||
|
||
7.19 2016-xx-xx Gregory Nutt <gnutt@nuttx.org>
|