From 9263147ac6cff78b2b25af1f3108b2b8268726bd Mon Sep 17 00:00:00 2001 From: Dimitri Sokolyuk Date: Wed, 4 Jul 2012 09:07:21 +0000 Subject: remove sei, reti enables interrupts --- kernel/kernel.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git a/kernel/kernel.c b/kernel/kernel.c index c82a795..9a40247 100644 --- a/kernel/kernel.c +++ b/kernel/kernel.c @@ -188,7 +188,7 @@ init(uint8_t sema, uint8_t stack) wdt_enable(TIMEOUT); - sei(); + swtch(); } void @@ -245,9 +245,8 @@ wait(uint8_t chan) } else { /* occupy semaphore and continue */ kern.semaphore |= _BV(chan); + sei(); } - - sei(); } void @@ -294,8 +293,6 @@ sleep(uint32_t sec, uint32_t usec) TAILQ_INSERT_TAIL(&kern.tq, kern.cur, t_link); swtch(); - - sei(); } void @@ -305,9 +302,8 @@ yield(void) TAILQ_REMOVE(kern.cur->rq, kern.cur, r_link); TAILQ_INSERT_TAIL(kern.cur->rq, kern.cur, r_link); - swtch(); - sei(); + swtch(); } void @@ -317,9 +313,8 @@ suspend(void) /* TODO: free memory */ TAILQ_REMOVE(kern.cur->rq, kern.cur, r_link); - swtch(); - sei(); + swtch(); } uint32_t -- cgit v1.2.3