Skip to content

Commit

Permalink
bsp/i386: Use interrupt stack for init stack
Browse files Browse the repository at this point in the history
Update #3459.
  • Loading branch information
sebhub committed Nov 14, 2018
1 parent 5f32da0 commit a13b89b
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 13 deletions.
5 changes: 1 addition & 4 deletions bsps/i386/pc386/start/bspgetworkarea.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,15 +49,12 @@ static uintptr_t rtemsWorkAreaStart;
*/
uint32_t bsp_mem_size = 0;

/* Size of stack used during initialization. Defined in 'start.s'. */
extern uint32_t _stack_size;

static void bsp_size_memory(void)
{
uintptr_t topAddr;

/* Set the value of start of free memory. */
rtemsWorkAreaStart = (uint32_t)WorkAreaBase + _stack_size;
rtemsWorkAreaStart = (uint32_t)WorkAreaBase;

/* Align the RTEMS Work Area at beginning of free memory. */
if (rtemsWorkAreaStart & (CPU_ALIGNMENT - 1)) /* not aligned => align it */
Expand Down
12 changes: 3 additions & 9 deletions bsps/i386/pc386/start/start.S
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,6 @@
#error "Missing header ? CPU_STACK_ALIGNMENT NOT DEFINED"
#endif

.set STACK_SIZE, 0x1000

/*----------------------------------------------------------------------------+
| CODE section
+----------------------------------------------------------------------------*/
Expand Down Expand Up @@ -176,9 +174,9 @@ speakl: jmp speakl # and SPIN!!!
PUBLIC (_establish_stack)
SYM (_establish_stack):

movl $_end, eax # eax = end of bss/start of heap
addl $STACK_SIZE, eax # make room for stack
subl $4, eax # reserve room for arg to 'boot_card'
movl $_ISR_Stack_area_begin, eax # eax = end of bss/start of heap
addl $_ISR_Stack_size, eax # make room for stack
subl $4, eax # reserve room for arg to 'boot_card'
andl $ - CPU_STACK_ALIGNMENT, eax # align SP on CPU_STACK_ALIGNMENT boundary
movl eax, esp # set stack pointer
movl eax, ebp # set base pointer
Expand Down Expand Up @@ -305,10 +303,6 @@ SYM(_boot_multiboot_cmdline):
.byte 0
.endr

PUBLIC(_stack_size)
SYM(_stack_size):
.long STACK_SIZE

#ifdef DEBUG_EARLY_START

PUBLIC (welcome_msg)
Expand Down

0 comments on commit a13b89b

Please sign in to comment.