diff --git a/arch/x86/include/asm/icc.h b/arch/x86/include/asm/icc.h index 191a0566..cd059a42 100644 --- a/arch/x86/include/asm/icc.h +++ b/arch/x86/include/asm/icc.h @@ -56,6 +56,7 @@ int icc_halt(void); int icc_send_irq(int ue); void icc_mail_check(void); int icc_mail_ping(void); +int icc_mail_ping_irq(void); #endif diff --git a/arch/x86/scc/icc.c b/arch/x86/scc/icc.c index e0825836..2ef4ccfd 100644 --- a/arch/x86/scc/icc.c +++ b/arch/x86/scc/icc.c @@ -210,12 +210,12 @@ int icc_halt(void) return 0; } -#define ROUNDS 10000 +#define ROUNDS 100000 int icc_mail_ping( void ) { uint32_t flags; - uint64_t timer; + uint64_t timer = 0; int rem_rank = (my_ue+1)%2; int i; iRCCE_MAIL_HEADER* recv_header = NULL; @@ -275,15 +275,15 @@ int icc_mail_ping( void ) int icc_mail_ping_irq( void ) { /* return if not core 0 */ - if( my_ue ) return; + if( my_ue ) return 0; uint32_t flags; - uint64_t timer; + uint64_t timer = 0; int rem_rank = (my_ue+1)%2; int i; iRCCE_MAIL_HEADER* recv_header = NULL; - kprintf( "Hello from mail_ping ... \n" ); + kprintf( "Hello from mail_ping_irq ... \n" ); // disable interrupts flags = irq_nested_disable(); diff --git a/kernel/tests.c b/kernel/tests.c index 6d5a0e72..12e79e71 100644 --- a/kernel/tests.c +++ b/kernel/tests.c @@ -88,7 +88,7 @@ static int STDCALL foo(void* arg) #ifdef CONFIG_ROCKCREEK int STDCALL mail_ping(void* arg) { - // icc_mail_ping(); + icc_mail_ping(); icc_mail_ping_irq(); icc_halt();