Commit Graph

2140 Commits

Author SHA1 Message Date
Joel Sherrill
1178b8cabb Splitting the Thread Handler forced the inclusion of more prototypes. 1999-05-17 22:19:29 +00:00
Joel Sherrill
2f831ac1fe Moved _Entry_Table to its own file to avoid having every RTEMS directive
pulled in.
1999-05-17 22:16:52 +00:00
Joel Sherrill
d785158293 Added simple test to find minimum code size of executive with this BSP
and RTEMS configuration.
1999-05-17 22:15:56 +00:00
Joel Sherrill
c4d69e21a7 Split Task Manager into multiple files. Eventually this effort will
reduce the size of executables.
1999-05-17 21:02:16 +00:00
Joel Sherrill
05df0a846f Thread Handler split into multiple files. Eventually, as RTEMS is
split into one function per file, this will decrease the size of executables.
1999-05-17 20:41:13 +00:00
Joel Sherrill
a238cc97d0 Patch from D. V. Henkel-Wallace <gumby@zembu.com> to remove compiler
warnings.
1999-05-17 15:45:15 +00:00
Joel Sherrill
577c408009 Patch from D. V. Henkel-Wallace <gumby@zembu.com>:
Here's a tiny patch that shreds memory returned to the pool (such as by
  free() and delete). This may help people find some nasty
  bugs, so here it is.
1999-05-17 15:28:52 +00:00
Joel Sherrill
fcf17a4f69 Added testing for C++ exceptions from Rosimildo DaSilva
<rdasilva@connecttel.com>.
1999-05-14 16:25:15 +00:00
Joel Sherrill
44dd8a6116 Added 3COM 3C509 driver from Rosimildo DaSilva <rdasilva@connecttel.com>. 1999-05-14 16:23:42 +00:00
Joel Sherrill
c5881fc155 Enabled compilation of rtems_servers at request of Jake Janovetz
<janovetz@tempest.ece.uiuc.edu>.
1999-05-14 15:31:07 +00:00
Joel Sherrill
a0b94685cd Removed check for initialized ID at request of Rosimildo DaSilva
<rdasilva@connecttel.com> who encountered random failures in his
port of omniORB2.
1999-05-14 14:43:53 +00:00
Joel Sherrill
4c5080ed09 Fix based on bug report from Jay Kulpinski <jskulpin@eng01.gdds.com>
that the per task reentrancy structure was not being processed properly
during exit().

joel@oarcorp.com wrote:
>
>
> This is always an ugly place to poke around. :(
>
> The code in newlib/libc/stdlib/exit.c walks the atexit chain for the
> reentrancy structure for JUST the current task.  The code in libc_wrapup()
> does it for both the current task and the global reentrancy structure
> (which tends to be where driver atexit()'s were registered.
>
> So I think the _wrapup_reent(0) in libc_wrapup() should be commented out.
>
> If you concur, then I will make the change and improve the comment on this
> line of code to explain things:
>
>     libc_wrapup(); /* Why? XXX */
>
> --joel

That does the job.  cdtest.exe works correctly now.
1999-05-11 16:30:51 +00:00
Joel Sherrill
ddd22e5d0d Patch from Erik Ivanenko <erik.ivanenko@utoronto.ca> to correct 32 bit
jmp relative offset from .reset section.
1999-05-11 15:15:03 +00:00
Joel Sherrill
5a909149ca Made all calls to _Thread_Yield_processor consistent in how they are
wrapped by calls to _Thread_Enable_dispatch and _Thread_Disable_dispatch.
1999-05-07 17:09:20 +00:00
Joel Sherrill
16775a5535 Patch from Jiri Gaisler <jgais@ws.estec.esa.nl> to allow stacksize
of POSIX Init thread to be user configured.
1999-05-07 16:36:29 +00:00
Joel Sherrill
0700136005 Added rules to handle alternate suffixes for C++ files. 1999-05-07 16:31:08 +00:00
Joel Sherrill
acb644a66f Error reporting fixed by Jennifer. 1999-05-07 16:30:44 +00:00
Joel Sherrill
c34aaae7e6 Bug fix from Gunter Magin <magin@@skil.camelot.de>:
in libcpu/powerpc/mpc860/clock/clock.c:InstallClock() the reload value for
    the PIT is defined as:

      pit_value = (BSP_Configuration.microseconds_per_tick *
                 Cpu_table.clicks_per_usec) - 1 ;

    What exactly is a tick, and what is a click?

    My confusion stems from the fact, that Jay defines clicks_per_usec to 1
    which is correct for his configuration, where a 4MHz clock is predivided
    by 4 and then fed to the PIT. So I assume a "click" is just the period of
    the PIT input frequency.

    However, our HW config seems to have 32.768 kHz crystal input for PIT.
    Mandatory division by 4 means 8.196kHz (122usec) at the PIT.

    I think, the above assignment should read:

      pit_value = (BSP_Configuration.microseconds_per_tick /
                 Cpu_table.clicks_per_usec) - 1;

    where I can define Cpu_table.clicks_per_usec in bspstart.c to 122
    (clicks_per_usec). That would lead to a PIT reload value of
    10000/122 - 1 = 81 to reach a 10ms "tick" period.
1999-05-07 16:29:54 +00:00
Joel Sherrill
b06279dfc0 Bug fix from Gunter Magin <magin@skil.camelot.de>:
in libcpu/powerpc/mpc860/clock/clock.c:InstallClock() the reload value for
    the PIT is defined as:

      pit_value = (BSP_Configuration.microseconds_per_tick *
                 Cpu_table.clicks_per_usec) - 1 ;

    What exactly is a tick, and what is a click?

    My confusion stems from the fact, that Jay defines clicks_per_usec to 1
    which is correct for his configuration, where a 4MHz clock is predivided
    by 4 and then fed to the PIT. So I assume a "click" is just the period of
    the PIT input frequency.

    However, our HW config seems to have 32.768 kHz crystal input for PIT.
    Mandatory division by 4 means 8.196kHz (122usec) at the PIT.

    I think, the above assignment should read:

      pit_value = (BSP_Configuration.microseconds_per_tick /
                 Cpu_table.clicks_per_usec) - 1;

    where I can define Cpu_table.clicks_per_usec in bspstart.c to 122
    (clicks_per_usec). That would lead to a PIT reload value of
    10000/122 - 1 = 81 to reach a 10ms "tick" period.
1999-05-07 16:28:43 +00:00
Joel Sherrill
f779efcba8 Added paragraph for Tony Ambardar (tonya@ece.ubc.ca) submitting
a BSP for the TS-1325 embedded PC from Technologic Systems
(http://www.t-systems.com) and patches to enable software
floating-point emulation for x86 targets.
1999-04-29 19:08:04 +00:00
Joel Sherrill
8846bbd0ec Patch from Emmanuel Raguet <raguet@crf.canon.fr>:
I have made test with the Dec21140 driver and it appears that all
    works fine even if the cache is enabled for the memory space in
    which the incoming and outcoming Ethernet frames are stored.

    I have had #ifdef to "comment" the code. If you want to disable
    cache, you only have to #define the name. It could be mandatory
    for some BSPs.
1999-04-28 13:59:11 +00:00
Joel Sherrill
cfcb5a299a Patch from Eric Norum <eric@cls.usask.ca> to corrent a miscount in length
that results in an error in parsing network unit names/numbers.
1999-04-27 17:31:39 +00:00
Joel Sherrill
c7aa9d6ff8 Repairing damage and recovering changes including C++ wrappers.. 1999-04-26 18:22:08 +00:00
Joel Sherrill
c8cfdcfe53 Recovered changes since CVS file was corrupted. 1999-04-26 18:04:46 +00:00
Joel Sherrill
8b8204a1c4 changed version to 19990426 1999-04-26 17:35:57 +00:00
Joel Sherrill
0b28bd9c0b changed version to 19990423 1999-04-23 16:37:54 +00:00
Joel Sherrill
16a384cfb1 New BSP from Tony R. Ambardar <tonya@ece.ubc.ca> from the
University of British Columbia.  The BSP is for:

    Yes, this is the "entry model" of a series of boards from Technologic
    Systems. Costs <$200 I believe. They have a WWW page at www.t-systems.com.
    I am letting them know about the availability of this BSP too.
1999-04-23 16:35:11 +00:00
Joel Sherrill
933388ae2d Added lstat(). 1999-04-22 21:13:23 +00:00
Joel Sherrill
3599c5e5d0 Added some CPU models that did not have BSPs. 1999-04-22 21:12:59 +00:00
Joel Sherrill
81e72bc41f Regenerated. 1999-04-19 21:49:18 +00:00
Joel Sherrill
c2463d94b3 Intel i960HA support submitted by Jimen Ching <jimen@adtech-inc.com>
based on 3.6.0.  It was very lucky that this went in as well as it
did.
1999-04-19 21:02:31 +00:00
Joel Sherrill
b56206a6ca Unlimited objects patch design document. Submitted by Chris Johns
<ccj@acm.org> of Objective Design Systems.
1999-04-19 17:30:02 +00:00
Joel Sherrill
4186b3bb0c Changed ioctl() prototype to be more like Linux/POSIX than BSD to ease
porting of ACE to RTEMS.
1999-04-19 17:17:41 +00:00
Joel Sherrill
df3e78a86b The default action for real-time signals is supposed to be SIGACTION_TERMINATE.
Jiri Gaisler caught this and submitted a patch but a subsequent patch
backed it out accidentally.
1999-04-19 15:54:03 +00:00
Joel Sherrill
ce11bed5bd New files. 1999-04-19 15:48:16 +00:00
Joel Sherrill
1059abcd94 Regenerated. 1999-04-19 15:37:36 +00:00
Joel Sherrill
7807b30e08 Direct .gcc_exc section to ram to eliminate the warning Ralf Corsepius is
seeing.
1999-04-19 15:36:21 +00:00
Joel Sherrill
11f84b3c81 After discussion with Eric Norum <eric@skatter.usask.ca>,
I added __INSIDE_RTEMS_BSD_TCPIP_STACK__ that trips all the needed
macro definitions for a network driver.
1999-04-19 15:27:20 +00:00
Joel Sherrill
7cdf7fc191 After discussion with Eric Norum <eric@skatter.usask.ca>,
I added __INSIDE_RTEMS_BSD_TCPIP_STACK__ that trips all the needed
macro definitions for a network driver.
1999-04-19 15:27:19 +00:00
Joel Sherrill
7a74b99111 Make sure the build-tools get built in the preinstall phase. 1999-04-19 14:54:25 +00:00
Joel Sherrill
db047f1def Patch from Erik Ivanenko <erik.ivanenko@utoronto.ca> to eliminate a
warning.
1999-04-19 14:41:23 +00:00
Joel Sherrill
b6529a34fd Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to reorganize
the build-tools layout to simplify it.

  This script reorganizes and simpilfies the build-tools subdirectories.
  It moves all source-files and scripts to c/build-tools/. This will
  enable use to use this directory directly to refer to the build-tools
  instead of copying them around in a "preinstall" step in future.
  However, RTEMS's autoconf Makefile.ins and *.cfg files are not yet
  prepared to apply this approach and therefore require additional work.
1999-04-19 13:35:24 +00:00
Joel Sherrill
183fa829db New file -- automatically generated. 1999-04-19 13:26:15 +00:00
Joel Sherrill
82307a1148 New files. 1999-04-19 13:25:50 +00:00
Joel Sherrill
5dc30fb19b Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to add scitabs.c to
CLEAN_ADDITIONS.
1999-04-19 13:20:15 +00:00
Joel Sherrill
196094eb79 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
This one is an enhancement to acpolish.

    It replaces some Makefile variables by others variable in Makefile.ins
    (tries to use unique name for some variables). It therefore eases
    parsing Makefile.ins for further automatic Makefile.in conversions in
    future.

    To apply:
        cd <rtems-source-tree>
        sh <path-to>/rtems-rc-19990407-8.sh
        ./autogen
1999-04-19 13:19:14 +00:00
Joel Sherrill
9572c41d09 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
This is an attempt to work-around a couple of nasty bugs in librdbg's
Makefiles and configuration:

Configure and build RTEMS as below:
  configure --enable-networking --enable-rdbg --target=i386-rtems
  make RTEMS_BSP=i386ex

After a few minutes you will notice that building aborts in librdbg ....

Analysis:

  1) librdbg is tried to be built, though librdbg is not supported and the
     required directory hierarchy librdbg/i386/i386ex/  is not existant.

     The cause for this is incorrect setting of HAS_RDBG in most
     make/custom/*.cfg files (except pc386.cfg). At the moment all
     custom/*.cfg files (except pc386.cfg) in general are required to contain
     HAS_RDBG=no. However, having HAS_NETWORKING=no in most custom/*.cfg
     files and the toplevel configure script suppress building librdbg for
     all CPUs except of i386.

     => The i386ex BSP falls though this scheme and librdbg is tried to be
        build (CPU=i386 and HAS_NETWORKING=yes).

  2) The Makefile.ins below lib/librdbg in general support i386/pc386 only
     and are not capable to be used for multiple CPUs or BSPs (RPCGEN
     generates it's target and bsp-specific files into librdbg/, therefore no
     other CPU or BSP can ever be built afterwards). This problem is hidden
     until now, because only a single CPU/BSP pair (i386/pc386) is really
     supported.

  3) The Makefile.ins below lib/librdbg can delete source files due to
     improper handling of source files (make clean removes the *.x files in
     the source-tree when configuring inside of the source-tree).


The patch below tries to work-around these problems for the i386ex and
the pc386 BSPs. This work-around is rather fragile (it applies rpcgen
-D, I don't know how portable this is) and incomplete (all custom/*.cfg
except of pc386.cfg should contain HAS_RDBG=no), nevertheless it should
work.
1999-04-19 13:11:13 +00:00
Joel Sherrill
60e6a0f61d Fixed some spacing issues. 1999-04-19 13:06:07 +00:00
Joel Sherrill
6b7ab9bf72 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
FYI: I am not talking about using "make -C <dir>", which probably
    is much faster on M$ hosts than RTEMS's implementation, but about
    removing --enable-gmake-print support and to apply a variant of
    automake's subdirectory.

    Automake's subdirectory rule seems to be a little bit faster, but I
    wouldn't bet on this.

    Attached to this mail is my proposal.

    After applying the patch, please run
        cvs rm aclocal/enable-gmake-print.m4
        ./autogen
1999-04-16 18:23:48 +00:00
Joel Sherrill
c00fa3858d Patch from Ralf Corsepius <corsepiu@@faw.uni-ulm.de>:
2) ./c/src/lib/libbsp/i386/go32/startup


    > all:    ${ARCH} $(SRCS) $(PGM)
    >         $(INSTALL_CHANGE) ${PROJECT_RELEASE}/lib
    >
    >

    This also is very questionable, because it means "install
    $(PROJECT_RELEASE)/$/lib to the void".  I think, removing the
    INSTALL_CHANGE is the right way to fix it.
1999-04-16 18:17:31 +00:00