From 9b2c9693692991016e1674856fa147b65156a718 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Thu, 13 Jan 2000 15:07:03 +0000 Subject: 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. --- c/src/lib/libbsp/m68k/efi332/include/bsp.h | 2 +- c/src/lib/libbsp/m68k/efi332/start/start.c | 2 +- c/src/lib/libbsp/m68k/efi332/startup/bspstart.c | 5 +++++ c/src/lib/libbsp/m68k/efi332/startup/linkcmds | 5 ++--- 4 files changed, 9 insertions(+), 5 deletions(-) (limited to 'c/src/lib/libbsp/m68k/efi332') diff --git a/c/src/lib/libbsp/m68k/efi332/include/bsp.h b/c/src/lib/libbsp/m68k/efi332/include/bsp.h index 6e5ffea7d7..284d54c27e 100644 --- a/c/src/lib/libbsp/m68k/efi332/include/bsp.h +++ b/c/src/lib/libbsp/m68k/efi332/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/efi332/start/start.c b/c/src/lib/libbsp/m68k/efi332/start/start.c index fa48e03ae2..4586a4c089 100644 --- a/c/src/lib/libbsp/m68k/efi332/start/start.c +++ b/c/src/lib/libbsp/m68k/efi332/start/start.c @@ -207,7 +207,7 @@ void dumby_start() { *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/efi332/startup/bspstart.c b/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c index 45699ac0cc..23651d0736 100644 --- a/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c +++ b/c/src/lib/libbsp/m68k/efi332/startup/bspstart.c @@ -85,6 +85,7 @@ void bsp_pretasking_hook(void) void bsp_start( void ) { void *vbr; + extern unsigned int _WorkspaceBase; /* * we only use a hook to get the C library initialized. @@ -97,7 +98,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/efi332/startup/linkcmds b/c/src/lib/libbsp/m68k/efi332/startup/linkcmds index ead7ebbe3e..85038ff746 100644 --- a/c/src/lib/libbsp/m68k/efi332/startup/linkcmds +++ b/c/src/lib/libbsp/m68k/efi332/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 | @@ -135,7 +135,6 @@ SECTIONS PROVIDE (_copy_end = .); } >ram .bss : { - PROVIDE (_bss_start = .); PROVIDE (_clear_start = .); *(.bss) *(COMMON) @@ -150,7 +149,7 @@ SECTIONS . += HeapSize; PROVIDE (_HeapEnd = .); - clear_end = .; + PROVIDE (_clear_end = .); PROVIDE (_WorkspaceBase = .); } >ram -- cgit v1.2.3