cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Visitor
Visitor
4,778 Views
Registered: ‎04-09-2016

What's the difference between generic interrupt controller and xilinx interrupt controller?

When I read the code in xaxicdma_example_simple_intr.c, I saw two interrupt controllers, generic interrupt controller and xilinx interrupt controller, whose drivers defined in xscugic.h and xintc.h. 

What is the difference? When should I use one over the other?

 

This is a piece of code from xaxicdma_example_simple_intr.c

#ifdef XPAR_INTC_0_DEVICE_ID
#define DMA_CTRL_DEVICE_ID	XPAR_AXICDMA_0_DEVICE_ID
#define INTC_DEVICE_ID		XPAR_INTC_0_DEVICE_ID
#define DMA_CTRL_IRPT_INTR	XPAR_INTC_0_AXICDMA_0_VEC_ID
#else
#define DMA_CTRL_DEVICE_ID 	XPAR_AXICDMA_0_DEVICE_ID
#define INTC_DEVICE_ID		XPAR_SCUGIC_SINGLE_DEVICE_ID
#define DMA_CTRL_IRPT_INTR	XPAR_FABRIC_AXICDMA_0_VEC_ID
#endif

what does XPAR_INTC_0_DEVICE_ID mean? When will it be defined?

0 Kudos
Reply
2 Replies
Participant
Participant
3,197 Views
Registered: ‎01-28-2013

I had this exact question!

 

Looking at the modification history of xuartps_intr_example.c I think it might have something to do with the Zynq Ultrascale+ MP:

* 3.1	kvn		04/10/15 Added code to support Zynq Ultrascale+ MP.
* 3.1   mus     01/14/16 Added support for intc interrupt controller
0 Kudos
Reply
Teacher
Teacher
3,185 Views
Registered: ‎03-31-2012

@bang0306 Xilinx interrupt controller is the PL based interrupt controller IP Xilinx made. Generic interrupt controller is the one built into the ARM SoC side.

- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.