Skip to content
ChangeLog 277 KiB
Newer Older
	* 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
patacongo's avatar
patacongo committed
	  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:
patacongo's avatar
patacongo committed
	  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
patacongo's avatar
patacongo committed
	  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
patacongo's avatar
patacongo committed
	  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.
patacongo's avatar
patacongo committed

patacongo's avatar
patacongo committed
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 whent he 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.
patacongo's avatar
patacongo committed
	* 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.
patacongo's avatar
patacongo committed
	* configs/stm32f3discovery/nsh/defconfig:  Disable SPI.  It is not
	* 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
	* configs/zkit-arm-1769/hello:  Add a "Hello, World!" configuration for
	* configs/zkit-arm-1769/thttpd:  Add a THTTPD configuration for the
	* 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.
patacongo's avatar
patacongo committed
	* 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.
	* 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.
	* mm/ and include/nuttx/mm.h:  Implement support for multiple heaps.
	* 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
patacongo's avatar
patacongo committed
	  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,
	* 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 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
	* 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 (2103-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 (2103-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).
patacongo's avatar
patacongo committed
	* 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 the 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 interrrupts 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 whent 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
Gregory Nutt's avatar
Gregory Nutt committed
	  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
	* 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).
Gregory Nutt's avatar
Gregory Nutt committed
	* 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-xx-xx Gregory Nutt <gnutt@nuttx.org>

	* arch/arm/src/lpc17xx/lpc17_i2c.c:  Interrupts were not being
	  re-enabled in the I2C intialization 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).
Gregory Nutt's avatar
Gregory Nutt committed
	* fs/smartfs:  Add Ken Pettits 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 headef 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_internal.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
	  configurationsf 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 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:
Gregory Nutt's avatar
Gregory Nutt committed
	  Add GPIO support for the STM32L215X (2013-5-18).
	* arch/arm/src/stm32/chip/stm32l15xxx_memorymap.h: STM32L215X memory map
	* 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
	* audio/, drivers/audio, include/nuttx/audio.h:  Add a new audio subsystem
	  and jVS1053 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 Holtberg
	  (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 availalbe, 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 serialized 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).
Gregory Nutt's avatar
Gregory Nutt committed
	* 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 th 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).
Gregory Nutt's avatar
Gregory Nutt committed
	* 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).
Gregory Nutt's avatar
Gregory Nutt committed
	* 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).