forked from Imagelibrary/rtems
2000-09-22 Joel Sherrill <joel@OARcorp.com>
* start/crt0.S: Renamed to start/start.S. * start/start.S: Formerly start/crt0.S. * startup/linkcmds: New file. GNU linker script that is not correct for the target board but links programs. * bsp_specs: Use linkcmds. * include/Makefile.am, start/Makefile.am startup/Makefile.am: Now work. * startup/bspstart.c, startup/setvec.c: "#if 0"'ed out references to reoutines in assembly that are in turn "#if 0"'ed out.
This commit is contained in:
@@ -1,3 +1,15 @@
|
||||
2000-09-22 Joel Sherrill <joel@OARcorp.com>
|
||||
|
||||
* start/crt0.S: Renamed to start/start.S.
|
||||
* start/start.S: Formerly start/crt0.S.
|
||||
* startup/linkcmds: New file. GNU linker script that is not
|
||||
correct for the target board but links programs.
|
||||
* bsp_specs: Use linkcmds.
|
||||
* include/Makefile.am, start/Makefile.am startup/Makefile.am:
|
||||
Now work.
|
||||
* startup/bspstart.c, startup/setvec.c: "#if 0"'ed out references
|
||||
to reoutines in assembly that are in turn "#if 0"'ed out.
|
||||
|
||||
2000-09-04 Ralf Corsepius <corsepiu@faw.uni-ulm.de>
|
||||
|
||||
* console/Makefile.am, shmsupp/Makefile.am, start/Makefile.am,
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
|
||||
*startfile:
|
||||
%{!qrtems: %(old_startfile)} \
|
||||
%{qrtems: %{qrtems_debug: crt0_g.o%s} %{!qrtems_debug: crt0.o%s}}
|
||||
%{qrtems: %{qrtems_debug: start_g.o%s} %{!qrtems_debug: start.o%s}}
|
||||
|
||||
*link:
|
||||
%{!qrtems: %(old_link)} %{qrtems: -dc -dp -N -e _start}
|
||||
|
||||
@@ -7,9 +7,9 @@ AUTOMAKE_OPTIONS = foreign 1.4
|
||||
H_FILES = bsp.h ../../../shared/include/coverhd.h
|
||||
|
||||
$(PROJECT_INCLUDE):
|
||||
@$(mkinstalldirs) $@
|
||||
$(mkinstalldirs) $@
|
||||
|
||||
$(PROJECT_INCLUDE)/bsp.h: bsp.h
|
||||
$(PROJECT_INCLUDE)/%.h: %.h
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
$(PROJECT_INCLUDE)/coverhd.h: ../../../shared/include/coverhd.h
|
||||
|
||||
@@ -6,7 +6,7 @@ AUTOMAKE_OPTIONS = foreign 1.4
|
||||
|
||||
PGM = $(ARCH)/start.o
|
||||
|
||||
S_FILES = crt0.S register.S
|
||||
S_FILES = start.S register.S
|
||||
S_O_FILES = $(S_FILES:%.S=$(ARCH)/%.o)
|
||||
|
||||
OBJS = $(S_O_FILES)
|
||||
@@ -28,6 +28,6 @@ all-local: $(ARCH) $(OBJS) $(PGM) $(TMPINSTALL_FILES)
|
||||
|
||||
.PRECIOUS: $(PGM)
|
||||
|
||||
EXTRA_DIST = amd.ah crt0.S pswmacro.ah register.S register.ah
|
||||
EXTRA_DIST = amd.ah start.S pswmacro.ah register.S register.ah
|
||||
|
||||
include $(top_srcdir)/../../../../../../automake/local.am
|
||||
|
||||
@@ -40,7 +40,9 @@
|
||||
; void = start( );
|
||||
; NOTE - not C callable (no lead underscore)
|
||||
;
|
||||
.include "sysmac.h"
|
||||
#if 0
|
||||
#include <sysmac.h>
|
||||
#endif
|
||||
;
|
||||
;
|
||||
.extern V_SPILL, V_FILL
|
||||
@@ -53,14 +55,15 @@
|
||||
.word 0 ; Terminating tag word
|
||||
.global start
|
||||
start:
|
||||
#if 0
|
||||
sub gr1, gr1, 6 * 4
|
||||
asgeu V_SPILL, gr1, rab ; better not ever happen
|
||||
add lr1, gr1, 6 * 4
|
||||
|
||||
;
|
||||
; Save the initial value of the Am29027's Mode register
|
||||
; Save the initial value of the Am29027 Mode register
|
||||
;
|
||||
; If your system does not enter crt0 with value for Am29027's Mode
|
||||
; If your system does not enter crt0 with value for Am29027 Mode
|
||||
; register in gr96 and gr97, and also the coprocessor is active
|
||||
; uncomment the next 4 instructions.
|
||||
;
|
||||
@@ -118,7 +121,7 @@ argcloop: ; scan for NULL terminator
|
||||
;
|
||||
; Now call LibInit, if there is one. To aid runtime libraries
|
||||
; that need to do some startup initialization, we have created
|
||||
; a bss variable called LibInit. If the library doesn't need
|
||||
; a bss variable called LibInit. If the library does not need
|
||||
; any run-time initialization, the variable is still 0. If the
|
||||
; library does need run-time initialization, the library will
|
||||
; contain a definition like
|
||||
@@ -142,7 +145,7 @@ NoLibInit:
|
||||
;
|
||||
; The following code segment was used to create the two flavors of the
|
||||
; run-time initialization routines (crt0_1.o, and crt0_2.o) as described
|
||||
; in the User's Manual. If osboot is used to create a stand-alone
|
||||
; in the Users Manual. If osboot is used to create a stand-alone
|
||||
; application, or the call to RAMInit is made in the start-up routine,
|
||||
; then the following is not needed.
|
||||
;
|
||||
@@ -285,4 +288,5 @@ fill:
|
||||
; asgeu V_SPILL,gr1,gr126
|
||||
; add lr1,gr1,24
|
||||
;
|
||||
#endif
|
||||
.end
|
||||
@@ -25,6 +25,9 @@ include $(top_srcdir)/../../../../../../automake/lib.am
|
||||
$(PGM): $(OBJS)
|
||||
$(make-rel)
|
||||
|
||||
$(PROJECT_RELEASE)/lib/linkcmds: linkcmds
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
$(PROJECT_RELEASE)/lib/ramlink: ramlink
|
||||
$(INSTALL_DATA) $< $@
|
||||
|
||||
@@ -33,6 +36,7 @@ $(PROJECT_RELEASE)/lib/romlink: romlink
|
||||
|
||||
# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile
|
||||
TMPINSTALL_FILES += $(PROJECT_RELEASE)/lib/ramlink \
|
||||
$(PROJECT_RELEASE)/lib/linkcmds \
|
||||
$(PROJECT_RELEASE)/lib/romlink
|
||||
|
||||
all-local: $(ARCH) $(OBJS) $(PGM) $(TMPINSTALL_FILES)
|
||||
|
||||
@@ -76,7 +76,12 @@ void bsp_pretasking_hook(void)
|
||||
/* allocate all remaining memory to the heap */
|
||||
do {
|
||||
heap_size -= HEAP_BLOCK_SIZE;
|
||||
/* JRS just to link 9/22/2000 */
|
||||
#if 0
|
||||
heap_start = _sysalloc( heap_size );
|
||||
#else
|
||||
heap_start = 0;
|
||||
#endif
|
||||
} while ( !heap_start );
|
||||
|
||||
if (!heap_start)
|
||||
@@ -128,7 +133,12 @@ int bsp_start(
|
||||
* not malloc'ed. It is just "pulled from the air".
|
||||
*/
|
||||
|
||||
/* JRS just to link 9/22/2000 */
|
||||
#if 0
|
||||
BSP_Configuration.work_space_start = _sysalloc( BSP_Configuration.work_space_size + 512 );
|
||||
#else
|
||||
BSP_Configuration.work_space_start = 0;
|
||||
#endif
|
||||
if (!BSP_Configuration.work_space_start)
|
||||
rtems_fatal_error_occurred( BSP_Configuration.work_space_size );
|
||||
|
||||
@@ -142,6 +152,8 @@ int bsp_start(
|
||||
Cpu_table.postdriver_hook = bsp_postdriver_hook;
|
||||
Cpu_table.interrupt_stack_size = CONFIGURE_INTERRUPT_STACK_MEMORY;
|
||||
|
||||
/* JRS just to link 9/22/2000 */
|
||||
#if 0
|
||||
_settrap( 109,&a29k_enable_sup);
|
||||
_settrap( 110,&a29k_disable_sup);
|
||||
_settrap( 111,&a29k_enable_all_sup);
|
||||
@@ -150,6 +162,7 @@ int bsp_start(
|
||||
_settrap( 107,&a29k_context_restore_sup);
|
||||
_settrap( 108,&a29k_context_save_sup);
|
||||
_settrap( 105,&a29k_sigdfl_sup);
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Start RTEMS
|
||||
|
||||
34
c/src/lib/libbsp/a29k/portsw/startup/linkcmds
Normal file
34
c/src/lib/libbsp/a29k/portsw/startup/linkcmds
Normal file
@@ -0,0 +1,34 @@
|
||||
OUTPUT_FORMAT("coff-a29k-big")
|
||||
SEARCH_DIR(/opt/a29k-rtems/a29k-rtems/lib);
|
||||
SECTIONS
|
||||
{
|
||||
.text : {
|
||||
*(.text)
|
||||
__etext = .;
|
||||
__CTOR_LIST__ = .;
|
||||
LONG((__CTOR_END__ - __CTOR_LIST__) / 4 - 2)
|
||||
*(.ctors)
|
||||
LONG(0)
|
||||
__CTOR_END__ = .;
|
||||
__DTOR_LIST__ = .;
|
||||
LONG((__DTOR_END__ - __DTOR_LIST__) / 4 - 2)
|
||||
*(.dtors)
|
||||
LONG(0)
|
||||
__DTOR_END__ = .;
|
||||
*(.lit)
|
||||
*(.shdata)
|
||||
}
|
||||
.shbss SIZEOF(.text) + ADDR(.text) : {
|
||||
*(.shbss)
|
||||
}
|
||||
.data : {
|
||||
*(.data)
|
||||
__edata = .;
|
||||
}
|
||||
.bss SIZEOF(.data) + ADDR(.data) :
|
||||
{
|
||||
*(.bss)
|
||||
*(COMMON)
|
||||
__end = ALIGN(0x8);
|
||||
}
|
||||
}
|
||||
@@ -41,7 +41,12 @@ no_cpu_isr_entry set_vector( /* returns old vector */
|
||||
rtems_interrupt_catch( handler, vector, (rtems_isr_entry *) &previous_isr );
|
||||
else {
|
||||
/* XXX: install non-RTEMS ISR as "raw" interupt */
|
||||
/* JRS just to link 9/22/2000 */
|
||||
#if 0
|
||||
_settrap( vector, handler );
|
||||
#else
|
||||
;
|
||||
#endif
|
||||
}
|
||||
return previous_isr;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user