Commit Graph
3028 Commits
Author SHA1 Message Date
Joel Sherrill bc85fd5a6d Reworked score/cpu/i960 so it can be safely compiled multilib. All
routines and structures that require CPU model specific information
are now in libcpu.  This required significant rework of the
score/cpu header files and the creation of multiple header files
and subdirectories in libcpu/i960.
2000-07-11 19:31:04 +00:00
Joel Sherrill 270e3cce96 Patch rtems-rc-20000711-1-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
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-11 14:56:04 +00:00
Joel Sherrill e0ba3e80ef Patch rtems-rc-20000709-1.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
that addresses aspects of the targopts.h multilib related
issues.

  Changes:
    * Move targopts.h to libbsp/include, because the current targopts.h
      actually is a per-BSP-header and therefore can not stay below exec/.

    * Introduce an autoheader generated header file
      (exec/score/include/rtems/score/cpuopts.h), which shall take per-cpu
      configuration options only.

    * Move all autoconf-detectable/configure specified per-cpu
      option-defines from targopts.h to cpuopts.h.

    * Add Makefiles to the libbsp/shared directory hierarchy.

  Notes:
    * The new per-bsp targopts.h in libbsp includes the per-cpu
      cpuopts.h. This way, the new targopts.h is kept backward compatible
      to the old targopts.h and existing BSPs which (carelessly) include
      targopts.h (i386, ppc) should be kept working when using the
      multilib-disabled configuration scheme.

    * cpuopts.h is not yet complete, because the per-BSP make-targopts
      rules from custom/<BSP>.cfg files can not be applied to files below
      exec/ when building multilibs.

    * All files below exec/ should not include targopts.h anymore, but
      should include cpuopts.h instead.  However, eliminating inclusion of
      targopts.h currently triggers further structural / header file inclusion
      related issues, because several ports apply BSP or CPU_MODEL specific
      defines from targopts.h below exec/
2000-07-10 19:23:38 +00:00
Joel Sherrill 256cbecf68 Patch rtems-rc-20000708-1.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
that is another small step toward multilibs:

  Changes:
    * Eliminate RTEMS_CHECK_CUSTOM_BSP from all configure.ins below exec/
    * Add RTEMS_CHECK_CUSTOM_BSP to the multilib-disabled branch in
      RTEMS_ENV_RTEMSCPU to preserve the old per-BSP building scheme
      functional.

  Notes:
    * --enable-multilibs is still non-functional
    * This patch should not have any influence on the old building
      scheme (--disable-multilib should silently fall back to the old
      building scheme).
    * running ./bootstrap is required after applying the patch
2000-07-10 19:12:07 +00:00
Joel Sherrill dc39377e53 Now links although linkcmds will not work on real hardware. But then
again neither will unlinked executables. :)
2000-07-10 19:09:37 +00:00
Joel Sherrill 74d5216590 Build rtems-cpu.rel in this directory. 2000-07-10 19:01:20 +00:00
Joel Sherrill 9df5323fc1 Fixed typo. 2000-07-10 19:00:53 +00:00
Joel Sherrill 868b8ee678 Incorrectly specified using new exception processing. 2000-07-10 19:00:33 +00:00
Joel Sherrill ad9e007174 New files. 2000-07-10 18:59:52 +00:00
Joel Sherrill 73e480c643 New file. 2000-07-10 18:58:57 +00:00
Joel Sherrill d529035299 New file. 2000-07-10 18:43:42 +00:00
Joel Sherrill 9065de85e2 Added dummy clock driver. 2000-07-10 18:42:16 +00:00
Joel Sherrill 586f260289 Picking up changes missed in previous commit. These changes
were needed to move exception processing to score/cpu.
2000-07-07 19:56:10 +00:00
Joel Sherrill 80e53918dc Moved old_exception_processing and new_exception_processing directories
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-07 19:36:14 +00:00
Joel Sherrill acddd7d2fc Removed duplicate case values. 2000-07-07 19:34:49 +00:00
Joel Sherrill df97683373 Fixed problem reported by Victor V. Vengerov <Victor.Vengerov@oktet.ru>
where alarm() did not correctly account for the watchdog start_time
and stop_time fields being based on ticks not seconds.  This resulted
in alarm() returning a bogus number of seconds remaining.
2000-07-07 19:31:30 +00:00
Joel Sherrill 5f4d774ea7 Moved __RTEMS_APPLICATION__ conditional to include the use of the
static inline routine _CORE_mutex_Seize_interrupt_trylock since
static routines are not included when in an application.
2000-07-07 19:29:05 +00:00
Joel Sherrill ce1ba298ed Switched to faster implementation. 2000-07-06 21:59:25 +00:00
Joel Sherrill eaedd00a84 Fixed formatting. 2000-07-06 20:40:50 +00:00
Joel Sherrill 79ef2d81fe New file. 2000-07-06 20:37:29 +00:00
Joel Sherrill 168ba07c84 Patch from Eric Valette <valette@crf.canon.fr> and Yacine El Kolli
<elkolli@crf.canon.fr> to add support for the mbx860_005b.
2000-07-06 20:36:48 +00:00
Joel Sherrill 55e4dcf30e Patch from Eric Valette <valette@crf.canon.fr> 2000-07-06 20:24:19 +00:00
Joel Sherrill 04e6f7bffb Patch rtems-rc-20000705-3.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
that is a somewhat experimental, multilib-related patch:

  Changes:
    * Use RTEMS_ENV_RTEMSCPU instead of RTEMS_ENV_RTEMSBSP in
      configure.ins below exec/.
      At the moment, RTEMS_ENV_RTEMSCPU is more or less an optical change
      to emphasize that these subdirectories shall not depend on RTEMS_BSP
      than a real behavioral change.
    * Add AC_DEFINE_* to several aclocal/*.m4 macros to prepare
      autoheader/autoconf generated targopts.h and similiar configuration
      headers.
    * c/src/configure.in: remove exec from cfg_subdirs if multilibs are
      enabled (c/src is build per bsp, exec shall be build per cpu in c/
      or from the toplevel in future, when multilibs are enabled.)

  Notes:
    * This patch should not have any impact on the current building scheme.
    * --enable-multilib still does not work.
    * running bootstrap from the toplevel directory is required.
CVS: ----------------------------------------------------------------------
CVS: Enter Log.  Lines beginning with `CVS:' are removed automatically
CVS:
CVS: Committing in .
CVS:
CVS: Modified Files:
CVS: 	c/src/tests/libtests/termios/init.c
CVS: ----------------------------------------------------------------------
2000-07-06 20:13:35 +00:00
Joel Sherrill 501d312a91 Added baseline for h8 simulator BSP to support the simulator in gdb 5.0 2000-07-06 20:07:34 +00:00
Joel Sherrill 34a2679266 Added missing #endif's. 2000-07-06 20:01:43 +00:00
Joel Sherrill e6faa6ac76 Corrected call to _CORE_mutex_Seize_interrupt_blocking. 2000-07-06 20:01:23 +00:00
Joel Sherrill 8ce962c095 Modfied to execute faster and have fewer instructions. 2000-07-06 20:00:44 +00:00
Joel Sherrill 9d27732222 Switched to using isr disable version of _Objects_Get. When the
semaphore/mutex can be obtained immediately, this cuts execution time
by 50%.
2000-07-06 19:40:58 +00:00
Joel Sherrill d058ce2ef3 Added _Semaphore_Get_interrupt_disable. 2000-07-06 19:39:20 +00:00
Joel Sherrill ab654be428 Cleaned up to avoid disruptive use of inline conditionals. 2000-07-06 19:35:44 +00:00
Joel Sherrill 1b7e8c5165 Switched to using _POSIX_Mutex_Get_interrupt_disable to improve performance. 2000-07-06 19:34:49 +00:00
Joel Sherrill 3ef54dcc4c Added support for converting a mutex id to a pointer and returning
with interrupts disabled.
2000-07-06 19:33:52 +00:00
Joel Sherrill 21e2b2b9be Reimplemented _Core_MUTEX_Seize to return with interrupts disabled
if the mutex is successfully obtained.
2000-07-06 19:32:00 +00:00
Joel Sherrill 8d5b438b9e Added _CORE_semaphore_Seize_isr_disable. 2000-07-06 19:27:03 +00:00
Joel Sherrill c6f111bac0 Added _Objects_Get_isr_disable prototype and added numerous comments. 2000-07-06 19:14:34 +00:00
Joel Sherrill 1d9403a308 Removed unnecessary parentheses. 2000-07-06 19:13:31 +00:00
Joel Sherrill 8a3278fc6a Added objjectgetbyisr.c 2000-07-06 19:11:15 +00:00
Joel Sherrill 12aeaec6dc The code that attempts to obtain a mutex has now been inlined. The
code remaining here now only blocks.
2000-07-06 19:10:30 +00:00
Joel Sherrill 3b4413c08f Directly index local table to avoid error check. 2000-07-06 19:09:27 +00:00
Joel Sherrill d895fe8798 New file. Convert ID to pointer and return with interrupts -- not
dispatching -- disabled.
2000-07-06 19:06:59 +00:00
Joel Sherrill 42ed30047b Format of return line changed. 2000-07-06 19:01:58 +00:00
Joel Sherrill 04e4829d46 Patch rtems-rc-20000626-1.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
Comments follow:

  Building linux/posix fails due to including lib/include/sys/cdefs.h
  instead of linux's sys/cdefs.h.
  AFAIS, this sys/cdefs.h is specific to newlib and should probably
  not be used on any unix host.

  Therefore, I changed the relevant Makefile.am/configure.in to
  condionally install sys/cdefs.h only if newlib is present.

  This triggered another bug inside of the newlib-check for one of
  RTEMS target's (Unfortunately I can't remember which - mips/i960 ?
  ... one of the more exotic ...), for which int func() isn't
  identical to void func().

  Note: This patch needs to be tested under Cygwin and Solaris. I am
  particularily unsure about Cygwin/posix, as it applies a different
  version newlib which must not trigger RTEMS newlib check (it is
  supposed to fail) and if it may need RTEMS's sys/cdefs.h.
2000-07-06 14:04:29 +00:00
Joel Sherrill 8bc62aeb5d Interrupt stack is allocated in _ISR_Handler_initialization not
_Interrupt_Manager_initialization.
2000-07-03 18:44:12 +00:00
Joel Sherrill 0147d5ee73 Added blocked_count field to allow for optimizations. 2000-07-03 15:49:58 +00:00
Joel Sherrill feb93ede27 Changed extra_system_initialization_stack to extra_mpci_receive_server_stack
to be consistent with other ports.
2000-07-03 15:49:35 +00:00
Joel Sherrill c0ffdeeb60 Patch rtems-rc-20000702-1.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
that is a hack to workaround a switch generation compiler bug for the
SH2 and cleaned up some warnings.
2000-07-03 15:20:57 +00:00
Joel Sherrill 3af082818e Fixed stat_ino should be st_ino. 2000-07-02 12:29:47 +00:00
Joel Sherrill e8fd6336c1 Patch from Chris Johns <cjohns@cybertec.com.au> so the web server
shuts down on error -- not exitting the system.
2000-06-30 12:38:25 +00:00
Joel Sherrill 068b64735c Patch from Chris Johns <cjohns@cybertec.com.au> so the directory
read function in the IMFS properly returns the inode number.
2000-06-30 12:36:32 +00:00
Joel Sherrill e5d6705e46 Patch from Chris Johns <cjohns@cybertec.com.au> to add support for
stat()'ing a symbolic link.  This is needed to support the port
of the BSD commands like ls to RTEMS.
2000-06-30 12:33:13 +00:00