diff options
author | Olof Johansson <olof@lixom.net> | 2013-01-14 20:22:00 -0500 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2013-01-14 22:55:03 -0500 |
commit | f8060f5446b1f2782f0a8ca9be2d870ea4198aee (patch) | |
tree | 6bdce95a558843b00d692738150e8c06a227db50 /arch/arm/mach-zynq/common.c | |
parent | 175dbc1eeadbdcf5f04d3a61fdc0ede4335c45c8 (diff) | |
parent | 9e47b8bf9815523a5816f2f83e73b13812d74014 (diff) |
Merge tag 'gic-vic-to-irqchip' of git://sources.calxeda.com/kernel/linux into next/cleanup
From Rob Herring:
Initial irqchip init infrastructure and GIC and VIC clean-ups
This creates irqchip initialization infrastructure from Thomas
Petazzoni. The VIC and GIC irqchip code is moved to drivers/irqchips
and adapted to use the new infrastructure. All DT enabled platforms
using GIC and VIC are converted over to use the new irqchip_init.
* tag 'gic-vic-to-irqchip' of git://sources.calxeda.com/kernel/linux:
irqchip: Move ARM vic.h to include/linux/irqchip/arm-vic.h
ARM: picoxcell: use common irqchip_init function
ARM: spear: use common irqchip_init function
irqchip: Move ARM VIC to drivers/irqchip
ARM: samsung: remove unused tick.h
ARM: remove unneeded vic.h includes
ARM: remove mach .handle_irq for VIC users
ARM: VIC: set handle_arch_irq in VIC initialization
ARM: VIC: shrink down vic.h
irqchip: Move ARM gic.h to include/linux/irqchip/arm-gic.h
ARM: use common irqchip_init for GIC init
irqchip: Move ARM GIC to drivers/irqchip
ARM: remove mach .handle_irq for GIC users
ARM: GIC: set handle_arch_irq in GIC initialization
ARM: GIC: remove direct use of gic_raise_softirq
ARM: GIC: remove assembly ifdefs from gic.h
ARM: mach-ux500: use SGI0 to wake up the other core
arm: add set_handle_irq() to register the parent IRQ controller handler function
irqchip: add basic infrastructure
irqchip: add to the directories part of the IRQ subsystem in MAINTAINERS
Fixed up massive merge conflicts with the timer cleanup due to adjacent changes:
Signed-off-by: Olof Johansson <olof@lixom.net>
Conflicts:
arch/arm/mach-bcm/board_bcm.c
arch/arm/mach-cns3xxx/cns3420vb.c
arch/arm/mach-ep93xx/adssphere.c
arch/arm/mach-ep93xx/edb93xx.c
arch/arm/mach-ep93xx/gesbc9312.c
arch/arm/mach-ep93xx/micro9.c
arch/arm/mach-ep93xx/simone.c
arch/arm/mach-ep93xx/snappercl15.c
arch/arm/mach-ep93xx/ts72xx.c
arch/arm/mach-ep93xx/vision_ep9307.c
arch/arm/mach-highbank/highbank.c
arch/arm/mach-imx/mach-imx6q.c
arch/arm/mach-msm/board-dt-8960.c
arch/arm/mach-netx/nxdb500.c
arch/arm/mach-netx/nxdkn.c
arch/arm/mach-netx/nxeb500hmi.c
arch/arm/mach-nomadik/board-nhk8815.c
arch/arm/mach-picoxcell/common.c
arch/arm/mach-realview/realview_eb.c
arch/arm/mach-realview/realview_pb1176.c
arch/arm/mach-realview/realview_pb11mp.c
arch/arm/mach-realview/realview_pba8.c
arch/arm/mach-realview/realview_pbx.c
arch/arm/mach-socfpga/socfpga.c
arch/arm/mach-spear13xx/spear1310.c
arch/arm/mach-spear13xx/spear1340.c
arch/arm/mach-spear13xx/spear13xx.c
arch/arm/mach-spear3xx/spear300.c
arch/arm/mach-spear3xx/spear310.c
arch/arm/mach-spear3xx/spear320.c
arch/arm/mach-spear3xx/spear3xx.c
arch/arm/mach-spear6xx/spear6xx.c
arch/arm/mach-tegra/board-dt-tegra20.c
arch/arm/mach-tegra/board-dt-tegra30.c
arch/arm/mach-u300/core.c
arch/arm/mach-ux500/board-mop500.c
arch/arm/mach-ux500/cpu-db8500.c
arch/arm/mach-versatile/versatile_ab.c
arch/arm/mach-versatile/versatile_dt.c
arch/arm/mach-versatile/versatile_pb.c
arch/arm/mach-vexpress/v2m.c
include/asm-generic/vmlinux.lds.h
Diffstat (limited to 'arch/arm/mach-zynq/common.c')
-rw-r--r-- | arch/arm/mach-zynq/common.c | 17 |
1 files changed, 1 insertions, 16 deletions
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c index 2ae4bce652b6..6472a69cbfe1 100644 --- a/arch/arm/mach-zynq/common.c +++ b/arch/arm/mach-zynq/common.c | |||
@@ -31,7 +31,6 @@ | |||
31 | #include <asm/mach-types.h> | 31 | #include <asm/mach-types.h> |
32 | #include <asm/page.h> | 32 | #include <asm/page.h> |
33 | #include <asm/pgtable.h> | 33 | #include <asm/pgtable.h> |
34 | #include <asm/hardware/gic.h> | ||
35 | #include <asm/hardware/cache-l2x0.h> | 34 | #include <asm/hardware/cache-l2x0.h> |
36 | 35 | ||
37 | #include "common.h" | 36 | #include "common.h" |
@@ -55,19 +54,6 @@ static void __init xilinx_init_machine(void) | |||
55 | of_platform_bus_probe(NULL, zynq_of_bus_ids, NULL); | 54 | of_platform_bus_probe(NULL, zynq_of_bus_ids, NULL); |
56 | } | 55 | } |
57 | 56 | ||
58 | static struct of_device_id irq_match[] __initdata = { | ||
59 | { .compatible = "arm,cortex-a9-gic", .data = gic_of_init, }, | ||
60 | { } | ||
61 | }; | ||
62 | |||
63 | /** | ||
64 | * xilinx_irq_init() - Interrupt controller initialization for the GIC. | ||
65 | */ | ||
66 | static void __init xilinx_irq_init(void) | ||
67 | { | ||
68 | of_irq_init(irq_match); | ||
69 | } | ||
70 | |||
71 | #define SCU_PERIPH_PHYS 0xF8F00000 | 57 | #define SCU_PERIPH_PHYS 0xF8F00000 |
72 | #define SCU_PERIPH_SIZE SZ_8K | 58 | #define SCU_PERIPH_SIZE SZ_8K |
73 | #define SCU_PERIPH_VIRT (VMALLOC_END - SCU_PERIPH_SIZE) | 59 | #define SCU_PERIPH_VIRT (VMALLOC_END - SCU_PERIPH_SIZE) |
@@ -110,8 +96,7 @@ static const char *xilinx_dt_match[] = { | |||
110 | 96 | ||
111 | MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform") | 97 | MACHINE_START(XILINX_EP107, "Xilinx Zynq Platform") |
112 | .map_io = xilinx_map_io, | 98 | .map_io = xilinx_map_io, |
113 | .init_irq = xilinx_irq_init, | 99 | .init_irq = irqchip_init, |
114 | .handle_irq = gic_handle_irq, | ||
115 | .init_machine = xilinx_init_machine, | 100 | .init_machine = xilinx_init_machine, |
116 | .init_time = xilinx_zynq_timer_init, | 101 | .init_time = xilinx_zynq_timer_init, |
117 | .dt_compat = xilinx_dt_match, | 102 | .dt_compat = xilinx_dt_match, |