forked from Imagelibrary/rtems
2007-12-08 Till Straumann <strauman@slac.stanford.edu>
* ep1a/irq/irq.c, gen5200/irq/irq.c, gen83xx/irq/irq_init.c, mbx8xx/irq/irq.c, mpc8260ads/irq/irq.c, mvme5500/irq/irq.c, psim/irq/no_pic.c, score603e/irq/irq.c, shared/irq/irq_supp.h, shared/irq/openpic_i8259_irq.c, virtex/irq/irq_init.c: let C_dispatch_irq_handler() return zero to indicate to low-level exception handling code that the exception was handled (not used yet).
This commit is contained in:
@@ -1,3 +1,13 @@
|
||||
2007-12-08 Till Straumann <strauman@slac.stanford.edu>
|
||||
|
||||
* ep1a/irq/irq.c, gen5200/irq/irq.c, gen83xx/irq/irq_init.c,
|
||||
mbx8xx/irq/irq.c, mpc8260ads/irq/irq.c, mvme5500/irq/irq.c,
|
||||
psim/irq/no_pic.c, score603e/irq/irq.c, shared/irq/irq_supp.h,
|
||||
shared/irq/openpic_i8259_irq.c, virtex/irq/irq_init.c:
|
||||
let C_dispatch_irq_handler() return zero to indicate to
|
||||
low-level exception handling code that the exception
|
||||
was handled (not used yet).
|
||||
|
||||
2007-12-08 Till Straumann <strauman@slac.stanford.edu>
|
||||
|
||||
*shared/irq/irq_supp.h: removed cpp test for
|
||||
|
||||
@@ -452,7 +452,7 @@ unsigned BSP_spuriousIntr = 0;
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (struct _BSP_Exception_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (struct _BSP_Exception_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned int irq;
|
||||
register unsigned isaIntr; /* boolean */
|
||||
@@ -469,7 +469,7 @@ void C_dispatch_irq_handler (struct _BSP_Exception_frame *frame, unsigned int ex
|
||||
rtems_hdl_tbl[BSP_DECREMENTER].hdl( rtems_hdl_tbl[BSP_DECREMENTER].handle );
|
||||
|
||||
_CPU_MSR_SET(msr);
|
||||
return;
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
@@ -477,7 +477,7 @@ void C_dispatch_irq_handler (struct _BSP_Exception_frame *frame, unsigned int ex
|
||||
|
||||
if (irq == OPENPIC_VEC_SPURIOUS) {
|
||||
++BSP_spuriousIntr;
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
|
||||
isaIntr = (irq == BSP_PCI_ISA_BRIDGE_IRQ);
|
||||
@@ -529,6 +529,7 @@ void C_dispatch_irq_handler (struct _BSP_Exception_frame *frame, unsigned int ex
|
||||
#endif
|
||||
openpic_eoi(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -635,7 +635,7 @@ int BSP_rtems_irq_mngt_get(rtems_irq_global_settings** config)
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned int irq;
|
||||
register unsigned int msr;
|
||||
@@ -652,7 +652,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
/* call the module specific handler and pass the specific handler */
|
||||
rtems_hdl_tbl[BSP_DECREMENTER].hdl(0);
|
||||
|
||||
return;
|
||||
return 0;
|
||||
|
||||
case ASM_60X_SYSMGMT_VECTOR:
|
||||
|
||||
@@ -966,6 +966,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
break;
|
||||
|
||||
} /* end of switch(excNum) */
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -89,7 +89,7 @@ void BSP_irqexc_off_fnc(rtems_irq_connect_data *unused)
|
||||
/***********************************************************
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
uint32_t msr_value,new_msr;
|
||||
|
||||
@@ -116,6 +116,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
BSP_irq_handle_at_ipic(excNum);
|
||||
break;
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _ThreadProcessSignalsFromIrq (BSP_Exception_frame* ctx)
|
||||
|
||||
@@ -402,7 +402,7 @@ volatile unsigned int maxLoop = 0;
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned int irq;
|
||||
register unsigned cpmIntr; /* boolean */
|
||||
@@ -423,7 +423,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
rtems_hdl_tbl[BSP_DECREMENTER].hdl(rtems_hdl_tbl[BSP_DECREMENTER].handle);
|
||||
|
||||
_CPU_MSR_SET(msr);
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
/*
|
||||
* Handle external interrupt generated by SIU on PPC core
|
||||
@@ -490,6 +490,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
++ loopCounter;
|
||||
#endif
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _ThreadProcessSignalsFromIrq (BSP_Exception_frame* ctx)
|
||||
|
||||
@@ -422,7 +422,7 @@ volatile unsigned int maxLoop = 0;
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned int irq;
|
||||
#if 0
|
||||
@@ -448,7 +448,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
|
||||
_CPU_MSR_SET(msr);
|
||||
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -503,6 +503,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
++ loopCounter;
|
||||
#endif
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _ThreadProcessSignalsFromIrq (BSP_Exception_frame* ctx)
|
||||
|
||||
@@ -586,7 +586,7 @@ int BSP_rtems_irq_mngt_get(rtems_irq_global_settings** config)
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned msr, new_msr;
|
||||
unsigned long irqCause[3]={0, 0,0};
|
||||
@@ -602,7 +602,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
rtems_hdl_tbl[BSP_DECREMENTER].hdl(rtems_hdl_tbl[BSP_DECREMENTER].handle);
|
||||
|
||||
_MSR_SET(msr);
|
||||
return;
|
||||
return 0;
|
||||
|
||||
}
|
||||
|
||||
@@ -650,6 +650,8 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
out_le32((volatile unsigned *)0xf1000c6c, oldMask[1]);
|
||||
out_le32((volatile unsigned *)0xf100f10c, oldMask[2]);
|
||||
in_le32((volatile unsigned *)0xf100f10c);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _ThreadProcessSignalsFromIrq (BSP_Exception_frame* ctx)
|
||||
|
||||
@@ -27,7 +27,7 @@ static rtems_irq_connect_data dflt_entry;
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler(
|
||||
int C_dispatch_irq_handler(
|
||||
struct _BSP_Exception_frame *frame,
|
||||
unsigned int excNum
|
||||
)
|
||||
@@ -43,8 +43,9 @@ void C_dispatch_irq_handler(
|
||||
bsp_irq_dispatch_list(rtems_hdl_tbl, BSP_DECREMENTER, dflt_entry.hdl);
|
||||
|
||||
_ISR_Set_level(l_orig);
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
return -1; /* unhandled interrupt */
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
@@ -400,7 +400,7 @@ unsigned BSP_spuriousIntr = 0;
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned int irq;
|
||||
register unsigned msr;
|
||||
@@ -414,7 +414,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
rtems_hdl_tbl[BSP_DECREMENTER].hdl(rtems_hdl_tbl[BSP_DECREMENTER].handle);
|
||||
|
||||
_CPU_MSR_SET(msr);
|
||||
return;
|
||||
return 0;
|
||||
|
||||
}
|
||||
irq = read_and_clear_irq();
|
||||
@@ -435,6 +435,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
|
||||
_CPU_MSR_SET(msr);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _ThreadProcessSignalsFromIrq (BSP_Exception_frame* ctx)
|
||||
|
||||
@@ -213,7 +213,7 @@ unsigned BSP_spuriousIntr = 0;
|
||||
/*
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (BSP_Exception_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (BSP_Exception_frame *frame, unsigned int excNum)
|
||||
{
|
||||
register unsigned int irq;
|
||||
#ifdef BSP_PCI_ISA_BRIDGE_IRQ
|
||||
@@ -226,13 +226,13 @@ void C_dispatch_irq_handler (BSP_Exception_frame *frame, unsigned int excNum)
|
||||
|
||||
bsp_irq_dispatch_list(rtems_hdl_tbl, BSP_DECREMENTER, default_rtems_entry.hdl);
|
||||
|
||||
return;
|
||||
return 0;
|
||||
|
||||
}
|
||||
irq = openpic_irq(0);
|
||||
if (irq == OPENPIC_VEC_SPURIOUS) {
|
||||
++BSP_spuriousIntr;
|
||||
return;
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* some BSPs might want to use a different numbering... */
|
||||
@@ -279,4 +279,5 @@ void C_dispatch_irq_handler (BSP_Exception_frame *frame, unsigned int excNum)
|
||||
#endif
|
||||
openpic_eoi(0);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -88,7 +88,7 @@ void BSP_irqexc_off_fnc(rtems_irq_connect_data *unused)
|
||||
/***********************************************************
|
||||
* High level IRQ handler called from shared_raw_irq_code_entry
|
||||
*/
|
||||
void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
int C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
{
|
||||
|
||||
|
||||
@@ -121,6 +121,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum)
|
||||
break;
|
||||
#endif
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void _ThreadProcessSignalsFromIrq (BSP_Exception_frame* ctx)
|
||||
|
||||
Reference in New Issue
Block a user