summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to correct minorJoel Sherrill1998-10-131-2/+2
| | | | cosmetic things.
* Typo which prevented baud rate changes from Thomas Doerfler <td@imd.m.isar.de>.Joel Sherrill1998-10-121-1/+1
|
* BSP submitted by Thomas Doerfler <td@imd.m.isar.de>:Joel Sherrill1998-09-307-221/+1192
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Finally I am through: I have found the last bugs that made RTEMS- 4.0-beta3 start on my ppc403 board from ROM. So now the '403 support is up to date again. Roughly I have added the following features: - support for the on-chip interrupt controller (in a separate module) - interrupt support for the console device - termios support for the console device ============================================== Since the BSP behaivour changed in some details (console no longer is polling, other memory layout etc) I have created a new BSP "helas403" rather than changing the "papyrus" BSP. The old "polled" console driver still sticks around in "console.c.polled" To get the BSP up and running, I had to create the new BSP files (derived from papyrus). Besides that, the following source areas have been changed: - c/src/lib/libcpu/powerpc/ppc403: changes to console driver, small changes to clock driver, new "ictrl" interrupt controller driver - c/src/exec/score/cpu/powerpc/ppc.h: some small changes (added ppc403 characteristics like a exception vector prefix register, some special register definitions). I am quite sure, they are compatible with the existing sources, although I did not check - c/src/exec/score/cpu/powerpc/cpu.c: There is one severe limitation in the exception entries: Due to the current code arrangement, the "branch absolute" to the ISR handler may only jump to the first 128MByte or the last 128MByte of the 4GByte address range. When the ppc403 is running out of ROM, the ROM functions are located in the last 128MByte (0xFFF00000 and up). These addresses were not handled correctly (sign reduced) in "install_raw_handler". The change I added should work on existing ppc BSPs aswell... - c/src/lib/libc/termios.c: During my tests, I added one change you sent me, so this patch will already be incorporated in the current source tree. There are some smaller changes, see the attached diff file. ========================================= Concerning the GNU toolchain: I tried several tool chains. Finally I almost succeeded with egcs-1.0.3a with patch egcs-1.0.3-rtems-diff-19980527 I had to add the following lines to the egcs files. Without them configure complaint that the cross compiler could not generate executable output. - additional lines needed in egcs distribution in file gcc/config/rs6000/rtems.h: +++ lines start #undef STARTFILE_DEFAULT_SPEC #define STARTFILE_DEFAULT_SPEC "ecrti.o%s" #undef ENDFILE_DEFAULT_SPEC #define ENDFILE_DEFAULT_SPEC "ecrtn.o%s" ++++ lines end As far as I have seen in the Changelog of egcs, you have recently sent two patches affecting the powerpc support, but they were added in the wrong order.... :-( egcs-19980628 with patch egcs-19980628-rtems-diff-19980707 does not work! I used binutils 2.9.1 with patch binutils-2.9.1-rtems-diff-19980515 (binutils 2.8.1 does not work, internal error in gas) and newlib-1.8.0 with patch newlib-1.8.0-rtems-diff-19980707 Finally I had to poke a line in the "bit" script, since, on my LINUX machine, the GNU make is only available as "make", not as "gmake"... For all the tools and newlib I selected configuration "powerpc- rtems". -------------------------------------------- IMD Ingenieurbuero fuer Microcomputertechnik Thomas Doerfler Herbststrasse 8 D-82178 Puchheim Germany email: td@imd.m.isar.de
* New file from Ralf.Joel Sherrill1998-09-301-0/+91
|
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1998-09-293-8/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Please find enclosed a patch which enables me to build the bare-bsp for sh-rtems. Changes: 1. Add preinstall to libbsp/bare/include/Makefile.in 2. Removed FORCEIT, add preinstall to libbsp/sh/gensh1/include/Makefile.in 3. Disabled support of set_vector from sh code (shared/setvec.c is still present but isn't used anymore), set_vector replaced with standard rtems functions. Problems still present: 1. Support of spin-delays in bare bsp 2. Proper support of cpu frequency To configure I used: <srcdir>/configure \ --target=sh-rtems \ --prefix=<instdir>/sh-bare \ --enable-bare-cpu-model=sh7032 \ --enable-bare-cpu-cflags='-Wall -m1 -DMHZ=20 -DCPU_CONSOLE_DEVNAME="\"/dev/null\""' --enable-rtemsbsp=bare \ --disable-networking \ --disable-cxx \ --disable-posix \ --disable-tests IMO, if there are no objections to this patch, a similar approach should be applied to all CPUs/BSPs (esp. hppa1.1, mips64orion, ppc403, because they apply set_vector inside of libcpu).
* Patch from Aleksey (Quality Quorum <qqi@world.std.com>):Joel Sherrill1998-09-232-16/+2
| | | | | | | | | | | 1. Finally fixes raw interrupts for pc386 2. Makes some minor cleanup in console and startup 3. Makes rtems_termios_dequeue_characters() to return count of outstanding chars - it allows to simplify console isrs a little bit. 4. pc386 uart modified to be friendlier to termios parameter changes, to have minor performance improvement and to take advantage of of above termios modification.
* Update from Aleksey (Quality Quorum <qqi@world.std.com>) to pick up someJoel Sherrill1998-09-212-32/+92
| | | | patches missing from 980911.
* Patch from Eric Valette <valette@crf.canon.fr> to add an extra newline.Joel Sherrill1998-08-241-0/+1
|
* Patch from Eric Valette <valette@crf.canon.fr>:Joel Sherrill1998-08-211-2/+1
| | | | | | | | | | Here is a patch that enables to catch exception and get message before crashing RTEMS :) It should be generic to any Intel port although enabled only for pc386 BSP... [Joel] I fixed the bug I introduced in irq_asm.s...
* Patch from Eric Valette <valette@crf.canon.fr> which brings the i386ex BSPJoel Sherrill1998-08-054-9/+25
| | | | inline with the new IRQ structure.
* Automatic CPU type detection code from Eric Valette <valette@crf.canon.fr>.Joel Sherrill1998-08-056-6/+664
| | | | Enabled on the pc386.
* Patch from Eric VALETTE <valette@crf.canon.fr>:Joel Sherrill1998-07-236-0/+1126
| | | | | | | | | | | | | Here is a enhanced version of my previous patch. This patch enables to potentially share the new interrupt management code for all Intel targets (pc386, go32 and force386) bsp. Note : this patch is complete only for pc386. It still needs to be completed for go32 and force386. I carrefully checked that anything needed is in for force386 (only some function name changes for IDT manipulation and GDT segment manipulation). But anyway I will not be able to test any of theses targets...
* Added optimized version of memcpy.c to this directory since RTEMS makesJoel Sherrill1998-06-121-0/+87
| | | | | | important distinctions between CPU models which are not made by gcc. These distinctions help give us a more optimized memcpy(). This is important for message queues and KA9Q.
* Fix from Ralf Corsepius:Joel Sherrill1998-04-271-6/+1
| | | | | | use a wildcard rule instead of explicit listing all include files (I have more libcpu header files than the public version has. This patch removes the need to patch this Makefile for my private bsps)
* Rename hppa1_1 to hppa1.1 and switched to using __XXX__ macros forJoel Sherrill1998-03-242-2/+2
| | | | the CPU family name constants.
* New port from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.Joel Sherrill1998-03-2020-0/+1546
|
* SH port submitted from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.Joel Sherrill1998-03-203-0/+874
|
* updated copyright to 1998Joel Sherrill1998-02-1710-10/+10
|
* Big patch form Ralf Corsepius described in this email:Joel Sherrill1998-01-3024-96/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Here is the result of my nightly work to get RTEMS_ROOT=$srcdir working with different shells and relative/absolute paths. What I did is relatively simple in principle: Instead of setting RTEMS_ROOT in configure.in and then let configure substitute @RTEMS_ROOT@ inside the Makefiles, I now let each Makefile set RTEMS_ROOT from each Makefile's @top_srcdir@ value. The difference is subtile, but with enormous side effects: - If RTEMS_ROOT is set in configure, then the same single value will be propagated to all Makefiles. This breaks using relative paths, as the relative path to the root of the source tree is used inside of all subdirectory Makefiles. - Now each Makefile.in sets RTEMS_ROOT = @top_srcdir@. top_srcdir is computed individually by configure for each single Makefile.in, hereby receiving the correct value, no matter if relative or absolute paths are used. To get this working, I needed to remove setting RTEMS_ROOT from target.cfg.in, because this overrides the value of RTEMS_ROOT from each individual Makefile. Furthermore, I removed RTEMS_CUSTOM from the Makefiles and replaced all "include $(RTEMS_CUSTOM)" directives with"include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP)". Perhaps you don't like this, but I think, to have one variable less is clearer and easier to understand than having several variables refering to the next one. I enclose a small patch to this mail, which - fixes the config.h problem (to finally clearify misunderstands) - removes assignment/subsitution of RTEMS_ROOT from configure.in - contains a workaround for the application Makefile's RTEMS_ROOT problem (reported by Eric) - removes some unused lines from the toplevel Makefile.in - removes assignment of RTEMS_ROOT from make/target.cfg.in
* Removed CONFIG_DIR and PROJECT_HOME directories.Joel Sherrill1998-01-2024-24/+24
|
* Ralf Corsepius reported a number of missing CVS Id's:Joel Sherrill1998-01-1644-3/+91
| | | | | | | | | | > RTEMS is under CVS control and has been since rtems 3.1.16 which was > around May 1995. So I just to add the $Id$. If you notice other files > with missing $Id$'s let me know. I try to keep w\up with it. Now that you have asked -- I'll attach a list of files lacking an RCS-Id to this mail. This list has been generated by a little sh-script I'll also enclose.
* Modified a lot of files to take a first cut at supporting building fromJoel Sherrill1997-12-1024-24/+96
| | | | | any directory in the build tree. The only variable which must be set before the command "gmake" is invoked is RTEMS_BSP (e.g. RTEMS_BSP=erc32).
* Fixed incorrect reference to RTEMS_BSP instead of RTEMS_BSP_FAMILY.Joel Sherrill1997-10-091-1/+1
|
* Fix from Eric Norum to assemble under COFF.Joel Sherrill1997-10-081-9/+9
|
* Fixed typo in the pointer to the license terms.Joel Sherrill1997-10-0812-24/+24
|
* Removed include directory at "build" point and the link of this directoryJoel Sherrill1997-10-082-2/+2
| | | | | | to lib/include. Went to using a PROJECT_INCLUDE variable.
* Corrected descent to a hardcoded directory and made it dependent on the cpu ↵Joel Sherrill1997-08-041-1/+1
| | | | model
* This code was in the tree but not actually being compiled. ThereJoel Sherrill1997-07-0934-140/+140
| | | | | | | were a number of minor problems which had to be fixed to get it to compile including modifying the compile rule to handle C++ comments, changing the syntax of the include statement, and getting rid of "%" as part of register names.
* updated with new license information per Tony Bennett.Joel Sherrill1997-04-222-40/+12
|
* headers updated to reflect new style copyright notice as partJoel Sherrill1997-04-2210-50/+50
| | | | of switching to the modified GNU GPL.
* Added CVS Id'sJoel Sherrill1997-04-162-0/+7
|
* Added the MC68040 Floating Point Support Package. This was portedJoel Sherrill1997-04-1647-0/+16820
| | | | | to RTEMS by Eric Norum. It is freely distributable and was acquired from the Motorola WWW site. More info is in the FPSP README.
* commented out sccs_id's to eliminate warnings.Joel Sherrill1997-04-074-12/+28
|
* This set of changes is the build of what was required to convert toJoel Sherrill1997-04-0122-0/+2798
| | | | | | | | | | | | | | | | | | | | GNU autoconf. This is the first large step in allowing an RTEMS user to perform a one-tree build (per crossgcc FAQ) including RTEMS in the build process. With this change RTEMS is configured in built in the same style as the GNU tools, yet retains the basic structure of its traditional Makefiles (ala Tony Bennett). Jiri Gaisler (jgais@wd.estec.esa.nl) deserves (and received) a big thank you for doing this. There are still issues to be resolved but as of this commit, all target which can be built on a linux host have been using a modified version of the source Jiri submitted. This source was merged and most targets built in the tree before this commit. There are some issues which remain to be resolved but they are primarily related to host OS dependencies, script issues, the use of gawk for hack_specs, and the dependence on gcc snapshots. These will be resolved.
* added decrementer entry.Joel Sherrill1997-03-211-0/+17
|
* Minor change to eliminate incorrect use of unaligned register.Joel Sherrill1997-01-291-1/+2
|
* Changes to reflect new revision of erc32 per Jiri Gaisler's suggestions.Joel Sherrill1996-12-021-19/+17
| | | | This is current as of sis 2.6.
* patches to erc32.h to correct handling of timer mirror from Jiri Gaisler.Joel Sherrill1996-10-141-3/+3
|
* changed INLINE to inline since INLINE is no longer defined by RTEMSJoel Sherrill1996-09-302-2/+2
|
* added $ string to file headerJoel Sherrill1996-09-1110-4/+10
|
* added definition of EXT_INT5Joel Sherrill1996-09-082-2/+2
|
* removed need for exceptbdr.h fileJoel Sherrill1996-09-062-2/+2
|
* new file for MIPS port by Craig Lebakken (lebakken@minn.net) andJoel Sherrill1996-09-0610-0/+966
| | | | Derrick Ostertag (ostertag@transition.com).
* ERC32_Force_interrupt implementation replaced per Jiri Gaisler's experienceJoel Sherrill1996-08-081-0/+5
| | | | on the real erc32 hardware.
* updates from Tony BennettJoel Sherrill1996-05-231-0/+1
|
* update from Andy Bray <andy@i-cubed.co.uk>Joel Sherrill1995-12-057-194/+139
|
* typos fixedJoel Sherrill1995-10-312-0/+272
|
* SPARC port passes all testsJoel Sherrill1995-10-301-0/+503
|
* fixed missing CVS IDsJoel Sherrill1995-10-061-0/+4
|
* all targets compile .. tony's patches in placeJoel Sherrill1995-09-291-1/+4
|