kernel_optimize_test/drivers/irqchip
Kevin Cernekee 5b5468cf1f IRQCHIP: bcm7120-l2: Refactor driver for arbitrary IRQEN/IRQSTAT offsets
Currently the driver assumes that REG_BASE+0x00 is the IRQ enable mask,
and REG_BASE+0x04 is the IRQ status mask.  This is true on BCM3384 and
BCM7xxx, but it is not true for some of the controllers found on BCM63xx
chips.  So we will change a couple of key assumptions:

 - Don't assume that both the IRQEN and IRQSTAT registers will be
   covered by a single ioremap() operation.

 - Don't assume any particular ordering (IRQSTAT might show up before
   IRQEN on some chips).

 - For an L2 controller with >=64 IRQs, don't assume that every
   IRQEN/IRQSTAT pair will use the same register spacing.

This patch changes the "plumbing" but doesn't yet provide a way for users
to instantiate a controller with arbitrary IRQEN/IRQSTAT offsets.

Signed-off-by: Kevin Cernekee <cernekee@gmail.com>
Cc: f.fainelli@gmail.com
Cc: jaedon.shin@gmail.com
Cc: abrestic@chromium.org
Cc: tglx@linutronix.de
Cc: jason@lakedaemon.net
Cc: jogo@openwrt.org
Cc: computersforpeace@gmail.com
Cc: linux-mips@linux-mips.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/8841/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
2015-04-01 17:21:37 +02:00
..
exynos-combiner.c irqchip: exynos-combiner: Fix compilation error on ARM64 2014-09-03 11:56:39 +00:00
irq-armada-370-xp.c irqchip: armada-370-xp: Fix chained per-cpu interrupts 2015-03-08 03:58:55 +00:00
irq-atmel-aic-common.c irqchip: atmel-aic-common: Prevent clobbering of priority when changing IRQ type 2015-01-07 12:41:45 +00:00
irq-atmel-aic-common.h irqchip: atmel-aic: Add irq fixup for RTT block 2014-11-09 04:36:38 +00:00
irq-atmel-aic.c Merge branch 'irqchip/atmel' into irqchip/core 2014-11-26 07:02:27 +00:00
irq-atmel-aic5.c genirq: Generic chip: Change irq_reg_{readl,writel} arguments 2014-11-09 04:01:22 +00:00
irq-bcm2835.c
irq-bcm7120-l2.c IRQCHIP: bcm7120-l2: Refactor driver for arbitrary IRQEN/IRQSTAT offsets 2015-04-01 17:21:37 +02:00
irq-brcmstb-l2.c IRQCHIP: brcmstb-l2: don't clear wakeable interrupts at init time 2015-04-01 17:21:36 +02:00
irq-clps711x.c irqchip: clps711x: Convert to handle_domain_irq 2014-09-03 13:10:32 +00:00
irq-crossbar.c irqchip: crossbar: Off by one bugs in init 2014-08-18 11:48:11 +00:00
irq-digicolor.c irqchip: Conexant CX92755 interrupts controller driver 2015-01-26 11:38:23 +01:00
irq-dw-apb-ictl.c irqchip: dw-apb-ictl: Add PM support 2014-11-26 16:08:03 +00:00
irq-gic-common.c irqchip: gic: Allow interrupt level to be set for PPIs 2015-01-26 11:38:23 +01:00
irq-gic-common.h irqchip: gic: Allow interrupt level to be set for PPIs 2015-01-26 11:38:23 +01:00
irq-gic-v2m.c irqchip: gic-v2m: Add support for ARM GICv2m MSI(-X) doorbell 2014-11-26 15:55:18 +00:00
irq-gic-v3-its.c irqchip: gicv3-its: Support safe initialization 2015-03-08 05:34:58 +00:00
irq-gic-v3.c irqchip: gic-v3: Fix out of bounds access to cpu_logical_map 2015-03-08 05:33:29 +00:00
irq-gic.c irqchip: gic: Fix unsafe locking reported by lockdep 2015-03-08 05:33:06 +00:00
irq-hip04.c irqchip: gic: Allow interrupt level to be set for PPIs 2015-01-26 11:38:23 +01:00
irq-imgpdc.c
irq-keystone.c irqchip: drop owner assignment from platform_drivers 2014-10-20 16:20:42 +02:00
irq-metag-ext.c
irq-metag.c
irq-mips-gic.c IRQCHIP: irq-mips-gic: Add new functions to start/stop the GIC counter 2015-03-31 12:04:13 +02:00
irq-mmp.c irqchip: mmp: Convert to handle_domain_irq 2014-09-03 13:10:34 +00:00
irq-moxart.c
irq-mtk-sysirq.c irqchip: mtk-sysirq: Get irq number from register resource size 2015-01-26 11:38:22 +01:00
irq-mxs.c irqchip: mxs: Convert to handle_domain_irq 2014-09-03 13:10:35 +00:00
irq-nvic.c irqchip: nvic: Use the generic noop function 2014-06-21 02:12:42 +00:00
irq-omap-intc.c irqchip: omap-intc: Remove unused legacy interface for omap2 2015-01-26 11:38:23 +01:00
irq-or1k-pic.c irqchip: or1k-pic: Convert to handle_domain_irq 2014-09-03 13:10:54 +00:00
irq-orion.c irqchip: orion: Convert to handle_domain_irq 2014-09-03 13:10:37 +00:00
irq-renesas-intc-irqpin.c irqchip: renesas-intc-irqpin: r8a7779 IRLM setup support 2015-01-26 11:38:22 +01:00
irq-renesas-irqc.c irqchip: drop owner assignment from platform_drivers 2014-10-20 16:20:42 +02:00
irq-s3c24xx.c irqchip: s3c24xx: Convert to handle_domain_irq 2014-09-03 13:10:38 +00:00
irq-sirfsoc.c irqchip: sirfsoc: Convert to handle_domain_irq 2014-09-03 13:10:40 +00:00
irq-sun4i.c irqchip: sun4i: Convert to handle_domain_irq 2014-09-03 13:10:42 +00:00
irq-sunxi-nmi.c genirq: Generic chip: Change irq_reg_{readl,writel} arguments 2014-11-09 04:01:22 +00:00
irq-tb10x.c genirq: Generic chip: Change irq_reg_{readl,writel} arguments 2014-11-09 04:01:22 +00:00
irq-versatile-fpga.c irqchip: versatile-fpga: Convert to handle_domain_irq 2014-09-03 13:10:43 +00:00
irq-vic.c irqchip: vic: Convert to handle_domain_irq 2014-09-03 13:10:45 +00:00
irq-vt8500.c irqchip: vt8500: Convert to handle_domain_irq 2014-09-03 13:10:46 +00:00
irq-xtensa-mx.c
irq-xtensa-pic.c
irq-zevio.c irqchip: zevio: Convert to handle_domain_irq 2014-09-03 13:10:48 +00:00
irqchip.c irqchip: align irqchip OF match table section naming 2014-05-20 14:24:40 -05:00
irqchip.h of: consolidate linker section OF match table declarations 2014-05-20 14:25:24 -05:00
Kconfig Merge branch 'irq-irqdomain-arm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2014-12-15 17:30:09 -08:00
Makefile irqchip: Conexant CX92755 interrupts controller driver 2015-01-26 11:38:23 +01:00
spear-shirq.c irqchip: spear_shirq: Simplify register access code 2014-06-24 12:38:45 +00:00