This modification is part of the submitted modifications necessary to
support the IBM PPC405 family. This submission was reviewed by
Thomas Doerfler <Thomas.Doerfler@imd-systems.de> who ensured it did
not negatively impact the ppc403 BSPs. The submission and tracking
process was captured as PR50.
* shared/asm.h, shared/ppc.h: Added PPC405 support.
Reported by Ibragimov Ilya <ibr@oktet.ru> and tracked as PR63.
* libc/chdir.c: Check for search/execute permissions on chdir.
This requires passing RTEMS_LIBIO_PERMS_SEARCH to
rtems_filesystem_evaluate_path().
Discovered while fixing PR36 reported by Todor.Todorov@barco.com.
* include/rtems/itron/object.h: Corrected _ITRON_Objects_Get()
to use _Objects_Get_by_index().
Reported by Todor.Todorov@barco.com and tracked as PR36.
* include/rtems/score/object.h: Added prototype for
_Objects_Get_by_index().
* src/objectget.c, src/objectgetisr.c: Corrected procedure for
getting index from Id so it is correct and optimal for both single
and multiprocessor configurations.
* libc/unmount.c: Primarily restructuring and clean up to address
procedures which did not do what their name implied. Also addressed
problem situation where unmount fails and the filesystem was
inconsistent. The mounted filesystem could have been left hanging.
* libc/libio.c: Initialize more fields to NULL/0 during initialiation.
* include/rtems/libio_.h: Fix freenode macro so it works for sockets
which do not have the full set of filesystem operations and are
initialized via something other than open().
* These changes were discussed and reviewed by many people but the
primary people were Jennifer Averett <jennifer@OARcorp.com>
and Eugeny Mints <jack@oktet.ru>.
* libc/utime.c: Add missing call to rtems_filesystem_freenode()
at verification that utime is supported by the filesystem.
* libc/link.c: Remove calls to freenode when the node was
not successfully allocated.
* libc/unmount.c: In the method file_systems_below_this_mountpoint()
added calls to correctly free fs_root_loc when a failure occurs.
* libc/open.c: Add freenode calls upon failure.
* libc/open.c, lib/libc/close.c: (PENDING -- NOT INCLUDED THIS TIMER)
Modifications the move the freenode from open() to close() (also part
of this patch) are pending further discussion.
* include/confdefs.h, include/rtems/config.h, include/rtems/io.h,
optman/no-io.c, src/exinit.c, src/io.c: Added a device driver
register/unregister interface to allow device drivers to be
installed and removed at runtime. This means you do not need devices
present in the device table when you build.
* asm.h, cpu.c, rtems.c, rtems/score/cpu.h, rtems/score/sh.h,
rtems/score/sh_io.h, rtems/score/shtypes.h: Consistency changes
and made sure there were no includes from the libcpu tree.
* cpu.c, rtems/score/cpu.h, rtems/score/sh.h: Modified to
support SH4. Reviewed by Ralf Corsepius <corsepiu@faw.uni-ulm.de>
who did the original SH port.
* cpu_asm.S: _CPU_Context_save_fp in was incorrectly in conditional
compilation block with (CPU_HARDWARE_FP == FALSE). Reported by
Wayne Bullaughey <wayne@wmi.com>.
* libc/termios.c: Fixed a memory leak in the termios
software. Basically the tty open function was allocating an input
raw buffer, an output raw buffer, and a cooked buffer that were
not getting released. I have attached a patch for the latest
snapshot. The patch also has a fix to ensure the tty link list
is updated correctly when a tty is closed.
* cpu_asm.S: Small patch to fix a bug in the rtems sparc port. The
bug has been there all the time, but only hits the leon bsp since the
leon cpu has a 5-stage pipeline (erc32 has 4 stages).
* include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* include/Makefile.am: Use 'PREINSTALL_FILES ='.
* inline/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* macros/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* include/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
* include/rtems/Makefile.am: Use 'PREINSTALL_FILES ='.
* inline/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.
* macros/rtems/score/Makefile.am: Use 'PREINSTALL_FILES ='.