| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de> that migrates the SH port to
multilib'ing. This patch involved moving a number of
files in the CVS repository, adding new files, and
deleting files from their previous location. Ralf
gave good instructions (not repeated here) and here
are his notes:
Note 1: In this version, I did not change the installation points of
the headers which are moved inside of the source-tree. This is a
temporary hack for not breaking compatibility with 4.5 based BSPs,
but will probably not last once having real multilibs (We would have
include file conflicts when several BSPs/CPU_MODELS share a common
installation prefix).
Note 2: I hope not to have broken too much, but I would not be
astonished if something goes wrong.
Note 3: There are more patches to come :)
|
|
|
|
|
|
| |
mpc8xx libcpu support for the first time and remove includes
of bsp.h, references to BSP_Configuration, and Cpu_table. All
of these can be obtained directly from RTEMS now.
|
| |
|
| |
|
|
|
|
|
|
| |
now is an implementation of the prototypes in rtems/rtems/cache.h.
The libcpu/i386/wrapup directory is no longer needed.
The PowerPC needs this done to it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<charles.gauthier@iit.nrc.ca>, and Darlene A. Stewart
<Darlene.Stewart@nrc.ca> to add support for a number of very
significant things:
+ BSPs for many variations on the Motorola MBX8xx board series
+ Cache Manager including initial support for m68040
and PowerPC
+ Rework of mpc8xx libcpu code so all mpc8xx CPUs now use
same code base.
+ Rework of eth_comm BSP to utiltize above.
John reports this works on the 821 and 860
|
| |
|
| |
|
|
|
|
| |
adds .cvsignore.
|
|
|
|
| |
adds .cvsignore.
|
|
|
|
| |
compiled and there is no comparable code for the C4x.
|
|
|
|
|
|
|
|
|
|
| |
linkcmds updated, simio references removed, and switch to libchip for
serial ports from simio.
Added a MEMORY_MAP file to capture information about the various
addresses on this board.
In addition, many of the beta patches are now included.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that contains:
* Removes remaining (now illegal) references to $(SRC) from a couple of
Makefile.ams
* Removes duplicate AC_CONFIG_SUBDIRS macro from c/configure.in
* Moves ENABLE_LIBCDIR into RTEMS_PROG_C[C|XX]_FOR_TARGET (hides LIBCDIR
from most configure scripts, i.e. LIBCDIR becomes less visible)
* Adds RTEMS_PROG_C[C|XX]_FOR_TARGET and RTEMS_CANONICALIZE_TOOLS to
libbsp/*/configure.ins (A minor bug in previous implementations, which
only has an impact when switching to GNU/Cygnus canonicalization)
* Cleans up several bogus comments.
* Removes MKLIB
* Switches the version number to 4.5.0 (for testing version number
handling)
|
|
|
|
|
|
|
|
|
|
| |
Ralf Corsepius <corsepiu@faw.uni-ulm.de> that contain:
* Modifications, (minor) corrections, cleanups to most existing
Makefile.ams
* Adds automake support to all remaining BSPs which have not yet been
converted to automake.
* Makefile.am for all remaining wrapup/Makefile.ams
|
|
|
|
| |
pc686.cfg was not present.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'd like to propose a change to RTEMS task variables that I think would
make them more useful. I think that it is early enough in their
existence to still make changes to their API.
1) Change type from `int' to `void *'.
2) Add extra argument to task_variable_add -- if non-NULL, a pointer to
a `destructor' function to be called when the task exits. This function
would be called with that task's value of the task variable as its
argument. In many cases, the `dtor' function could be `free'.
rtems_status_code rtems_task_variable_add (
rtems_id tid, void **ptr, void (*dtor)(void *));
rtems_status_code rtems_task_variable_delete (rtems_id tid, void **ptr);
This would be all we'd need to cleanly and efficiently support C++
per-thread exception information without dragging in all that POSIX API
stuff.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
blocking sends when the queue is full. The SuperCore was enhanced
to support blocking on send. The existing POSIX API was debugged
and numerous test cases were added to psxmsgq01 by Jennifer Averett.
SuperCore enhancements and resulting modifications to other APIs
were done by Joel.
There is one significant point of interpretation for the POSIX API.
What happens to threads already blocked on a message queue when the
mode of that same message queue is changed from blocking to non-blocking?
We decided to unblock all waiting tasks with an EAGAIN error just
as if a non-blocking version of the same operation had returned
unsatisfied. This case is not discussed in the POSIX standard and
other implementations may have chosen differently.
|
| |
|
|
|
|
|
| |
and _CORE_message_queue_Insert_message for posix message queues.
+ Yellow line tested new source
|
| |
|
|
|
|
| |
+ Yellow lined tested routine with Posix message queue test (01)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
power binary/mutex style semaphores already supported by RTEMS. This
was done at the request of Eric Norum <eric@cls.usask.ca> in support
of his effort to port EPICS to RTEMS. This change consisted of
changing the nesting_allowed boolean into a lock_nesting_behavior
enumerated value as well as allowing the core mutex object to optionally
support ensuring that the holder of a binary semaphore released it.
Finally, a more subtle enhancement was to allow the non-holder to release
a priority inheritance/ceiling mutex and still allow the holding task
to return to its original priority.
|
| |
|
|
|
|
| |
+ Changed priority to be based off of min and max int.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
use correct ifdef conditional (__GNUC__ not __GCC__).
|
|
|
|
|
| |
"mutex" and counting semaphore. This is at the request of Eric Norum
and his EPICS porting effort.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de>:
The patch below provides
* automake support for score/cpu/powerpc
* The hack to propagate values from *.cfg to automake configuration
* A fix for librdbg/powerpc/mcp750/Makefile.am (Was completely corrupted
before)
* Fixes some files which apparently where missing in
rtems-rc-19991123-rc-2.diff
* some minor configuration related patches
To apply:
rm -rf ./c/src/exec/score/cpu/powerpc/wrap
patch -p1 < rtems-rc-19991123-rc-3.diff
Attention:
c/src/exec/score/cpu/[configure.in|aclocal.m4|configure] should be
removed after applying the patch.
Modifications had been made to the score/cpu/powerpc directory after
the snapshot this was based on. In particular, the mpc750 and
other_cpu directories had been renamed to new_exception_processing
and old_exception_processing. After this patch was applied, modifications
were made to account for this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de>:
The patch below provides
* automake support for score/cpu/powerpc
* The hack to propagate values from *.cfg to automake configuration
* A fix for librdbg/powerpc/mcp750/Makefile.am (Was completely corrupted
before)
* Fixes some files which apparently where missing in
rtems-rc-19991123-rc-2.diff
* some minor configuration related patches
To apply:
rm -rf ./c/src/exec/score/cpu/powerpc/wrap
patch -p1 < rtems-rc-19991123-rc-3.diff
Attention:
c/src/exec/score/cpu/[configure.in|aclocal.m4|configure] should be
removed after applying the patch.
|
|
|
|
|
| |
As part of this effort, the mpc750 libcpu code is now shared with the
ppc6xx.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de> which implements automake support for some
score/cpu/<RTEMS_CPU> subdirectories and fixes a few minor configuration
bugs.
To apply:
rm -rf c/src/exec/score/cpu/a29k/wrap
rm -rf c/src/exec/score/cpu/hppa1.1/wrap
rm -rf c/src/exec/score/cpu/i386/wrap
rm -rf c/src/exec/score/cpu/mips64orion/wrap
rm -rf c/src/exec/score/cpu/no_cpu/wrap
patch -p1 < rtems-rc-19991123-rc-2.diff.gz
Notes:
* I don't see a possiblity to convert the powerpc subdirectory in its
current layout to automake the time being.
* Besides the fact that this subdirectory is not in single-tree building
layout, the actual showstopper is the ifeq $(RTEMS_CPU_MODEL),mpc750)
gmake-conditional in powerpc/Makefile.in, which automake (correctly)
refuses to handle.
* The problem is *not* specific to the powerpc. Other CPUs basically
have similar problems (SH:sh7032 vs sh7045, SPARC: erc32.h in
score/cpu/sparc), but have been lucky to get around real issues (cf.
configuration files below score/cpu/sh/).
* From a configuration focused POV this problem boils down to a
file/subdirectory selection problem:
ppc: 1 or others
sh: 1 out of 2
sparc: 1 out of 1
Automake's means to implement such behavior is using conditionals to be
evaluated at configuration-time. The old configuration scheme however
used make-time conditionals. The SH port was lucky to get around this
issue because it applies a selection from a limited set of possible
selections, the powerpc however applies a selection from an unlimited
set, based on data not being available at configuration time.
* Currently I only see two general solutions:
1) make RTEMS_CPU_MODEL available at configuration time, ie. replace
make-time configuration by configuration-time configuration
2) Perform the selection at build-time, i.e. always install all files,
but use #ifdef #else #endif in source files. This is what the m68k has
exploited at other locations inside of the source-tree.
=> This directory is the last one remaining not using automake below the
whole exec/ hierarchy.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de> which implements automake support for some
score/cpu/<RTEMS_CPU> subdirectories and fixes a few minor configuration
bugs.
To apply:
rm -rf c/src/exec/score/cpu/i960/wrap
rm -rf c/src/exec/score/cpu/m68k/wrap
rm -rf c/src/exec/score/cpu/sh/wrap
rm -rf c/src/exec/score/cpu/sparc/wrap
rm -rf c/src/exec/score/cpu/unix/wrap
patch -p1 < rtems-rc-19991123-rc-1.diff
./bootstrap
Known bugs:
* "make debug|profile" in c/src/src/score/cpu/<RTEMS_CPU/Makefile does
not handle recursion to subdirectories correctly (recurses too often).
However, this issue is hardly visible and should be tolerable for the
moment.
|
|
|
|
|
| |
to convert the libc directory to automake and "dozens of
small fixes for Makefile.ins/configure.ins below c/src/lib."
|
|
|
|
| |
Synthesizer Control Register to remove use of single letter names.
|
|
|
|
|
| |
<corsepiu@faw.uni-ulm.de> to correct the constraints on the
inline assembly language macro for sh_disable_interrupt.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Ralf Corsepius <corsepiu@faw.uni-ulm.de> that adds initial Hitachi SH-2
support to RTEMS. Ralf's comments are:
Changes:
------
1. SH-Port:
* Many files renamed.
* CONSOLE_DEVNAME and MHZ defines removed from libcpu.
* console.c moved to libbsp/sh/shared, build in libbsp/sh/<BSP>/console
applying VPATH.
* CONSOLE_DEVNAME made BSP-specific, replacement is defined in bsp.h
* MHZ define replaced with HZ (extendent resolution) in custom/*.cfg
* -DHZ=HZ used in bspstart.c, only
* Makefile variable HZ used in bsp-dependent directories only.
2. SH1-Port
* clock-driver rewritten to provide better resolution for odd CPU
frequencies. This driver is only partially tested on hardware, ie.
sightly experimental, but I don't expect severe problems with it.
* Polling SCI-driver added. This driver is experimental and completly
untested yet. Therefore it is not yet used for the console (/dev/console
is still pointing to /dev/null, cf. gensh1/bsp.h).
* minor changes to the timer driver
* SH1 specific delay()/CPU_delay() now is implemented as a function
3. SH2-Port
* Merged
* IMO, the code is still in its infancy. Therefore I have interspersed
comments (FIXME) it for items which I think John should look after.
* sci and console drivers partially rewritten and extended (John, I hope
you don't mind).
* Copyright notices are not yet adapted
|
|
|
|
|
|
|
|
|
| |
its name in the name_table. This was required by the POSIX semaphore
and message queue managers which support a concept of open, close, and
unlink. The object becomes "invisible" to further opens following an
unlink but all open sessions remain active until they are closed. This
requires that the removal of an object ID be separate from the removal
of its name.
|
| |
|
| |
|
|
|
|
|
|
|
| |
RTEMS API extension to avoid problems when the extension is freed.
Eventually the task variable switch extension should become part
of the core context switch and the Ada tcb self implemented in
terms of it.
|
| |
|
| |
|