RTEMS 6.1-rc7
Loading...
Searching...
No Matches
Macros | Enumerations | Functions

Interrupt API. More...

#include <bsp.h>

Go to the source code of this file.

Macros

#define QORIQ_IRQ_ERROR   0
 
#define QORIQ_IRQ_ETSEC_TX_1_GROUP_1   1
 
#define QORIQ_IRQ_ETSEC_RX_1_GROUP_1   2
 
#define QORIQ_IRQ_ETSEC_ER_1_GROUP_1   8
 
#define QORIQ_IRQ_ETSEC_TX_3_GROUP_1   9
 
#define QORIQ_IRQ_ETSEC_RX_3_GROUP_1   10
 
#define QORIQ_IRQ_ETSEC_ER_3_GROUP_1   11
 
#define QORIQ_IRQ_ETSEC_TX_2_GROUP_1   35
 
#define QORIQ_IRQ_ETSEC_RX_2_GROUP_1   36
 
#define QORIQ_IRQ_TDM   46
 
#define QORIQ_IRQ_TDM_ERROR   47
 
#define QORIQ_IRQ_ETSEC_ER_2_GROUP_1   51
 
#define QORIQ_IRQ_L2_CACHE   0
 
#define QORIQ_IRQ_ECM   1
 
#define QORIQ_IRQ_DDR_CONTROLLER   2
 
#define QORIQ_IRQ_PCI_EXPRESS_3   8
 
#define QORIQ_IRQ_PCI_EXPRESS_2   9
 
#define QORIQ_IRQ_PCI_EXPRESS_1   10
 
#define QORIQ_IRQ_SRIO_ERR_WRT_1_2   32
 
#define QORIQ_IRQ_SRIO_OUT_DOORBELL_1   33
 
#define QORIQ_IRQ_SRIO_IN_DOORBELL_1   34
 
#define QORIQ_IRQ_SRIO_OUT_MSG_1   37
 
#define QORIQ_IRQ_SRIO_IN_MSG_1   38
 
#define QORIQ_IRQ_SRIO_OUT_MSG_2   39
 
#define QORIQ_IRQ_SRIO_IN_MSG_2   40
 
#define QORIQ_IRQ_ELBC   3
 
#define QORIQ_IRQ_DMA_CHANNEL_1_1   4
 
#define QORIQ_IRQ_DMA_CHANNEL_2_1   5
 
#define QORIQ_IRQ_DMA_CHANNEL_3_1   6
 
#define QORIQ_IRQ_DMA_CHANNEL_4_1   7
 
#define QORIQ_IRQ_USB_1   12
 
#define QORIQ_IRQ_ETSEC_TX_1   13
 
#define QORIQ_IRQ_ETSEC_RX_1   14
 
#define QORIQ_IRQ_ETSEC_TX_3   15
 
#define QORIQ_IRQ_ETSEC_RX_3   16
 
#define QORIQ_IRQ_ETSEC_ER_3   17
 
#define QORIQ_IRQ_ETSEC_ER_1   18
 
#define QORIQ_IRQ_ETSEC_TX_2   19
 
#define QORIQ_IRQ_ETSEC_RX_2   20
 
#define QORIQ_IRQ_ETSEC_ER_2   24
 
#define QORIQ_IRQ_DUART_1   26
 
#define QORIQ_IRQ_I2C   27
 
#define QORIQ_IRQ_PERFORMANCE_MONITOR   28
 
#define QORIQ_IRQ_SECURITY_1   29
 
#define QORIQ_IRQ_USB_2   30
 
#define QORIQ_IRQ_GPIO   31
 
#define QORIQ_IRQ_SECURITY_2   42
 
#define QORIQ_IRQ_ESPI   43
 
#define QORIQ_IRQ_ETSEC_IEEE_1588_1   52
 
#define QORIQ_IRQ_ETSEC_IEEE_1588_2   53
 
#define QORIQ_IRQ_ETSEC_IEEE_1588_3   54
 
#define QORIQ_IRQ_ESDHC   56
 
#define QORIQ_IRQ_DMA_CHANNEL_1_2   60
 
#define QORIQ_IRQ_DMA_CHANNEL_2_2   61
 
#define QORIQ_IRQ_DMA_CHANNEL_3_2   62
 
#define QORIQ_IRQ_DMA_CHANNEL_4_2   63
 
#define QORIQ_IRQ_EXT_BASE   64
 
#define QORIQ_IRQ_EXT_0   (QORIQ_IRQ_EXT_BASE + 0)
 
#define QORIQ_IRQ_EXT_1   (QORIQ_IRQ_EXT_BASE + 1)
 
#define QORIQ_IRQ_EXT_2   (QORIQ_IRQ_EXT_BASE + 2)
 
#define QORIQ_IRQ_EXT_3   (QORIQ_IRQ_EXT_BASE + 3)
 
#define QORIQ_IRQ_EXT_4   (QORIQ_IRQ_EXT_BASE + 4)
 
#define QORIQ_IRQ_EXT_5   (QORIQ_IRQ_EXT_BASE + 5)
 
#define QORIQ_IRQ_EXT_6   (QORIQ_IRQ_EXT_BASE + 6)
 
#define QORIQ_IRQ_EXT_7   (QORIQ_IRQ_EXT_BASE + 7)
 
#define QORIQ_IRQ_EXT_8   (QORIQ_IRQ_EXT_BASE + 8)
 
#define QORIQ_IRQ_EXT_9   (QORIQ_IRQ_EXT_BASE + 9)
 
#define QORIQ_IRQ_EXT_10   (QORIQ_IRQ_EXT_BASE + 10)
 
#define QORIQ_IRQ_EXT_11   (QORIQ_IRQ_EXT_BASE + 11)
 
#define QORIQ_IRQ_IS_EXT(vector)    ((vector) >= QORIQ_IRQ_EXT_0 && (vector) <= QORIQ_IRQ_EXT_11)
 
#define QORIQ_IRQ_IPI_BASE   (QORIQ_IRQ_EXT_11 + 1)
 
#define QORIQ_IRQ_IPI_0   (QORIQ_IRQ_IPI_BASE + 0)
 
#define QORIQ_IRQ_IPI_1   (QORIQ_IRQ_IPI_BASE + 1)
 
#define QORIQ_IRQ_IPI_2   (QORIQ_IRQ_IPI_BASE + 2)
 
#define QORIQ_IRQ_IPI_3   (QORIQ_IRQ_IPI_BASE + 3)
 
#define QORIQ_IRQ_MI_BASE   (QORIQ_IRQ_IPI_3 + 1)
 
#define QORIQ_IRQ_MI_0   (QORIQ_IRQ_MI_BASE + 0)
 
#define QORIQ_IRQ_MI_1   (QORIQ_IRQ_MI_BASE + 1)
 
#define QORIQ_IRQ_MI_2   (QORIQ_IRQ_MI_BASE + 2)
 
#define QORIQ_IRQ_MI_3   (QORIQ_IRQ_MI_BASE + 3)
 
#define QORIQ_IRQ_MI_4   (QORIQ_IRQ_MI_BASE + 4)
 
#define QORIQ_IRQ_MI_5   (QORIQ_IRQ_MI_BASE + 5)
 
#define QORIQ_IRQ_MI_6   (QORIQ_IRQ_MI_BASE + 6)
 
#define QORIQ_IRQ_MI_7   (QORIQ_IRQ_MI_BASE + 7)
 
#define QORIQ_IRQ_MSI_BASE   (QORIQ_IRQ_MI_7 + 1)
 
#define QORIQ_IRQ_MSI_0   (QORIQ_IRQ_MSI_BASE + 0)
 
#define QORIQ_IRQ_MSI_1   (QORIQ_IRQ_MSI_BASE + 1)
 
#define QORIQ_IRQ_MSI_2   (QORIQ_IRQ_MSI_BASE + 2)
 
#define QORIQ_IRQ_MSI_3   (QORIQ_IRQ_MSI_BASE + 3)
 
#define QORIQ_IRQ_MSI_4   (QORIQ_IRQ_MSI_BASE + 4)
 
#define QORIQ_IRQ_MSI_5   (QORIQ_IRQ_MSI_BASE + 5)
 
#define QORIQ_IRQ_MSI_6   (QORIQ_IRQ_MSI_BASE + 6)
 
#define QORIQ_IRQ_MSI_7   (QORIQ_IRQ_MSI_BASE + 7)
 
#define QORIQ_IRQ_GT_BASE   (QORIQ_IRQ_MSI_7 + 1)
 
#define QORIQ_IRQ_GT_A_0   (QORIQ_IRQ_GT_BASE + 0)
 
#define QORIQ_IRQ_GT_A_1   (QORIQ_IRQ_GT_BASE + 1)
 
#define QORIQ_IRQ_GT_A_2   (QORIQ_IRQ_GT_BASE + 2)
 
#define QORIQ_IRQ_GT_A_3   (QORIQ_IRQ_GT_BASE + 3)
 
#define QORIQ_IRQ_GT_B_0   (QORIQ_IRQ_GT_BASE + 4)
 
#define QORIQ_IRQ_GT_B_1   (QORIQ_IRQ_GT_BASE + 5)
 
#define QORIQ_IRQ_GT_B_2   (QORIQ_IRQ_GT_BASE + 6)
 
#define QORIQ_IRQ_GT_B_3   (QORIQ_IRQ_GT_BASE + 7)
 
#define QORIQ_INTERRUPT_SOURCE_COUNT   (QORIQ_IRQ_GT_B_3 + 1)
 
#define QORIQ_IS_INTERRUPT_SOURCE(vector)    (((rtems_vector_number) (vector)) < QORIQ_INTERRUPT_SOURCE_COUNT)
 
#define QORIQ_IRQ_MSI_MULTIPLEX_BASE   QORIQ_INTERRUPT_SOURCE_COUNT
 
#define QORIQ_IRQ_MSI_COUNT   256
 
#define QORIQ_IRQ_MSI_INDEX(vector)   ((vector) - QORIQ_IRQ_MSI_MULTIPLEX_BASE)
 
#define QORIQ_IRQ_MSI_VECTOR(index)   (QORIQ_IRQ_MSI_MULTIPLEX_BASE + (index))
 
#define QORIQ_IRQ_IS_MSI(vector)    (QORIQ_IRQ_MSI_INDEX(vector) < QORIQ_IRQ_MSI_COUNT)
 
#define BSP_INTERRUPT_VECTOR_COUNT   QORIQ_IRQ_MSI_VECTOR(QORIQ_IRQ_MSI_COUNT)
 
#define QORIQ_PIC_PRIORITY_LOWEST   14
 
#define QORIQ_PIC_PRIORITY_HIGHEST   0
 
#define QORIQ_PIC_PRIORITY_DISABLED   15
 
#define QORIQ_PIC_PRIORITY_INVALID   16
 
#define QORIQ_PIC_PRIORITY_DEFAULT   13
 
#define QORIQ_PIC_PRIORITY_IS_VALID(p)    (((uint32_t) (p)) <= QORIQ_PIC_PRIORITY_DISABLED)
 

Enumerations

enum  qoriq_eirq_sense_and_polarity { QORIQ_EIRQ_TRIGGER_EDGE_FALLING , QORIQ_EIRQ_TRIGGER_EDGE_RISING , QORIQ_EIRQ_TRIGGER_LEVEL_LOW , QORIQ_EIRQ_TRIGGER_LEVEL_HIGH }
 

Functions

rtems_status_code qoriq_pic_msi_allocate (rtems_vector_number *vector)
 
rtems_status_code qoriq_pic_msi_free (rtems_vector_number vector)
 
rtems_status_code qoriq_pic_msi_map (rtems_vector_number vector, uint64_t *addr, uint32_t *data)
 
rtems_status_code qoriq_pic_set_sense_and_polarity (rtems_vector_number vector, qoriq_eirq_sense_and_polarity new_sense_and_polarity, qoriq_eirq_sense_and_polarity *old_sense_and_polarity)
 Change polarity and sense settings of external interrupts.
 

Detailed Description

Interrupt API.