I took your advice so instead of using "L4_Reply()" I used "L4_Send()" and i
took out the unnecessary error check, but nothing changed. The code still
does not seem to be able to acknowledge the interrupt the new code looks
like this:

#include <l4io.h>
#include <l4/ipc.h>
#include <l4/schedule.h>
#include <l4/thread.h>

int main(int argc, char** argv){
 printf("application started\n");
L4_ThreadId_t root = L4_MyGlobalId(); //roottask
 L4_ThreadId_t irq1 = L4_GlobalId(1, 1); //keyboard interrupt
L4_Time_t one_sec = L4_TimePeriod(1000000);
 L4_ThreadId_t from;
L4_AssociateInterrupt(irq1, root);
while(1){
 L4_Wait(&from);
if(from == irq1){
printf("interrupt received\n");
 L4_LoadMR(0, 0);
L4_Send(from, one_sec); //here I'm assuming that 1 second is enough time
 }
}
return 0;
}

I don't of any reason why this shouldn't work.

Reply via email to