public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/48] Make the IRQCHIP_DECLARE macro globally accessible
@ 2015-07-01 22:32 Joel Porquet
  2015-07-02  7:03 ` Vineet Gupta
  0 siblings, 1 reply; 7+ messages in thread
From: Joel Porquet @ 2015-07-01 22:32 UTC (permalink / raw)
  To: joel
  Cc: vgupta, linux, kgene, k.kozlowski, shawn.guo, kernel, tony,
	monstr, cernekee, f.fainelli, ralf, tglx, jason, swarren, lee,
	shc_work, baruch, matthias.bgg, baohua, maxime.ripard,
	thierry.reding, gnurou, chris, jcmvbkbc, soren.brinkmann,
	linux-kernel

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


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2015-07-02 20:29 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-07-01 22:32 [PATCH 00/48] Make the IRQCHIP_DECLARE macro globally accessible Joel Porquet
2015-07-02  7:03 ` Vineet Gupta
2015-07-02 18:23   ` Joël Porquet
2015-07-02 18:34     ` Matthias Brugger
2015-07-02 19:06     ` Thomas Gleixner
2015-07-02 19:42       ` Joël Porquet
2015-07-02 20:29         ` Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox