summaryrefslogtreecommitdiffstats
path: root/cpukit/score/cpu (unfollow)
Commit message (Collapse)AuthorFilesLines
2000-07-11Patch rtems-rc-20000711-1-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill7-7/+7
that decouples exec/ for the sh, m68k and i960 from targopts.h. NOTE: The change to system.h is a hack to enable cpuopts.h for some targets, but keep using targopts.h for others - I know it does *not* work for sparc, mips, i386 and ppc. This will have to be addressed as work continues on multilibing.
2000-07-07Moved old_exception_processing and new_exception_processing directoriesJoel Sherrill1-7/+1
from score/cpu to libcpu because the determination of which to use is based on RTEMS_CPU_MODEL. Thus it can not be determined based solely on multilib information.
2000-07-03Interrupt stack is allocated in _ISR_Handler_initialization notJoel Sherrill8-8/+8
_Interrupt_Manager_initialization.
2000-07-03Changed extra_system_initialization_stack to extra_mpci_receive_server_stackJoel Sherrill1-1/+1
to be consistent with other ports.
2000-06-29This is the initial addition of the port of RTEMS to theJoel Sherrill12-0/+1979
Hitachi H8 family. This port was done by Philip Quaife <philip@qs.co.nz> of Q Solutions and sponsored by Comnet Technologies Ltd. The port was done based on RTEMS 3.5.1 to a Hitach H8300H. The port was updated to RTEMS 4.5 style Makefiles/configure by Joel Sherrill <joel@OARcorp.com>. While doing this Joel added support for the h8300-rtems to binutils, gcc, newlib, and gdb. NOTE: Philip submitted a BSP for a Hitachi evaluation board which is being merged as a separate entity.
2000-06-15Remove pragma align 4Joel Sherrill1-2/+0
2000-06-14Patch rtems-rc-20000614-sh.tar.gz from Ralf CorsepiusJoel Sherrill2-11/+12
<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 :)
2000-06-14Moved PowerPC cache management code to libcpu. Also compiledJoel Sherrill1-151/+0
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.
2000-06-13Added crude i960ka support.Joel Sherrill3-6/+38
2000-06-13Moved i386 and m68k cache management code to libcpu. EverythingJoel Sherrill2-306/+0
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.
2000-06-12Patch from John Cotton <john.cotton@nrc.ca>, Charles-Antoine GauthierJoel Sherrill5-10/+542
<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
2000-06-12Works on Solaris and Linux.Joel Sherrill1-8/+6
2000-06-12Merged from 4.5.0-beta3aJoel Sherrill33-88/+527
2000-04-13Patch rtems-rc-4.5.0-13-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.Joel Sherrill11-0/+66
adds .cvsignore.
2000-04-13Patch rtems-rc-4.5.0-13-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.Joel Sherrill24-0/+136
adds .cvsignore.
2000-03-01Added routines to get and set C3x IOF register. The code is conditionallyJoel Sherrill2-26/+142
compiled and there is no comparable code for the C4x.
2000-02-29BSP now compiles and links with CAVSL board information. This includesJoel Sherrill1-3/+3
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.
2000-02-22New port of RTEMS to TI C3x and C4x.Joel Sherrill12-0/+3149
2000-01-31Patches rtems-rc-20000118-3.diff and rtems-rc-20000118-4.diff fromJoel Sherrill12-212/+165
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
2000-01-27Added after report from Quality Quorum <qqi@world.std.com> thatJoel Sherrill1-0/+5
pc686.cfg was not present.
2000-01-14Removed warning.Joel Sherrill2-2/+4
2000-01-04Removed unitialized variable warning.Joel Sherrill1-4/+3
2000-01-03Increased stack size to 4K per Eric Norum.Joel Sherrill1-1/+1
2000-01-03Increased minimum stack size so all tests will run.Joel Sherrill1-1/+1
1999-12-13Patch from Jepsen Hans Peter <hans_peter_jepsen@Danfoss.com> toJoel Sherrill1-1/+1
use correct ifdef conditional (__GNUC__ not __GCC__).
1999-12-03Patch rtems-rc-19991123-rc-3.diff from Ralf CorsepiusJoel Sherrill1-3/+3
<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.
1999-12-02Patch rtems-rc-19991123-rc-2.diff from Ralf CorsepiusJoel Sherrill2-0/+31
<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.
1999-12-02Merged of mcp750 and mvme2307 BSP by Eric Valette <valette@crf.canon.fr>.Joel Sherrill1-2/+2
As part of this effort, the mpc750 libcpu code is now shared with the ppc6xx.
1999-12-01 Patch rtems-rc-19991123-rc-2.diff from Ralf CorsepiusJoel Sherrill6-0/+318
<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.
1999-12-01Patch rtems-rc-19991123-rc-1.diff from Ralf CorsepiusJoel Sherrill5-0/+240
<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.
1999-11-22Changed name of W, X, and Y macros for fields in the ClockJoel Sherrill2-18/+18
Synthesizer Control Register to remove use of single letter names.
1999-11-22Small patch (rtems-rc-19991117-5.diff) from Ralf CorsepiusJoel Sherrill1-1/+1
<corsepiu@faw.uni-ulm.de> to correct the constraints on the inline assembly language macro for sh_disable_interrupt.
1999-11-18Minor cleanup to reduce the code space.Joel Sherrill1-14/+9
1999-11-18Patch from "John M. Mills" <jmills@tga.com> with subsequent cleanup fromJoel Sherrill3-4/+16
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
1999-11-17Updated copyright notice.Joel Sherrill45-83/+45
1999-11-16Only check for System V IPC if multiprocessing is enabled. The unixJoel Sherrill2-1/+11
port only uses System V IPC for shared memory and semaphores to communicate between nodes in a multiprocessor configuration. If you disable multiprocessing, then this code should be unused. Thus systems like Cygwin which are POSIX but do not support System V IPC should not work.
1999-11-05This is another pass at making sure that nothing outside the BSPJoel Sherrill11-2/+127
unnecessarily uses any variables defined by the BSP. On this sweep, use of BSP_Configuration and Cpu_table was eliminated. A significant part of this modification was the addition of macros to access fields in the RTEMS configuration structures. This is necessary to strengthen the division between the BSP independent parts of RTEMS and the BSPs themselves. This started after comments and analysis by Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
1999-11-04The files in libcpu should not be directly dependent on any BSP. InJoel Sherrill2-2/+8
particular, using bsp.h, or getting information from the BSP which should properly be obtained from RTEMS is forbidden. This is necessary to strengthen the division between the BSP independent parts of RTEMS and the BSPs themselves. This started after comments and analysis by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. The changes primarily eliminated the need to include bsp.h and peeking at BSP_Configuration. The use of Cpu_table in each BSP needs to be eliminated.
1999-10-28Patch rtems-rc-19991011-3.diff from Ralf Corsepius.Joel Sherrill1-25/+0
1999-10-27rxgen960 now compiles -- may not link.Joel Sherrill1-3/+3
1999-10-27The rxgen960 BSP and i960 RPM support was submitted by Mark BronsonJoel Sherrill3-43/+245
<mark@ramix.com> of RAMIX.
1999-10-26Patch from Gerwin Pfab <pb@schenk.isar.de> to leave dispatchingJoel Sherrill1-3/+4
disabled on exit to ISR Thread dispatching. This allows a context switch to finish under high high interrupt rates.
1999-10-05Removed targets and configurations that are no longer functionalJoel Sherrill3-33/+0
and not likely to become so. Comments on each configuration are below. + Force CPU386 - This BSP was developed as part of the initial port of RTEMS to the i386. This board has been unavailable for a long time now. + GO32 - This BSP and some CPU code supported djgpp v1.x. This version is now quite old. No one has stepped forward to update the code to v2.x which may be technically impossible anyway. More importantly, go32 has been superceded by the pc386 BSP.
1999-10-05Bug report and fix from Jay Kulpinski <jskulpin@eng01.gdds.com> whereJoel Sherrill1-3/+2
sigemptyset(&old_mask) needed to be added on glibc2 systems. Ian Lance Taylor pointed out that sigemptyset() is portable so Joel removed all conditionals around calls to sigemptyset().
1999-08-26Typo causing compilation failure spotted by Ralf Corsepius andJoel Sherrill1-1/+1
fixed by Joel.
1999-08-19Support for MPC505 from Sergei Organov <osv@Javad.RU>. His patch wasJoel Sherrill1-0/+17
against 3.6.0 so was painful to merge. It should be OK but there is no guarantee and there are no BSPs in the tree to exercise it.
1999-08-18Patch from Jimen Ching <jimen@adtech-inc.com>:Joel Sherrill1-0/+45
Please take a look at this new patch. It contains a cleaner implementation of the reset operation. These patches are against 4.0.0. But the files did not change from the 3.6.0 release. Also, the cpu.h patch below still applies. I.e. instead of using i960ca_PRCB, use i960_PRCB. Explanation: The previous patch removed the use of the reset instruction, because it always fails. But this was due to the fact that some of the registers were corrupted by the re-init procedure. The new patches save and restore those registers when a re-init is done.
1999-08-18Slightly cleaner way to switch on the CPU model.Joel Sherrill1-6/+10
1999-08-12Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1-14/+8
After upgrading my linux box to the brand new SuSE 6.2 release, which is glibc-2.1 based, I came across a bug in RTEMS - IIRC, I even warned you about it about 1/2 a year ago, but nothing has been done since then :-. The *.m4 macros to check for SYSV/IPC are broken for linux/glibc2.1, because they assume that linux always defines union semun, which isn't true anymore for glibc2.1 (the manpage for semctl states _X_OPEN specifies it this way). Therefore I have tried to implement a more general approach for handling SYSV for unix/posix which checks for presence of struct semun, instead of trying to evaluate OS specific preprocessor symbols. This approach is a bit adventureous, because I only tested it with linux/glibc2.1 and linux/libc5, but not under other Unix variants RTEMS supports. I am quite confident it will work on other hosts, too, but who knows :-. [FYI: I think this might also is the cause of some problems with RedHat 6.X / Mandrake linux recently reported on the rtems list -- rtems-4.0.0 can not be build for posix on any glibc2.1 based host] Furthermore the patch below contains a couple of minor fixes and configuration cleanups, which IMO should be applied before releasing a new snapshot. To apply this patch: cd <source-tree> patch -p1 < rtems-rc-19990709-8.diff ./autogen
1999-07-29Patch from Charles-Antoine Gauthier <charles.gauthier@iit.nrc.ca>Joel Sherrill12-13/+16
to correct a typo CPU_HAS_OWN_HOST_TO_NETWORK_ROUTINES was actually typed in as CPU_CPU_HAS_OWN_HOST_TO_NETWORK_ROUTINES.