summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/m68k/efi68k
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-01-13 15:07:03 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-01-13 15:07:03 +0000
commit9b2c9693692991016e1674856fa147b65156a718 (patch)
tree55e30d6264f3f1231f05e61173787220cc56835d /c/src/lib/libbsp/m68k/efi68k
parentNew patch from Eric Norum plus some minor mods by Joel. (diff)
downloadrtems-9b2c9693692991016e1674856fa147b65156a718.tar.bz2
Made sweep of changes to get all BSPs to the same point on the linkcmds
and memory layout. Next step is to share the same bsp_pretasking_hook.
Diffstat (limited to 'c/src/lib/libbsp/m68k/efi68k')
-rw-r--r--c/src/lib/libbsp/m68k/efi68k/include/bsp.h2
-rw-r--r--c/src/lib/libbsp/m68k/efi68k/start/start.c2
-rw-r--r--c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c5
-rw-r--r--c/src/lib/libbsp/m68k/efi68k/startup/linkcmds5
4 files changed, 9 insertions, 5 deletions
diff --git a/c/src/lib/libbsp/m68k/efi68k/include/bsp.h b/c/src/lib/libbsp/m68k/efi68k/include/bsp.h
index eea1ea6348..b222fa5128 100644
--- a/c/src/lib/libbsp/m68k/efi68k/include/bsp.h
+++ b/c/src/lib/libbsp/m68k/efi68k/include/bsp.h
@@ -75,7 +75,7 @@ extern "C" {
extern char _etext[];
extern char _copy_start[];
extern char _edata[];
-extern char _bss_start[];
+extern char _clear_start[];
extern char end[];
extern char _copy_data_from_rom[];
extern char __end_of_ram[];
diff --git a/c/src/lib/libbsp/m68k/efi68k/start/start.c b/c/src/lib/libbsp/m68k/efi68k/start/start.c
index ea6973ee11..1904d34fb8 100644
--- a/c/src/lib/libbsp/m68k/efi68k/start/start.c
+++ b/c/src/lib/libbsp/m68k/efi68k/start/start.c
@@ -49,7 +49,7 @@ void boot_card();
*dst++ = *src++;
/* Zero bss */
- for (dst = _bss_start; dst< end; dst++)
+ for (dst = _clear_start; dst< end; dst++)
*dst = 0;
}
diff --git a/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c b/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c
index eb89a283cb..fdc19d1c58 100644
--- a/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c
+++ b/c/src/lib/libbsp/m68k/efi68k/startup/bspstart.c
@@ -90,6 +90,7 @@ void bsp_pretasking_hook(void)
void bsp_start( void )
{
void *vbr;
+ extern unsigned int _WorkspaceBase;
/* set_debug_traps(); */
/* breakpoint(); */
@@ -105,7 +106,11 @@ void bsp_start( void )
Cpu_table.interrupt_vector_table = vbr;
BSP_Configuration.work_space_start = (void *)
+ (((unsigned int)_WorkspaceBase + STACK_SIZE + 0x100) & 0xffffff00);
+
+#if 0
(((unsigned int)_end + STACK_SIZE + 0x100) & 0xffffff00);
+#endif
/* Clock_exit is done as an atexit() function */
}
diff --git a/c/src/lib/libbsp/m68k/efi68k/startup/linkcmds b/c/src/lib/libbsp/m68k/efi68k/startup/linkcmds
index c01b91a331..775c84d955 100644
--- a/c/src/lib/libbsp/m68k/efi68k/startup/linkcmds
+++ b/c/src/lib/libbsp/m68k/efi68k/startup/linkcmds
@@ -20,7 +20,7 @@ __DYNAMIC = 0;
* | _edata |
* +--------------------+
* | .bss |
- * | __bss_start | start of bss, cleared by crt0
+ * | _clear_start| start of bss, cleared by crt0
* | _end | start of heap, used by sbrk()
* +--------------------+
* | heap space |
@@ -144,7 +144,6 @@ SECTIONS
PROVIDE (_copy_end = .);
} >ram
.bss : {
- PROVIDE (_bss_start = .);
PROVIDE (_clear_start = .);
*(.bss)
*(COMMON)
@@ -159,7 +158,7 @@ SECTIONS
. += HeapSize;
PROVIDE (_HeapEnd = .);
- clear_end = .;
+ PROVIDE (_clear_end = .);
PROVIDE (_WorkspaceBase = .);
} >ram