From e1676c1a0ddcdecd45914485813d7518a40cab17 Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Fri, 12 Feb 2021 09:35:40 -1000 Subject: Update motorola_power to irq-generic interrupt management - Add support to the BSP to enable irq-generic management - Update the powerpc shared irq code to support irq-generic. This is an opt in option for existing powerpc bsps. This change should be simpler now - Fix a number of issues in ISA IRQ controller handling by porting fixes from the i386 (PC) BSP Closes #4238 Closes #4239 --- bsps/powerpc/motorola_powerpc/include/bsp/irq.h | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) (limited to 'bsps/powerpc/motorola_powerpc/include/bsp/irq.h') diff --git a/bsps/powerpc/motorola_powerpc/include/bsp/irq.h b/bsps/powerpc/motorola_powerpc/include/bsp/irq.h index 3690dbbff7..cbb6ff69cf 100644 --- a/bsps/powerpc/motorola_powerpc/include/bsp/irq.h +++ b/bsps/powerpc/motorola_powerpc/include/bsp/irq.h @@ -19,9 +19,17 @@ #ifndef BSP_POWERPC_IRQ_H #define BSP_POWERPC_IRQ_H +#ifndef BSP_SHARED_HANDLER_SUPPORT #define BSP_SHARED_HANDLER_SUPPORT 1 +#endif + #include -#include + +/* + * Switch to using the generic support. Remove this when all BSPs have + * been converted. + */ +#define BSP_POWERPC_IRQ_GENERIC_SUPPORT 1 /* * 8259 edge/level control definitions at VIA @@ -107,6 +115,8 @@ extern "C" { #define BSP_IRQ_NUMBER (BSP_MISC_IRQ_MAX_OFFSET + 1) #define BSP_LOWEST_OFFSET (BSP_ISA_IRQ_LOWEST_OFFSET) #define BSP_MAX_OFFSET (BSP_MISC_IRQ_MAX_OFFSET) +#define BSP_INTERRUPT_VECTOR_MIN (BSP_LOWEST_OFFSET) +#define BSP_INTERRUPT_VECTOR_MAX (BSP_MAX_OFFSET) /* * Some ISA IRQ symbolic name definition */ @@ -191,6 +201,9 @@ int BSP_irq_ack_at_i8259s (const rtems_irq_number irqLine); */ int BSP_irq_enabled_at_i8259s (const rtems_irq_number irqLine); +unsigned short BSP_irq_suspend_i8259s(unsigned short mask); +void BSP_irq_resume_i8259s(unsigned short in_progress_save); + extern void BSP_rtems_irq_mng_init(unsigned cpuId); extern void BSP_i8259s_init(void); -- cgit v1.2.3