libmetal
Loading...
Searching...
No Matches
Macros | Functions | Variables
irq.c File Reference
#include <metal/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>
#include <metal/system/freertos/xlnx/sys.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
 
int metal_xlnx_irq_init (void)
 metal_xlnx_irq_int
 

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 ,
0 ,
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