summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* Modified to explicitly list all files as part of C_PIECES.Joel Sherrill1999-10-061-1/+2
|
* Added sections as required by C++ and ELF.Joel Sherrill1999-10-064-3/+14
|
* Added more sections and made minor modifications to let the linkcmdsJoel Sherrill1999-10-068-29/+54
| | | | | work with m68k-elf on late model versions of binutils (990901+) without overlapping or missing section errors.
* Added comment with CVS Id.Joel Sherrill1999-10-051-0/+4
|
* Changed bra.s to bra.l to remove error with new version of binutils.Joel Sherrill1999-10-052-4/+4
|
* Changed bra.s to bra.l to correct compilation error triggered by newJoel Sherrill1999-10-052-2/+2
| | | | version of binutils.
* Corrected so sections did not overlap with new version of binutils.Joel Sherrill1999-10-051-0/+6
|
* Corrected comment.Joel Sherrill1999-10-052-2/+2
|
* Modified to remove reference to Force CPU386. Actually this was a misnamedJoel Sherrill1999-10-051-2/+2
| | | | conditional that should have been fixed long ago.
* Modified to remove error for overlapping sections now thatJoel Sherrill1999-10-051-27/+19
| | | | gnu.linkonce* sections are included.
* Removed targets and configurations that are no longer functionalJoel Sherrill1999-10-0550-4935/+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.
* Minor corrections to get mvme2307 to compile.Joel Sherrill1999-10-0512-24/+24
|
* Patch from Eric Valette <valette@crf.canon.fr> with two smallJoel Sherrill1999-10-052-0/+16
| | | | fixes related to GDB over TCP/IP debug.
* Regenerated.Joel Sherrill1999-10-0516-876/+1133
|
* Motorola MVME2307 BSP submitted by Jay Kulpinski <jskulpin@eng01.gdds.com>.Joel Sherrill1999-10-0438-0/+5142
| | | | No modifications made.
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to make fix bugJoel Sherrill1999-10-049-32/+32
| | | | where wrapup left pieces out of the librtemsall.a.
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-10-048-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The patch below actuallly consists of two patches: 1) moving librpc to c/src/librpc similar to what has been done to librtems++ 2) reworked configure scripts, many safety and dependency checks added to aclocal/*.m4 macros + configuration fixes. To apply: mkdir c/src/librpc mkdir c/src/librpc/src cp c/src/lib/librpc/*.c c/src/librpc/src cp c/src/lib/librpc/Makefile.in c/src/librpc/src mkdir c/src/librpc/include mkdir c/src/librpc/include/rpc cp c/src/lib/include/rpc/* c/src/librpc/include/rpc patch -p1 < ../rtems-rc-19990820-7.diff rm -rf c/src/lib/librpc rm -rf c/src/lib/include/rpc ./autogen The additional checks in aclocal/*m4 macros add rather restrictive, sometimes unnecessarily restrictive constraints on the sequence of how macros can be used in a configure.in script. Adding them has let my problems with some more complicated configuration options vanish. Apparently some macros had not been in the required order . ---- Now I still get some linking errors for some cpus and bsps, esp when linking cdtest, but also at other locations: e.g. this happens for mips64orion/p4600: # make[5]: Entering directory `/lfs/poseidon/users/rtems/src/multi/build/mips64orion-rtems/c/p4600/tests/samples/hello' /opt/rtems/bin/mips64orion-rtems-gcc --pipe -B../../../../../../p4600/lib/ -specs bsp_specs -qrtems -DP4000 -DCPU_R4000 -DP3_DIAG -D_R4000 -D__mips=3 -mcpu=4600 -G0 -I../../../../../../p4600/lib/include/networking -g -Wall -ansi -fasm -O4 -fomit-frame-pointer -o o-p4600/hello.exe o-p4600/init.o ../../../../../../p4600/lib/no-dpmem.rel ../../../../../../p4600/lib/no-event.rel ../../../../../../p4600/lib/no-msg.rel ../../../../../../p4600/lib/no-mp.rel ../../../../../../p4600/lib/no-part.rel ../../../../../../p4600/lib/no-signal.rel ../../../../../../p4600/lib/no-timer.rel ../../../../../../p4600/lib/no-rtmon.rel /opt/rtems/mips64orion-rtems/lib/libc.a(dtoa.o): In function `_dtoa_r': /opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol /opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol /opt/hermes/embedded/build/build-mips64orion-tools/mips64orion-rtems/newlib/libc/stdlib/../../../../../src/newlib/libc/stdlib/dtoa.c:348: relocation truncated to fit: R_MIPS_LITERAL no symbol collect2: ld returned 1 exit status # mips64orion-rtems-gcc -v Reading specs from /opt/rtems/lib/gcc-lib/mips64orion-rtems/2.95.1/specs gcc version 2.95.1 19990816 (release) # mips64orion-rtems-ld -v GNU ld version 2.9.5 (with BFD 2.9.5)
* Removed Makefile.in generated from Makefile.amJoel Sherrill1999-10-049-2853/+0
|
* Removed empty file.Joel Sherrill1999-10-042-0/+0
|
* Patch from Eric Norum <eric@cls.usask.ca> to ensure the consoleJoel Sherrill1999-10-041-9/+9
| | | | initialization is only done once.
* Modified to setup environment pointer on all BSPs. This resultsJoel Sherrill1999-10-041-4/+20
| | | | | in getenv/putenv working all the time without special assistance from the BSP.
* Setup environment pointer for getenv/putenv. Patch from Eric NorumJoel Sherrill1999-10-042-6/+16
| | | | <eric@cls.usask.ca>.
* Regenerated.Joel Sherrill1999-10-0424-184/+214
|
* Applied patch rtems-rc-19990820-6.diff.gz fromJoel Sherrill1999-09-092-0/+3281
| | | | | Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many Makefile.in's to Makefile.am's. This added a lot of files.
* Applied patch rtems-rc-19990820-6.diff.gz fromJoel Sherrill1999-09-07345-687/+813
| | | | | Ralf Corsepius <corsepiu@faw.uni-ulm.de> which converted many Makefile.in's to Makefile.am's. This added a lot of files.
* Missing file from Charles-Antoine Gauthier <charles.gauthier@iit.nrc.ca>Joel Sherrill1999-09-021-0/+223
| | | | added.
* Cleaned up to move conditional to C files -- not Makefile.Joel Sherrill1999-09-023-18/+12
|
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-08-301-1/+1
| | | | | | | | | | Somehow a nasty bug has made it in sh/start.S ("|", instead of "!", to begin an asm comment). I have no idea how this could remain undiscovered for so long (It is in rtems-4.0.0, too!), however upgrading to binutils from sourceware's CVS sh-rtems-as chokes on this bug. => I guess, either binutils changed its conventions or an obvious bug in as has been fixed.
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-08-181-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Here is another fix, which addresses a few more or less severe bugs in configuration and unix/posix: * Configuration fix: c/src/lib/configure.in didn't handle RDBG correctly * Configuration fix: make depend was non-functional in c/src/lib/libc/Makefile.in * Configuration fix: stray comment removed from aclocal/target.m4 * RTEMS fix: termios support for unix/posix now uses the host's headers only (was completely broken). - Don't install RTEMS's newlib sys/termios.h for unix (sys/termios.h apparently is a newlib specific header) - To be able to compile RTEMS's termios.c with glibc2.1, glibc-2.1 needs __USE_MISC, which is a private define from gcc's features.h, being defined only when _BSD_SOURCE of _SVID_SOURCE is defined. RTEMS's termios apparently implements BSD, thus -D_BSD_SOURCE was added to Linux-posix.cfg. - Conflicting definitions for __USE_MISC and _BSD_SOURCE inside of RTEMS codes removed due to definition of _BSD_SOURCE on the toplevel. This fix has been tested with linux/posix (primary glibc2.1 native), linux/posix (secondary libc5 native), sh/gensh1, i386/pc386 and a couple of other bsp's/CPU. To apply: cd <srcdir> patch -p1 < rtems-rc-19990709-9.diff and aclocal -I aclocal && automake && autoconf cd c/src/lib; autoconf or ./autogen
* Patch from Tony R. Ambardar <tonya@ece.ubc.ca>:Joel Sherrill1999-08-1152-44/+4487
| | | | | | | | | | | | | | | | | | | I'm attaching a big patch for the ts_386ex BSP which adds and includes the following: 1) Conversion to ELF format + minor code cleanups + documentation. 2) An Ada95 binding to FreeBSD sockets, based on Samuel Tardieu's adasockets-0.1.3 package. This includes some sample applications. 3) Some Ada and C interfaces to add serial-port debugging to programs. Comes with examples, too; the Ada one shows how transparent adding the support can be. Note that Rosimildo sent me the original C code. The network stuff is not BSP specific, and could be added to your Ada code collection. The debugging stuff is specific to the i386. Right now, everything sits in my "tools" directory.
* Patch from Eric Valette <valette@crf.canon.fr> and Emmanuel RaguetJoel Sherrill1999-08-1022-106/+162
| | | | | | | | | | | | <raguet@crf.canon.fr>: - the dec21140 driver code has been hardened (various bug fixed) Emmanuel, - bug in the mcp750 init code have been fixed (interrupt stack/initial stack initialization), BSS correctly cleared (Eric V) - remote debugging over TCP/IP is nearly complete (berakpoints, backtrace, variables,...) (Eric V), - exception handling code has also been improved in order to fully support RDBG requirements (Eric V),
* New configuration files added by patch fromJoel Sherrill1999-08-101-0/+104
| | | | Ralf Corsepius <corsepiu@faw.uni-ulm.de>".
* Patch rtems-rc-19990709-6-diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>Joel Sherrill1999-08-0633-37/+37
| | | | | applied. This modified many Makefiles and custom files and makes many more settings (network, multiprocessing, etc) gnerated by autoconf.
* Typo -- removed blank line at top of file.Joel Sherrill1999-08-061-1/+0
|
* Patch from Jiri Gaisler <jgais@ws.estec.esa.nl> to fix remote gdb use:Joel Sherrill1999-08-061-67/+73
| | | | | | | | I just released erc32ccs-2.0.6 which includes some fixes and the Ada-self optimisation. Remote debugging of Ada programs did not work due to a conflict between monior and rtems trap handlers. I have attached a modified gnatsupp.c that makes remote debugging possible again.
* Now supports C++ global constructors and exceptions.Joel Sherrill1999-08-053-3/+10
|
* Fixed typo on report from Tony R. Ambardar <tonya@ece.ubc.ca>.Joel Sherrill1999-08-051-1/+1
|
* Patch from Eric Valette <valette@crf.canon.fr> to fix interruptJoel Sherrill1999-08-032-5/+3
| | | | initialization typo and make i8259s_cache only accessed from C.
* Fix By Joel based on suggestion from Ian Lance Taylor <ian@airs.com>Joel Sherrill1999-08-021-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | to fix problem reported by Ralf Corsepius <corsepiu@faw.uni-ulm.de>. Date: Fri, 30 Jul 1999 14:53:20 -0500 (CDT) From: <joel@oarcorp.com> it is used like this in i386ex/start/start.S /* set up same values in cache */ start.S: movw $0xFFFB, SYM(i8259s_cache) I am heading out the door. Any other ideas what could have tripped this? This instruction appears in a .code16 section. In a .code16 section, current versions of gas assume that all addresses are 16 bits unless told otherwise. If you change the line to addr32 movw $0xFFFB, SYM(i8259s_cache) then you will get a 32 bit address reference. You may want to use addr32 only when NEW_GAS is defined.
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-08-021-1/+1
| | | | | | | | | | | | | | The patch below fixes a nasty bug in acpolish, which has broken many Makefile.ins below c/src/tests/ APPLYING THE PATCH: patch -p1 < rtems-rc-19990709-5.diff The essential part of this patch is the diff-fragment for acpolish contained in this patch. Ie. if any of the other diffs do not apply, make sure that the acpolish diff was applied correctly and then run cd <srcdir> tools/update/rtems-polish.sh -ac
* Added more sections to pick up all of the new C++ sections.Joel Sherrill1999-08-021-12/+11
|
* Now correctly does deep copy.Joel Sherrill1999-08-021-2/+2
|
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-07-3017-65/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The main topic is replacing the hard-coded values for HAS_MP and HAS_RDBG in custom/*.cfg with per-bsp configuration-time autoconf checks (This is the patch I had mentioned before earlier this week). CHANGES * HAS_MP removed from custom/*.cfg, replaced with configuration time autoconf check * HAS_RDBG removed from custom/*.cfg, replaced with configuration-time autoconf check * NEW: c/src/make/bsp.cfg.in, takes configuration-time checked per-bsp values (i.e. HAS_MP, HAS_RDBG), gets installed as $(prefix)/<bsp>/make/bsp.cfg * NEW: default.cfg includes bsp.cfg - this change is backward compatible. * IMPORT_SRC: apply VPATH instead for ts_386ex/i386ex subdirectory Makefile.ins * HACK: a bug in acpolish mis-handles addtions to makefile variables which are enclosed in gmake conditionals: c/src/lib/libbsp/m68k/ods68302/start302/Makefile.in * Apply inline_dir, HAS_MP and HAS_RDBG for avoiding configuration of unneeded subdirectories in various configure.in files. * Several minor changes in Makefile.ins and configure.ins, wrt. to the order of including *.cfg and defining Makefile variables APPLYING THE PATCH: patch -p1 < rtems-rc-19990709-4.diff ./autogen
* Fixed typos.Joel Sherrill1999-07-301-2/+2
|
* Corrected typo and added correct conditional compilation on RTEMS_POSIX_API.Joel Sherrill1999-07-301-1/+15
|
* Missed adding file from Eric Valette <valette@crf.canon.fr>.Joel Sherrill1999-07-282-0/+106
| | | | | This file is necessary because the bootloader is compiled with different options than the basic C library.
* Patch from Charles-Antoine Gauthier <charles.gauthier@iit.nrc.ca>.Joel Sherrill1999-07-263-5/+12
| | | | | | | | | | | | | | | | | | | to address m68k-rtemself for the MVME167. Here is the rtems patch I promissed you a long time ago to enable ELF with m68k. The target name I selected is m68k-rtemself. It preserves the m68k-rtems COFF target, and is parterned after the other ELF/COFF dual targets. The mvme167.cfg file causes the -qelf flag to be used during compilation if the name of the compiler contains rtemself. This flag is used in the bsp_specs file to select the elflinkcmds file rather than the linkcmds file. The former is for ELF, the latter for COFF. Some patches are required to the mc68040 FPSP code. Some of the assembler files contain instructions that were rejected by the m68k-rtemself-as assembler. This is a minor bug in the m68k ELF assembler, I think.
* Patch fixing typo from Eric Valette <valette@crf.canon.fr> on bug reportJoel Sherrill1999-07-262-4/+4
| | | | from Jay Kulpinski <jskulpin@eng01.gdds.com>.
* Patch from Eric Valette <valette@crf.canon.fr> based on a tremendousJoel Sherrill1999-07-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | bug report from David Decotigny <David.Decotigny@irisa.fr>: During the last few days, I've been back working on RTEMS. Let me remind you that RTEMS didn't boot on our (old) Dell P90 machines (ref: PC 590) : we could only get a reboot out of them. 1/ The symptoms --------------- Hopefully, the problem was rather deterministic. The stack couldn't be written correctly : issueing one or more "push" would always push '0' onto the stack. The way to solve this was to issue a "pop", such as "pushl eax ; popl eax". After this "pop", the stack would be writeable again. BUT, it will be writable for 8 consecutive "push"s. After these 8 "push"s, the other "push"s are wrong again, and a blank push/pop is needed. Considering that the L1 cache lines of this pentium are 32 bytes long, and that 8 long int are 32 bytes long too, it came to us that there was a problem with the cache. Actually, the bug of the push could be shown through memory accesses directly : writing on an not-in-cache mem location would put 0 until this mem location is accessed through a single "read". Then, the whole cache line would be right again. 2/ The consequences ------------------- Of course, that was the first thing that we've been able to observe ;) RTEMS could not boot. Actually, when a "call" pushed 0 onto the stack, the ret could only lead to raise an exception a bit later. Since, in the early stage, the Interrupt vector points to 0, averything couldn't get worse : triple fault + reboot. 3/ Explanation -------------- This cache mechanism corruption only appeared after load_segment() returned (through a jump). Investigating a bit further shows that this appears /sometimes/ during the PICs initialization. "Sometimes" proved to be "When writing something with the 4th bit of %al set". That is "when writing 0x28 or 0xff" for example. Clearing this bit would just make the things work right. Actually, this isn't a bug in the proper PIC initialization (which is quite academic). It came from the "delay" routine, which theoretically does nothing but writing to an "inexistant" port (0xed), in order to lose some time. BUT, in the special case of our Dell P90, it appears that this 0xed port does something cruel with the cache mechanism when its 4th bit (aka bit 3 or 0x8) is set. I didn't investigate this non-standard behaviour of the P90 any further : I don't know if this is documented, or if it is just another (known ?) bug of the early Pentiums. Just notice that we have 5 such machines, and it has the same effect on the cache mechanism. ----------------------------------------------------------------------
* Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill1999-07-2618-405/+401
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch is an addition to "The big-patch" CHANGES: * FIX: c/Makefile.am: bogus comment which changed the behavior of c/Makefile.am removed * FIX: make/custom/ts_i386ex.cfg did not set HAS_NETWORKING correctly (Me thinks it might have been me who added this bogus setting :-). * NEW: removing make targets get, protos, debug_install, profile_install * NEW: replacing clobber with distclean * NEW: Reimplement distclean and clean as reverse depth first make targets (adaptation to automake's behavior) * NEW: removing RCS_CLEAN from make distclean (tools/build/rcs_clean is still in - remove it?) * NEW: "$(RM) Makefile" added to make distclean (adaptation to automake's behavior) * NEW: "$(RM) config.cache config.log" to CLOBBER_ADDITIONS in [lib|exec|tests]/Makefile.in (adaptation to automake's behavior) * NEW: "$(CLEAN_PROTOS)" removed (Not used anywhere) * NEW: binpatch.c moved from i386 bsp tools to tools/build (AFAIS, binpatch is not specific to the pc386 BSP at all) * NEW: AC_EXEEXT added to all configure scripts which contain AC_PROG_CC (Cygwin support) * NEW/Experimental: An experimental implementation of temporary installation tree support in libbsp/i386/pc386/tools/Makefile.am, based on dependency tracking with make, instead of applying INSTALL_CHANGE. REMARK: * This patch is small in size, but changes the behavior of "make clean|distclean|clobber" basically. * This patch does not alter building/compiling RTEMS, ie. there should be no need to rerun all "make all" building tests. KNOWN BUGS: * make RTEMS_BSP="..." distclean in c/ runs "make distclean" in BSPs subdirectories passed through RTEMS_BSP and in "c/." only, but does not descend into other BSP subdirectories previously configured with different settings of make RTEMS_BSP="...". => Workaround: always use the same setting of RTEMS_BSP when working inside the build-tree. * "make [distclean|clean]" do not clean subdirectories, which have been configured at configuration time, but which are not used due to make-time configuration (e.g. macros/networking/rdgb subdirectories). This will problem will vanish by itself when migrating from make-time to configuration-time configuration APPLYING THE PATCH mv c/src/lib/libbsp/i386/pc386/tools/binpatch.c tools/build patch -p1 < rtems-rc-19990709-2.diff autogen