Structure of irqchip
.
Samples:
irq-bcm6345-l1.c:IRQCHIP_DECLARE(bcm6345_l1, "brcm,bcm6345-l1-intc", bcm6345_l1_of_init); irq-bcm7038-l1.c:IRQCHIP_DECLARE(bcm7038_l1, "brcm,bcm7038-l1-intc", bcm7038_l1_of_init); irq-bcm7120-l2.c:IRQCHIP_DECLARE(bcm7120_l2_intc, "brcm,bcm7120-l2-intc", irq-bcm7120-l2.c:IRQCHIP_DECLARE(bcm3380_l2_intc, "brcm,bcm3380-l2-intc", irq-brcmstb-l2.c:IRQCHIP_DECLARE(brcmstb_l2_intc, "brcm,l2-intc", brcmstb_l2_edge_intc_of_init);
where:
/* * This macro must be used by the different irqchip drivers to declare * the association between their DT compatible string and their * initialization function. * * @name: name that must be unique accross all IRQCHIP_DECLARE of the * same file. * @compstr: compatible string of the irqchip driver * @fn: initialization function */ #define IRQCHIP_DECLARE(name, compat, fn) OF_DECLARE_2(irqchip, name, compat, fn)