summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-07-11 19:31:04 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-07-11 19:31:04 +0000
commitbc85fd5a6df8753543ba55c98a588e255471752b (patch)
treeb51e3eb5c77cca042081bb7ba88e5515560451d2 /c/src/lib/libbsp
parentPatch rtems-rc-20000711-2-cvs.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de> (diff)
downloadrtems-bc85fd5a6df8753543ba55c98a588e255471752b.tar.bz2
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.
Diffstat (limited to 'c/src/lib/libbsp')
-rw-r--r--c/src/lib/libbsp/i960/cvme961/include/bsp.h1
-rw-r--r--c/src/lib/libbsp/i960/cvme961/startup/bspstart.c1
-rw-r--r--c/src/lib/libbsp/i960/cvme961/wrapup/Makefile.am3
-rw-r--r--c/src/lib/libbsp/i960/i960sim/include/bsp.h4
-rw-r--r--c/src/lib/libbsp/i960/i960sim/startup/bspstart.c5
-rw-r--r--c/src/lib/libbsp/i960/i960sim/wrapup/Makefile.am3
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c1
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/include/bsp.h1
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c16
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c2
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c2
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c2
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/timer/timer.c2
-rw-r--r--c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.am3
14 files changed, 17 insertions, 29 deletions
diff --git a/c/src/lib/libbsp/i960/cvme961/include/bsp.h b/c/src/lib/libbsp/i960/cvme961/include/bsp.h
index e00d525e7b..1547b40aa6 100644
--- a/c/src/lib/libbsp/i960/cvme961/include/bsp.h
+++ b/c/src/lib/libbsp/i960/cvme961/include/bsp.h
@@ -22,6 +22,7 @@ extern "C" {
#endif
#include <rtems.h>
+#include <libcpu/i960CA.h>
#include <iosupp.h>
#include <console.h>
#include <clockdrv.h>
diff --git a/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c b/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c
index 7d89f1c09d..eab65eb1c0 100644
--- a/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c
+++ b/c/src/lib/libbsp/i960/cvme961/startup/bspstart.c
@@ -108,7 +108,6 @@ void bsp_start( void )
Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */
Cpu_table.postdriver_hook = bsp_postdriver_hook;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
- Cpu_table.Prcb = Prcb;
BSP_Configuration.work_space_start = (void *)
(RAM_END - BSP_Configuration.work_space_size);
diff --git a/c/src/lib/libbsp/i960/cvme961/wrapup/Makefile.am b/c/src/lib/libbsp/i960/cvme961/wrapup/Makefile.am
index 01c85b4bbc..6e8b8865bd 100644
--- a/c/src/lib/libbsp/i960/cvme961/wrapup/Makefile.am
+++ b/c/src/lib/libbsp/i960/cvme961/wrapup/Makefile.am
@@ -19,7 +19,8 @@ include $(top_srcdir)/../../../../../../automake/lib.am
# bummer; have to use $foreach since % pattern subst rules only replace 1x
OBJS = $(foreach piece, $(BSP_FILES), $(wildcard ../$(piece)/$(ARCH)/*.o)) \
- $(foreach piece, $(GENERIC_FILES), ../../../$(piece)/$(ARCH)/$(piece).rel)
+ $(wildcard ../../../../libcpu/$(RTEMS_CPU)/$(RTEMS_CPU_MODEL)/$(ARCH)/*.o) \
+ $(foreach piece, $(GENERIC_FILES), ../../../$(piece)/$(ARCH)/$(piece).rel)
LIB = $(ARCH)/libbsp.a
diff --git a/c/src/lib/libbsp/i960/i960sim/include/bsp.h b/c/src/lib/libbsp/i960/i960sim/include/bsp.h
index 691ed73a25..ac8ecb48bb 100644
--- a/c/src/lib/libbsp/i960/i960sim/include/bsp.h
+++ b/c/src/lib/libbsp/i960/i960sim/include/bsp.h
@@ -13,8 +13,8 @@
* $Id$
*/
-#ifndef __CVME961_h
-#define __CVME961_h
+#ifndef __I960SIM_h
+#define __I960SIM_h
#ifdef __cplusplus
extern "C" {
diff --git a/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c b/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c
index f93fb3c6b9..e5b840d472 100644
--- a/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c
+++ b/c/src/lib/libbsp/i960/i960sim/startup/bspstart.c
@@ -77,6 +77,10 @@ void bsp_pretasking_hook(void)
* This routine does the bulk of the system initialization.
*/
+#include <libcpu/i960KA.h>
+
+i960_PRCB *Prcb; /* to satisfy linking */
+
void bsp_start( void )
{
extern int _end;
@@ -86,7 +90,6 @@ void bsp_start( void )
Cpu_table.pretasking_hook = bsp_pretasking_hook; /* init libc, etc. */
Cpu_table.postdriver_hook = bsp_postdriver_hook;
Cpu_table.interrupt_stack_size = 4096;
- Cpu_table.Prcb = 0; /* Prcb; */
if ( BSP_Configuration.work_space_size >(512*1024) )
_sys_exit( 1 );
diff --git a/c/src/lib/libbsp/i960/i960sim/wrapup/Makefile.am b/c/src/lib/libbsp/i960/i960sim/wrapup/Makefile.am
index d79cd51a66..ae52204fdb 100644
--- a/c/src/lib/libbsp/i960/i960sim/wrapup/Makefile.am
+++ b/c/src/lib/libbsp/i960/i960sim/wrapup/Makefile.am
@@ -11,7 +11,8 @@ include $(top_srcdir)/../../../../../../automake/lib.am
# bummer; have to use $foreach since % pattern subst rules only replace 1x
OBJS = $(foreach piece, $(BSP_FILES), $(wildcard ../$(piece)/$(ARCH)/*.o)) \
- $(foreach piece, $(GENERIC_FILES), ../../../$(piece)/$(ARCH)/$(piece).rel)
+ $(wildcard ../../../../libcpu/$(RTEMS_CPU)/$(RTEMS_CPU_MODEL)/$(ARCH)/*.o) \
+ $(foreach piece, $(GENERIC_FILES), ../../../$(piece)/$(ARCH)/$(piece).rel)
LIB = $(ARCH)/libbsp.a
diff --git a/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c b/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c
index 20b7ea3144..cc42884639 100644
--- a/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c
+++ b/c/src/lib/libbsp/i960/rxgen960/clock/ckinit.c
@@ -22,7 +22,6 @@
#include <stdlib.h>
#include <bsp.h>
-#include <i960RP.h>
#include <rtems/libio.h>
#define CLOCK_VECTOR 0x92
diff --git a/c/src/lib/libbsp/i960/rxgen960/include/bsp.h b/c/src/lib/libbsp/i960/rxgen960/include/bsp.h
index 4256629165..52343f6bbe 100644
--- a/c/src/lib/libbsp/i960/rxgen960/include/bsp.h
+++ b/c/src/lib/libbsp/i960/rxgen960/include/bsp.h
@@ -22,6 +22,7 @@ extern "C" {
#endif
#include <rtems.h>
+#include <libcpu/i960RP.h>
#include <iosupp.h>
#include <console.h>
#include <clockdrv.h>
diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c b/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c
index bc4ddfcff8..bfed470ce3 100644
--- a/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c
+++ b/c/src/lib/libbsp/i960/rxgen960/startup/bspstart.c
@@ -28,13 +28,8 @@
#include <string.h>
#include <fcntl.h>
#include <stdio.h>
-#include "i960RP.h"
#include <rtems/libio.h>
-#ifdef STACK_CHECKER_ON
-#include <stackchk.h>
-#endif
-
#define HEAP_SIZE 1024*1024*2
/*
@@ -84,16 +79,6 @@ bsp_pretasking_hook(void)
bsp_libc_init((void *) heap_start, 64 * 1024, 0);
-#ifdef STACK_CHECKER_ON
- /*
- * Initialize the stack bounds checker
- * We can either turn it on here or from the app.
- */
-
-*(unsigned char *)(0x120f) = 0xe;
- Stack_check_Initialize();
-#endif
-
#ifdef RTEMS_DEBUG
rtems_debug_enable( RTEMS_DEBUG_ALL_MASK );
#endif
@@ -134,7 +119,6 @@ bsp_start(void)
Cpu_table.do_zero_of_workspace = TRUE;
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
Cpu_table.extra_mpci_receive_server_stack = 0;
- Cpu_table.Prcb = Prcb;
/* just trying to get along */
Cpu_table.stack_allocate_hook = 0;
diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c
index 07835ede2a..252a11d7eb 100644
--- a/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c
+++ b/c/src/lib/libbsp/i960/rxgen960/startup/cntrltbl.c
@@ -6,7 +6,7 @@
* $Id$
*/
-#include "i960RP.h"
+#include <bsp.h>
#include "cntrltbl.h"
/*-------------------------------------*/
/* Control Table.
diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c b/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c
index 6f3d97d6b0..fcaf48e06f 100644
--- a/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c
+++ b/c/src/lib/libbsp/i960/rxgen960/startup/rom_cntrltbl.c
@@ -6,7 +6,7 @@
* $Id$
*/
-#include <i960RP.h>
+#include <bsp.h>
#include "cntrltbl.h"
/*-------------------------------------*/
/* Control Table.
diff --git a/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c b/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c
index 83e456c7aa..d65d0109cd 100644
--- a/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c
+++ b/c/src/lib/libbsp/i960/rxgen960/startup/rom_ibr.c
@@ -9,7 +9,7 @@
#include "rom_ibr.h"
#include "prcb.h"
#include "cntrltbl.h"
-#include <i960RP.h>
+#include <bsp.h>
#include "../include/rxgen960_config.h"
/*-------------------------------------*/
extern void romStart(void);
diff --git a/c/src/lib/libbsp/i960/rxgen960/timer/timer.c b/c/src/lib/libbsp/i960/rxgen960/timer/timer.c
index 8b166090e2..eabb33d81a 100644
--- a/c/src/lib/libbsp/i960/rxgen960/timer/timer.c
+++ b/c/src/lib/libbsp/i960/rxgen960/timer/timer.c
@@ -27,10 +27,8 @@
*/
-#include <rtems.h>
#include <bsp.h>
#include <stdlib.h>
-#include <i960RP.h>
#include <rtems/libio.h>
diff --git a/c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.am b/c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.am
index e3dd06fc1e..3cf65c86c2 100644
--- a/c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.am
+++ b/c/src/lib/libbsp/i960/rxgen960/wrapup/Makefile.am
@@ -19,7 +19,8 @@ BSP_PIECES = startup clock console timer $(BSP_MP_O_PIECES)
# bummer; have to use $foreach since % pattern subst rules only replace 1x
OBJS = $(foreach piece, $(BSP_PIECES), $(wildcard ../$(piece)/$(ARCH)/*.o)) \
- $(foreach piece, $(GENERIC_PIECES), ../../../$(piece)/$(ARCH)/$(piece).rel)
+ $(wildcard ../../../../libcpu/$(RTEMS_CPU)/$(RTEMS_CPU_MODEL)/$(ARCH)/*.o) \
+ $(foreach piece, $(GENERIC_PIECES), ../../../$(piece)/$(ARCH)/$(piece).rel)
LIB = $(ARCH)/libbsp.a
#