From a3ef2567408225bc6796523543ead4cf491bb683 Mon Sep 17 00:00:00 2001 From: Joel Sherrill Date: Tue, 25 Mar 2003 16:46:01 +0000 Subject: [PATCH] 2003-03-25 Till Straumann PR 349/bsps * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency on the vmeUniverse driver. It is now possible to use the ppc/shared/irq code on non-VME BSPs without triggering linkage of the vmeUniverse driver. --- c/src/lib/libbsp/powerpc/shared/ChangeLog | 8 ++++++++ c/src/lib/libbsp/powerpc/shared/irq/irq.c | 4 +++- c/src/lib/libbsp/powerpc/shared/vme/VME.h | 3 +-- c/src/lib/libbsp/powerpc/shared/vme/vmeconfig.c | 2 -- 4 files changed, 12 insertions(+), 5 deletions(-) diff --git a/c/src/lib/libbsp/powerpc/shared/ChangeLog b/c/src/lib/libbsp/powerpc/shared/ChangeLog index 7eb50ee3c4..5e82823261 100644 --- a/c/src/lib/libbsp/powerpc/shared/ChangeLog +++ b/c/src/lib/libbsp/powerpc/shared/ChangeLog @@ -1,3 +1,11 @@ +2003-03-25 Till Straumann + + PR 349/bsps + * irq/irq.c, vme/VME.h, vme/vmeconfig.c: Fixes library dependency + on the vmeUniverse driver. It is now possible to use the ppc/shared/irq + code on non-VME BSPs without triggering linkage of the vmeUniverse + driver. + 2003-03-18 Till Straumann PR 356/bsps diff --git a/c/src/lib/libbsp/powerpc/shared/irq/irq.c b/c/src/lib/libbsp/powerpc/shared/irq/irq.c index 94c7f72119..ca26ce9162 100644 --- a/c/src/lib/libbsp/powerpc/shared/irq/irq.c +++ b/c/src/lib/libbsp/powerpc/shared/irq/irq.c @@ -315,6 +315,8 @@ int BSP_rtems_irq_mngt_get(rtems_irq_global_settings** config) return 0; } +int _BSP_vme_bridge_irq = -1; + static unsigned spuriousIntr = 0; /* * High level IRQ handler called from shared_raw_irq_code_entry @@ -381,7 +383,7 @@ void C_dispatch_irq_handler (CPU_Interrupt_frame *frame, unsigned int excNum) * it can re-enable the openpic while handling * VME interrupts (-> VME priorities in software) */ - if (BSP_PCI_VME_BRIDGE_IRQ!=irq) + if (_BSP_vme_bridge_irq != irq) #endif openpic_eoi(0); } diff --git a/c/src/lib/libbsp/powerpc/shared/vme/VME.h b/c/src/lib/libbsp/powerpc/shared/vme/VME.h index a7aea8a3bd..0feae86d5c 100644 --- a/c/src/lib/libbsp/powerpc/shared/vme/VME.h +++ b/c/src/lib/libbsp/powerpc/shared/vme/VME.h @@ -88,11 +88,10 @@ typedef void (*BSP_VME_ISR_t)(void *usrArg, unsigned long vector); * must be omitted. */ #define BSP_PCI_VME_DRIVER_DOES_EOI -extern int _BSP_vme_bridge_irq; /* don't reference vmeUniverse0PciIrqLine directly here - leave it up to * bspstart() to set BSP_vme_bridge_irq. That way, we can generate variants * of the BSP with / without the universe driver... */ -#define BSP_PCI_VME_BRIDGE_IRQ _BSP_vme_bridge_irq +extern int _BSP_vme_bridge_irq; #endif diff --git a/c/src/lib/libbsp/powerpc/shared/vme/vmeconfig.c b/c/src/lib/libbsp/powerpc/shared/vme/vmeconfig.c index 9092680067..38d1100623 100644 --- a/c/src/lib/libbsp/powerpc/shared/vme/vmeconfig.c +++ b/c/src/lib/libbsp/powerpc/shared/vme/vmeconfig.c @@ -24,8 +24,6 @@ void BSP_vme_config(void) __attribute__ (( weak, alias("__BSP_default_vme_config") )); -int _BSP_vme_bridge_irq = -1; - SPR_RO(DBAT0U) void