libmetal
Loading...
Searching...
No Matches
Macros | Functions | Variables
irq.c File Reference
#include <errno.h>
#include <metal/irq_controller.h>
#include <metal/sys.h>
#include <metal/log.h>
#include <metal/mutex.h>
#include <metal/list.h>
#include <metal/utilities.h>
#include <metal/alloc.h>

Macros

#define MAX_IRQS   XLNX_MAXIRQS
 

Functions

static void metal_xlnx_irq_set_enable (struct metal_irq_controller *irq_cntr, int irq, unsigned int state)
 
static METAL_IRQ_CONTROLLER_DECLARE (xlnx_irq_cntr, 0, MAX_IRQS, NULL, metal_xlnx_irq_set_enable, NULL, irqs)
 
void metal_xlnx_irq_isr (void *arg)
 default handler More...
 
int metal_xlnx_irq_init (void)
 metal_xlnx_irq_int More...
 

Variables

static struct metal_irq irqs [MAX_IRQS]
 

Macro Definition Documentation

◆ MAX_IRQS

#define MAX_IRQS   XLNX_MAXIRQS

Function Documentation

◆ METAL_IRQ_CONTROLLER_DECLARE()

static METAL_IRQ_CONTROLLER_DECLARE ( xlnx_irq_cntr  ,
,
MAX_IRQS  ,
NULL  ,
metal_xlnx_irq_set_enable  ,
NULL  ,
irqs   
)
static

◆ metal_xlnx_irq_init()

int metal_xlnx_irq_init ( void  )

metal_xlnx_irq_int

Xilinx interrupt controller initialization. It will initialize the metal Xilinx IRQ controller data structure.

Returns
0 for success, or negative value for failure

◆ metal_xlnx_irq_isr()

void metal_xlnx_irq_isr ( void *  arg)

default handler

metal_xlnx_irq_isr

◆ metal_xlnx_irq_set_enable()

static void metal_xlnx_irq_set_enable ( struct metal_irq_controller irq_cntr,
int  irq,
unsigned int  state 
)
static

Xilinx common platform IRQ controller

Variable Documentation

◆ irqs

struct metal_irq irqs[MAX_IRQS]
static

Linux IRQs array