21 #ifdef CONFIG_SELFMOD_INTC
23 #define INTC_BASE BARRIER_BASE_ADDR
25 static unsigned int intc_baseaddr;
26 #define INTC_BASE intc_baseaddr
40 #define MER_HIE (1<<1)
42 static void intc_enable_or_unmask(
struct irq_data *
d)
53 if (irqd_is_level_type(d))
57 static void intc_disable_or_mask(
struct irq_data *
d)
69 static void intc_mask_ack(
struct irq_data *
d)
79 .name =
"Xilinx INTC",
80 .irq_unmask = intc_enable_or_unmask,
81 .irq_mask = intc_disable_or_mask,
83 .irq_mask_ack = intc_mask_ack,
90 unsigned int hwirq,
irq = -1;
96 pr_debug(
"get_irq: hwirq=%d, irq=%d\n", hwirq, irq);
105 if (intr_mask & (1 << hw)) {
126 #ifdef CONFIG_SELFMOD_INTC
127 unsigned int intc_baseaddr = 0;
128 static int arr_func[] = {
130 (
int)&intc_enable_or_unmask,
131 (
int)&intc_disable_or_mask,
144 "xlnx,num-intr-inputs",
NULL));
148 if (intr_mask > (
u32)((1ULL << nr_irq) - 1))
151 #ifdef CONFIG_SELFMOD_INTC
155 intc->
name, intc_baseaddr, nr_irq, intr_mask);