diff options
Diffstat (limited to 'nuttx/ChangeLog')
-rw-r--r-- | nuttx/ChangeLog | 334 |
1 files changed, 332 insertions, 2 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog index a8e045616..ed1cf39dc 100644 --- a/nuttx/ChangeLog +++ b/nuttx/ChangeLog @@ -3453,7 +3453,7 @@ * net/uip/uip_icmpping.c: Fix problem that prevented ping from going outside of local network. Submitted by Darcy Gong -6.23 2012-09-29 Gregory Nutt <gnutt@nuttx.org> +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 @@ -3470,4 +3470,334 @@ * 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 the 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 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. + * confgs/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 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-xx-xx Gregory Nutt <gnutt@nuttx.org> |