Subversion Repositories HelenOS-historic

Compare Revisions

Regard whitespace Rev 1006 → Rev 1007

/kernel/trunk/generic/src/proc/scheduler.c
295,6 → 295,7
*/
spinlock_unlock(&THREAD->lock);
interrupts_restore(THREAD->saved_context.ipl);
return;
}
 
/kernel/trunk/arch/ppc32/include/interrupt.h
34,6 → 34,7
 
#define VECTOR_DECREMENTER 10
 
extern void start_decrementer(void);
extern void interrupt_init(void);
 
#endif
/kernel/trunk/arch/ppc32/include/asm.h
120,13 → 120,16
{
__address v;
__asm__ volatile ("and %0, %%r1, %1\n" : "=r" (v) : "r" (~(STACK_SIZE-1)));
__asm__ volatile ("and %0, %%sp, %1\n" : "=r" (v) : "r" (~(STACK_SIZE-1)));
return v;
}
 
static inline void cpu_sleep(void)
{
}
 
void cpu_halt(void);
void cpu_sleep(void);
void asm_delay_loop(__u32 t);
 
#endif
/kernel/trunk/arch/ppc32/include/context.h
33,7 → 33,7
# include <arch/types.h>
#endif
 
#define SP_DELTA 8
#define SP_DELTA 16
 
struct context {
__address sp;
/kernel/trunk/arch/ppc32/src/fpu_context.S
80,19 → 80,19
.endm
 
fpu_context_save:
FPU_CONTEXT_STORE r3
// FPU_CONTEXT_STORE r3
//
// mffs fr0
// stfd fr0, OFFSET_FPSCR(r3)
mffs fr0
stfd fr0, OFFSET_FPSCR(r3)
blr
fpu_context_restore:
FPU_CONTEXT_LOAD r3
// FPU_CONTEXT_LOAD r3
//
// lfd fr0, OFFSET_FPSCR(r3)
// mtfsf 7, fr0
lfd fr0, OFFSET_FPSCR(r3)
mtfsf 7, fr0
blr
 
fpu_init:
/kernel/trunk/arch/ppc32/src/asm.S
30,14 → 30,10
 
.text
 
.global cpu_sleep
.global iret
.global memsetb
.global memcpy
 
cpu_sleep:
b cpu_sleep
 
iret:
lwz r3, 144(sp)
mtxer r3
/kernel/trunk/arch/ppc32/src/ppc32.c
37,6 → 37,9
/* Initialize dispatch table */
interrupt_init();
 
/* Start decrementer */
start_decrementer();
 
ppc32_console_init();
cuda_init();
}
57,3 → 60,4
void calibrate_delay_loop(void)
{
}
 
/kernel/trunk/arch/ppc32/src/dummy.s
47,4 → 47,4
b userspace
 
asm_delay_loop:
b asm_delay_loop
blr
/kernel/trunk/arch/ppc32/src/interrupt.c
33,9 → 33,20
#include <time/clock.h>
#include <print.h>
 
 
void start_decrementer(void)
{
asm volatile (
"mtdec %0\n"
:: "r" (1000)
);
}
 
 
static void exception_decrementer(int n, istate_t *istate)
{
clock();
start_decrementer();
}