bios.HWI.instance("HWI_INT4").fxn = prog.extern("srio_db_ISR");
bios.HWI.instance("HWI_INT4").interruptSelectNumber = 20;
bios.HWI.instance("HWI_INT4").useDispatcher = 1;
中断服务程序为:
void srio_db_ISR(void)
{
Uint32 doorbell;
printf("enter doorbell interrupt \n");
//read doorbell.
doorbell = SRIO_REGS->DOORBELL_INTR[0].DOORBELL_ICSR;
//printf("received doorbell value %d\n",doorbell);
//clear doorbell interrupt
SRIO_REGS->DOORBELL_INTR[0].DOORBELL_ICCR = doorbell;
SRIO_REGS->INTDST_RATE_CNTL[0] = 0;
...............
}
请问还有那些需要注意的地方