Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 25 → Rev 26

/SPARTAN/trunk/include/arch.h
39,7 → 39,7
#define THREAD (cpu_private_data[CPU_ID_ARCH].thread)
#define TASK (cpu_private_data[CPU_ID_ARCH].task)
 
extern void arch_init(void);
extern void arch_pre_mm_init(void);
extern void arch_post_mm_init(void);
extern void calibrate_delay_loop(void);
 
/SPARTAN/trunk/src/Makefile.config
5,7 → 5,7
#ARCH=amd64
 
# Support for symetric multiprocessors
#SMP=__SMP__
SMP=__SMP__
 
# Improved support for hyperthreading
HT=__HT__
/SPARTAN/trunk/src/main/main.c
101,7 → 101,7
task_t *k;
thread_t *t;
 
arch_init();
arch_pre_mm_init();
 
heap_init(config.base + hardcoded_ktext_size + hardcoded_kdata_size, CONFIG_HEAP_SIZE);
frame_init();
170,9 → 170,10
*/
config.cpu_active++;
 
arch_init();
arch_pre_mm_init();
frame_init();
page_init();
arch_post_mm_init();
 
cpu_init();
calibrate_delay_loop();
/SPARTAN/trunk/arch/mips/src/mips.c
30,7 → 30,7
#include <arch/cp0.h>
#include <arch/exception.h>
 
void arch_init(void)
void arch_pre_mm_init(void)
{
/*
* Switch to BEV normal level so that exception vectors point to the kernel.
/SPARTAN/trunk/arch/ia32/src/ia32.c
45,7 → 45,7
#include <arch/interrupt.h>
 
 
void arch_init(void)
void arch_pre_mm_init(void)
{
pm_init();
 
/SPARTAN/trunk/arch/ia32/src/asm.s
129,6 → 129,9
push %ebp
movl %esp,%ebp
pusha
 
push %ds
push %es
# we must fill the data segment registers
movw $16,%ax
142,6 → 145,9
call trap_dispatcher
addl $8,%esp
 
pop %es
pop %ds
 
popa
pop %ebp
314,7 → 320,7
.global utext
utext:
0:
movl $0xdeadbeaf, %eax
# movl $0xdeadbeaf, %eax
int $48
jmp 0b
# not reached