mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2026-11-09 08:37:58 +08:00
1 parent
2fd684e233
commit
b391fbc61c
1 file changed
+19
-1
@@ -126,6 +126,23 @@ void bsp_interrupt_dispatch(uintptr_t exception_number)
|
||||
|
||||
rtems_status_code bsp_interrupt_facility_initialize(void)
|
||||
{
|
||||
unsigned int i;
|
||||
|
||||
for (i = BSP_INTERRUPT_VECTOR_MIN; i <= BSP_INTERRUPT_VECTOR_MAX; ++i) {
|
||||
uint32_t config;
|
||||
unsigned int priority;
|
||||
uint32_t destination;
|
||||
unsigned int err;
|
||||
|
||||
err = ev_int_get_config(i, &config, &priority, &destination);
|
||||
if (err != EV_SUCCESS)
|
||||
continue;
|
||||
|
||||
priority = QORIQ_PIC_PRIORITY_DEFAULT;
|
||||
|
||||
ev_int_set_config(i, config, priority, destination);
|
||||
}
|
||||
|
||||
return RTEMS_SUCCESSFUL;
|
||||
}
|
||||
|
||||
@@ -340,7 +357,8 @@ rtems_status_code bsp_interrupt_facility_initialize(void)
|
||||
for (i = BSP_INTERRUPT_VECTOR_MIN; i <= BSP_INTERRUPT_VECTOR_MAX; ++i) {
|
||||
volatile qoriq_pic_src_cfg *src_cfg = get_src_cfg(i);
|
||||
|
||||
src_cfg->vpr = VPR_MSK | VPR_P | VPR_PRIORITY(1) | VPR_VECTOR(i);
|
||||
src_cfg->vpr = VPR_MSK | VPR_P
|
||||
| VPR_PRIORITY(QORIQ_PIC_PRIORITY_DEFAULT) | VPR_VECTOR(i);
|
||||
|
||||
if (!pic_is_ipi(i)) {
|
||||
src_cfg->dr = 0x1;
|
||||
|
||||
Reference in new issue
Block a user