Commit Graph
620 Commits
Author SHA1 Message Date
Joel Sherrill f91b8df17d Patch from Eric Norum <eric@skatter.usask.ca> to make m68360.h usable
outside RTEMS.  Comment:

    I found a couple of places other than RTEMS where I'd like to use
    the declarations supplied in m68360.h.  To make this easier to do,
    I've redone the declarations in m68360.h to use standard C types.
1999-01-20 15:55:52 +00:00
Joel Sherrill 2d733c424b More general fix based on bug report and patch from Ian Lance Taylor
<ian@airs.com> to fix this problem:

    There is a small bug in __rtems_close in c/src/lib/libc/libio.c.  It
    does not check whether the file descriptor it is passed is open.  This
    can cause it to make a null dereference if it is passed a file
    descriptor which is in the valid range but which was not opened, or
    which was already closed.
1999-01-20 15:48:22 +00:00
Joel Sherrill a7c4314dca Added comments for changing to a filesystem 1999-01-19 20:23:15 +00:00
Joel Sherrill eb6fafd33b Per bug report from Jiri Gaisler that RTEMS would no longer build
with the --disable-posix option, stubs for some routines (_getpid_r and
_kill_r) that are normally defined with POSIX were added.
1999-01-19 20:19:22 +00:00
Joel Sherrill ba2adf540e Patch from Jiri Gaisler <jgais@ce.chalmers.se>:
getting the spurious trap handling to work required a couple more
  fixes - I have attached a patch against rtems-4.0.0 with the
  necessary changes. I also added functionality so that the
  address of the trapped instruction is reported and in case of
  a data access error, the data address is also reported.
1999-01-19 20:09:33 +00:00
Joel Sherrill eb0d7ae2da Patch from D. V. Henkel-Wallace <gumby@zembu.com> to use puts and have prototype. 1999-01-04 16:35:31 +00:00
Joel Sherrill 88a0908402 Patch from D. V. Henkel-Wallace <gumby@zembu.com> to fix braces nesting problem. 1999-01-04 16:30:06 +00:00
Joel Sherrill 60a2d6899d Patch from D. V. Henkel-Wallace <gumby@zembu.com> to make macro nest properly in conditionals 1999-01-04 16:28:49 +00:00
Joel Sherrill 73441b6fef Removed blank lines 1999-01-04 16:26:37 +00:00
Joel Sherrill 9d5c22e31b Switched to use of ASM compilation conditional. 1998-12-15 19:56:41 +00:00
Joel Sherrill 2417b15a0e Changed reference from no_cpu to mips64orion. 1998-12-15 15:00:25 +00:00
Joel Sherrill 01629105c2 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to rename all
.s files to .S in conformance with GNU conventions.  This is a
minor step along the way to supporting automake.
1998-12-14 23:15:38 +00:00
Joel Sherrill e22d644abe Corrected prototype to confirm to POSIX 1003.1b. 1998-12-14 23:01:43 +00:00
Joel Sherrill cca44008d8 Merged Eric Norum's select patch that was based on 4.0 and resolved
all conflicts.
1998-12-10 23:31:54 +00:00
Joel Sherrill a3d0b8a79a Patch from Ian Lance Taylor <ian@airs.com>:
From: Eric Norum <eric@skatter.usask.ca>
   Date: Sat,  5 Dec 98 13:20:51 -0600

   What do you think of this patch?  It implements your `tap'
   suggestion in a way that adds support for all ethernet devices with
   no driver modifications.  I also added a return value from the tap
   function.  If the return value is zero, the packet will be passed up
   the chain as usual.  If the return value is non-zero the mbuf holding
   the packet will be freed and the packet will be dropped.

   If you like it, please submit it to Joel.

   I guess there needs to be an addition to the network documentation
   describing the additional ioctl's -- and a big warning that the tap
   function is called from a context that holds the network semaphore.

   Here is Eric's patch.  I've tested it a bit, and made a couple of
   trivial changes.  This is certainly better than mine: it should work
   for all Ethernet drivers.
   ==================================================

   The only concern I have about this patch is that the tap function may
   want to fiddle with the mbuf, calling functions like m_pullup and the
   like.  If those force the networking code to rearrange the mbuf
   structure, then the caller's call to m_freem may crash.  I don't know
   if this is a realistic concern--I don't know enough about the mbuf
   layer.
1998-12-10 19:42:29 +00:00
Joel Sherrill 91b1c8e69e Patch from Ian Lance Taylor <ian@airs.com>:
RTEMS permits using the SO_SNDTIMEO and SO_RCVTIMEO socket options to
    set a timeout for most socket I/O operations.  However, in RTEMS
    4.0.0, those options do not affect connect or accept.  I don't know of
    any way to put a timeout on those calls in RTEMS 4.0.0; can anybody
    point to one.

    Since it is frequently useful to have a timeout on accept, and
    sometimes useful to have a timeout on connect shorter than the BSD
    system default of 75 seconds, the following patch causes SO_RCVTIMEO
    to affect connect and accept.
1998-12-07 17:42:52 +00:00
Joel Sherrill 4721cf1ecb Patch from Emmanuel Raguet <raguet@crf.canon.fr> to add remote debug server
and RPC support to RTEMS.  Thanks. :)  Email follows:

    Hello,

    For Xmas, here is the Remote Debugger on RTEMS !

    Here are 2 patches for the Remote Debugger on RTEMS for pc386 from Linux
    host :

     - one for RTEMS it self,
     - one for GDB-4.17.


    1/ RTEMS patch
    --------------

    This patch adds 2 libraries :
     - a simplified SUN RPC library
     - the Remote Debugger library

    The configuration command is the following :
    ../rtems4/configure --target=i386-rtemself --enable-rtemsbsp=pc386
    --enable-rdbg

    The SUN RPC library is built only if networking is set.
    The RDBG library is built if networking and enable-rdbg are set.

    The function used to initialize the debugger is :
            rtems_rdbg_initialize ();

    A special function has been created to force a task to be
    in a "debug" state : enterRdbg().
    The use of this function is not mandatory.



    2/ GDB-4.17 patch
    -----------------

    This patch create a new RTEMS target for GDB-4.17.

    The configuration command is the following :
    ./configure --enable-shared --target=i386RTEMS

    To connect to a target, use :
      target rtems [your_site_address]

    Then, attach the target using : attach 1

    And... Debug ;)

    You can obtain the original GDB-4.17 on
    ftp://ftp.debian.org/debian/dists/stable/main/source/devel/gdb_4.17.orig.tar.gz

    This has been tested from a Debian 2.0.1 linux host.
1998-12-03 23:54:14 +00:00
Jennifer Averett a4e2f08c25 Added imfs_fdatasync routine that gets called from both fdatasync and datasync. 1998-12-03 22:19:06 +00:00
Jennifer Averett 49629bd8cb Added a imfs fdatasync routine that gets called for fdatasync and datasync. 1998-12-03 22:17:46 +00:00
Jennifer Averett 5822f437a1 Added source for F_DUPFD. 1998-12-03 22:17:26 +00:00
Jennifer Averett 7a3878b26f Modifications for RTEMS_UNIX. 1998-12-03 22:17:13 +00:00
Joel Sherrill 31bce9b765 Moved stackchk.h to rtems subdirectory. 1998-12-03 21:55:33 +00:00
Joel Sherrill ed0e74e79b Corrected spacing. 1998-12-03 21:53:25 +00:00
Joel Sherrill fdd9fe17bb Corrected ifdef on RTEMS_MULTIPROCESSING so the queue is actually closed. 1998-12-03 21:52:20 +00:00
Joel Sherrill bfc3533594 Include files now installed as <rtems/*.h>. 1998-12-01 13:56:46 +00:00
Joel Sherrill 37de72b908 Removed unused file.
Include files now installed as <rtems/*.h>.
1998-12-01 13:56:18 +00:00
Joel Sherrill 07a3253de2 Added base version of file system infrastructure. This includes a major
overhaul of the RTEMS system call interface.  This base file system is
the "In-Memory File System" aka IMFS.

The design and implementation was done by the following people:

  + Joel Sherrill (joel@OARcorp.com)
  + Jennifer Averett (jennifer@OARcorp.com)
  + Steve "Mr Mount" Salitasc (salitasc@OARcorp.com)
  + Kerwin Wade (wade@OARcorp.com)

PROBLEMS
========
  + It is VERY likely that merging this will break the UNIX port.  This
    can/will be fixed.

  + There is likely some reentrancy/mutual exclusion needed.

  + Eventually, there should be a "mini-IMFS" description table to
    eliminate links, symlinks, etc to save memory.  All you need to
    have "classic RTEMS" functionality is technically directories
    and device IO.  All the rest could be left out to save memory.
1998-11-23 19:07:58 +00:00
Joel Sherrill 97e2729d1a Added --disable-multiprocessing flag and modified a lot of files to make
it work.
1998-11-23 17:38:09 +00:00
Joel Sherrill 847375f3ad Patch from Eric Norum <eric@skatter.usask.ca>:
1) Socket timeout field changed from `short' to `long'.  This makes longer
       timeouts possible.  With a 1 kHz system clock the old system allowed
       timeouts only up to a little over 30 seconds!  This change is a
       slightly cleaned-up version of the patch proposed by Ian Lance Taylor.

    2) Major changes to BOOTP/DHCP reply handling.  Now supports much of
       RFC2132.  These changes were done at the request of, and with the
       assistance of, Erik Ivanenko.

    If you're making changes, you might want to change the network
    supplement  Essentially just do a global search and replace of BOOTP
    with BOOTP/DHCP.
1998-11-19 17:35:49 +00:00
Joel Sherrill b4e3b2bd68 Patch from Ian Lance Taylor <ian@airs.com>.
I just happened across the sync_io support in
        c/src/exec/score/cpu/unix/cpu.c
    (is this documented anywhere?).  That looked more useful than the
    signal driven I/O I was using before, so I tried it.  I ran across a
    few bugs in the way it uses select.

    Select changes its fd_set arguments, so you can't use global variables
    for them.  You have to copy them into local variables first.

    If select returns -1 with errno set to EINTR, then it has not changed
    any of the fd_sets.  You can't start looking at them.

    When clearing a descriptor, the code has the usual select off by one
    error when setting sync_io_nfds.

    I don't see how this code could ever have worked correctly.

    I have appended a patch for the problems I found.
1998-10-28 19:25:12 +00:00
Joel Sherrill 692b9f7fdd Merged Vista SCORE603e, Radstone PPCn_60x, and DY-4 DMV177 BSPs along
with libchip.
1998-10-28 19:17:16 +00:00
Joel Sherrill d3b34d259e Changed all of these to stubs. 1998-10-22 16:15:40 +00:00
Joel Sherrill 0cd2bd96c3 Added rest of opendir family and made it compile. 1998-10-13 18:04:16 +00:00
Joel Sherrill 928395ea56 New files. 1998-10-13 16:07:38 +00:00
Joel Sherrill 22bb7cd136 New files. 1998-10-12 17:28:33 +00:00
Joel Sherrill b19cb179ab Added header files per request from Chris Johns to avoid problems
in include file order.
1998-10-12 17:21:12 +00:00
Joel Sherrill 388be68fbc Patch from Ian Lance Taylor <ian@airs.com>:
The reentrant versions of the malloc functions in
        c/src/lib/libc/malloc.c
    do not match the definitions in newlib.  These will be used if you use
    newlib routines such as fdopen.  I believe this patch to malloc.c is
    needed to provide the correct versions.
1998-10-01 21:44:31 +00:00
Joel Sherrill 766ed7c0f1 Patch from Eric Norum <eric@skatter.usask.ca>:
Remember the test to see if a socket could be read and written at
    the same time by two different tasks?  I discovered that if both
    tasks attempt to close the socket a panic can occur from inside the
    BSD code.

    Closing the same socket twice from two different threads is
    certainly an error, but a panic is not the greatest error reporting
    method :-)

    The following small change to the socket close routine should reduce
    the chances of the panic.
1998-09-29 12:15:08 +00:00
Joel Sherrill cb646cb936 New files. 1998-09-27 16:37:16 +00:00
Joel Sherrill b965227fa1 Now compiles. 1998-09-25 13:28:28 +00:00
Joel Sherrill 97149ba590 Added ENOSYS stubs for a number of process routines. 1998-09-25 13:17:32 +00:00
Joel Sherrill ecc3fe3181 IDLE task stack size now specified as a field in the CPU Table for all
ports.
1998-09-23 16:41:00 +00:00
Joel Sherrill 3b93a2dee1 Modifed to zero out the C heap if the CPU Table indicates that the
RTEMS workspace is to be zeroed out.
1998-09-23 16:34:23 +00:00
Joel Sherrill 8a496e462e Patch from Aleksey (Quality Quorum <qqi@world.std.com>):
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.
1998-09-23 13:20:34 +00:00
Joel Sherrill 718dc95384 Patch from Eric Norum <eric@skatter.usask.ca>:
Here's a patch to make the rtems_showroute routine a little more
    useful.  For `host' route table entries the link-level address is now
    displayed.  This is equivalent to the old `show arp table'
    information displayed by the KA9Q code.
1998-09-21 00:46:00 +00:00
Joel Sherrill 7ddcfb8cd4 Patch from Eric Norum and David Fiddes to put ColdFire support in
the inet checksum routine.
1998-09-21 00:42:07 +00:00
Joel Sherrill 30ba7529f1 Patch from Eric Norum:
I fixed the problems noted by Victor Vengerov.

    1) Fix typo in cfsetispeed().
    2) In rtems_termios_open, ensure that args->iop->data1 is set before calling
    device-specific open routine.
1998-09-21 00:01:26 +00:00
Joel Sherrill b29378e052 Corrected spelling error. 1998-09-11 19:17:49 +00:00
Joel Sherrill b39563695d Patch from "David J. Fiddes" <D.J@fiddes.surfaid.org>:
I've fixed a few minor probs with the optimised version that Eric put
    together for me the other day and sent the fixes back to him. Provided he
    doesn't have a problem with it we've got a pretty solid in_cksum for the
    ColdFire as well as straight m68k. I've enclosed my updated in_cksum_m68k.c

    At the moment my own bottlenecks are elsewhere...as my driver is pulling
    16bit data chunks through a libchip-esq access routine from the chip which
    for a polled I/O device is never going to be quick.
1998-09-11 13:12:04 +00:00
Joel Sherrill 23cdd84cff Patch from David Fiddes <D.J.Fiddes@hw.ac.uk> to make this compile
for the ColdFire.
1998-09-10 12:43:00 +00:00