Messages in this thread | | | From | Joel Porquet <> | Subject | [PATCH 00/48] Make the IRQCHIP_DECLARE macro globally accessible | Date | Wed, 1 Jul 2015 18:32:32 -0400 |
| |
At the moment the IRQCHIP_DECLARE macro is only declared locally in 'drivers/irqchip/irqchip.h'. That prevents from using it directly in arch/* directories whenever irqchip drivers only exist there, which happens in a few cases (e.g. arc, arm, microblaze and mips).
This patch makes the macro to be globally defined, in include/linux/irqchip.h, and thus usable for arch-specific declarations of irqchip drivers. In this way, it is very similar to what clocksource does (ie CLOCKSOURCE_OF_DECLARE is defined in include/linux/clocksource.h).
I split up everything into patches to make the integration easier. Please let me know if it's not, and in such case how to make it better.
For now, patch 01 of this series transfers the declaration of the macro IRQCHIP_DECLARE to the global header 'include/linux/irqchip.h'. The following patches, from 02 to 47, modify all the irqchip drivers that use IRQCHIP_DECLARE, one by one. And finally, the last patch 48 removes the private and now useless header 'drivers/irqchip/irqchip.h'.
Joel
Joel Porquet (48): irqchip: move IRQCHIP_DECLARE macro to include/linux/irqchip.h irqchip:exynos-combiner: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:armada-370-xp: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:atmel-aic5: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:atmel-aic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:bcm2835: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:bcm7038-l1: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:bcm7120-l2: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:brcmstb-l2: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:clps711x: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:crossbar: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:digicolor: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:dw-apb-ictl: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:gic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:gic-v3: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:gic-v3-its: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:hip04: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:keystone: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:mips-gic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:mmp: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:moxart: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:mtk-sysirq: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:mxs: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:nvic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:omap-intc: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:or1k-pic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:orion: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:s3c24xx: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:sirfsoc: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:sun4i: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:sunxi-nmi: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:tb10x: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:tegra: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:versatile-fpga: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:vf610-mscm-ir: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:vic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:vt8500: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:xtensa-mx: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:xtensa-pic: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:zevio: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h irqchip:spear-shirq: IRQCHIP_DECLARE macro moved to include/linux/irqchip.h arc:irqchip: IRQCHIP_DECLARE macro is now accessible microblaze:irqchip: IRQCHIP_DECLARE macro is now accessible mips:irqchip: IRQCHIP_DECLARE macro is now accessible arm:exynos:irqchip: IRQCHIP_DECLARE macro is now accessible arm:imx:irqchip: IRQCHIP_DECLARE macro is now accessible arm:omap2:irqchip: IRQCHIP_DECLARE macro is now accessible irqchip: remove header drivers/irqchip/irqchip.h
arch/arc/kernel/irq.c | 1 - arch/arm/mach-exynos/suspend.c | 3 ++- arch/arm/mach-imx/gpc.c | 7 ++----- arch/arm/mach-omap2/omap-wakeupgen.c | 6 +----- arch/microblaze/kernel/intc.c | 3 +-- arch/mips/bmips/irq.c | 2 +- drivers/irqchip/exynos-combiner.c | 3 +-- drivers/irqchip/irq-armada-370-xp.c | 3 +-- drivers/irqchip/irq-atmel-aic.c | 2 +- drivers/irqchip/irq-atmel-aic5.c | 2 +- drivers/irqchip/irq-bcm2835.c | 3 +-- drivers/irqchip/irq-bcm7038-l1.c | 3 +-- drivers/irqchip/irq-bcm7120-l2.c | 3 +-- drivers/irqchip/irq-brcmstb-l2.c | 2 -- drivers/irqchip/irq-clps711x.c | 3 +-- drivers/irqchip/irq-crossbar.c | 3 +-- drivers/irqchip/irq-digicolor.c | 3 +-- drivers/irqchip/irq-dw-apb-ictl.c | 3 +-- drivers/irqchip/irq-gic-v3-its.c | 3 +-- drivers/irqchip/irq-gic-v3.c | 2 +- drivers/irqchip/irq-gic.c | 2 +- drivers/irqchip/irq-hip04.c | 2 +- drivers/irqchip/irq-keystone.c | 3 +-- drivers/irqchip/irq-mips-gic.c | 3 +-- drivers/irqchip/irq-mmp.c | 3 +-- drivers/irqchip/irq-moxart.c | 3 +-- drivers/irqchip/irq-mtk-sysirq.c | 3 +-- drivers/irqchip/irq-mxs.c | 3 +-- drivers/irqchip/irq-nvic.c | 3 +-- drivers/irqchip/irq-omap-intc.c | 3 +-- drivers/irqchip/irq-or1k-pic.c | 3 +-- drivers/irqchip/irq-orion.c | 3 +-- drivers/irqchip/irq-s3c24xx.c | 3 +-- drivers/irqchip/irq-sirfsoc.c | 2 +- drivers/irqchip/irq-sun4i.c | 3 +-- drivers/irqchip/irq-sunxi-nmi.c | 2 +- drivers/irqchip/irq-tb10x.c | 2 +- drivers/irqchip/irq-tegra.c | 3 +-- drivers/irqchip/irq-versatile-fpga.c | 3 +-- drivers/irqchip/irq-vf610-mscm-ir.c | 3 +-- drivers/irqchip/irq-vic.c | 3 +-- drivers/irqchip/irq-vt8500.c | 3 +-- drivers/irqchip/irq-xtensa-mx.c | 3 +-- drivers/irqchip/irq-xtensa-pic.c | 3 +-- drivers/irqchip/irq-zevio.c | 3 +-- drivers/irqchip/irqchip.h | 28 ---------------------------- drivers/irqchip/spear-shirq.c | 3 +-- include/linux/irqchip.h | 14 ++++++++++++++ 48 files changed, 60 insertions(+), 115 deletions(-) delete mode 100644 drivers/irqchip/irqchip.h
-- 2.4.5
| |