34#ifndef VIRTEX_IRQ_IRQ_H
35#define VIRTEX_IRQ_IRQ_H
39#include <bsp/opbintctrl.h>
49#define BSP_OPBINTC_PER_IRQ_NUMBER XPAR_INTC_MAX_NUM_INTR_INPUTS
50#define BSP_OPBINTC_IRQ_LOWEST_OFFSET 0
51#define BSP_OPBINTC_IRQ_MAX_OFFSET (BSP_OPBINTC_IRQ_LOWEST_OFFSET\
52 +BSP_OPBINTC_PER_IRQ_NUMBER-1)
54#define BSP_IS_OPBINTC_IRQ(irqnum) \
55 (((irqnum) >= BSP_OPBINTC_IRQ_LOWEST_OFFSET) && \
56 ((irqnum) <= BSP_OPBINTC_IRQ_MAX_OFFSET))
60#define BSP_PROCESSOR_IRQ_NUMBER 3
61#define BSP_PROCESSOR_IRQ_LOWEST_OFFSET (BSP_OPBINTC_IRQ_MAX_OFFSET+1)
62#define BSP_PROCESSOR_IRQ_MAX_OFFSET (BSP_PROCESSOR_IRQ_LOWEST_OFFSET\
63 +BSP_PROCESSOR_IRQ_NUMBER-1)
65#define BSP_IS_PROCESSOR_IRQ(irqnum) \
66 (((irqnum) >= BSP_PROCESSOR_IRQ_LOWEST_OFFSET) && \
67 ((irqnum) <= BSP_PROCESSOR_IRQ_MAX_OFFSET))
71#define BSP_IRQ_NUMBER (BSP_PROCESSOR_IRQ_MAX_OFFSET+1)
72#define BSP_LOWEST_OFFSET BSP_OPBINTC_IRQ_LOWEST_OFFSET
73#define BSP_MAX_OFFSET BSP_PROCESSOR_IRQ_MAX_OFFSET
75#define BSP_IS_VALID_IRQ(irqnum) \
76 (BSP_IS_PROCESSOR_IRQ(irqnum) \
77 || BSP_IS_OPBINTC_IRQ(irqnum))
79#define BSP_INTERRUPT_VECTOR_COUNT (BSP_PROCESSOR_IRQ_MAX_OFFSET + 1)
90 BSP_OPBINTC_IRQ_FIRST = BSP_OPBINTC_IRQ_LOWEST_OFFSET,
95 BSP_OPBINTC_IRQ_LAST = BSP_OPBINTC_IRQ_MAX_OFFSET,
96 BSP_EXT = BSP_PROCESSOR_IRQ_LOWEST_OFFSET + 0,
97 BSP_PIT = BSP_PROCESSOR_IRQ_LOWEST_OFFSET + 1,
98 BSP_CRIT = BSP_PROCESSOR_IRQ_LOWEST_OFFSET + 2
99 } rtems_irq_symbolic_name;
101#define BSP_OPBINTC_XPAR(xname) (BSP_OPBINTC_IRQ_LOWEST_OFFSET+xname)
This header file is provided for backward compatiblility.