aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-zynq/common.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-zynq/common.c')
-rw-r--r--arch/arm/mach-zynq/common.c23
1 files changed, 10 insertions, 13 deletions
diff --git a/arch/arm/mach-zynq/common.c b/arch/arm/mach-zynq/common.c
index ab5cfddc0d7b..ba8d14f78d4d 100644
--- a/arch/arm/mach-zynq/common.c
+++ b/arch/arm/mach-zynq/common.c
@@ -31,7 +31,6 @@
31#include <asm/hardware/cache-l2x0.h> 31#include <asm/hardware/cache-l2x0.h>
32 32
33#include <mach/zynq_soc.h> 33#include <mach/zynq_soc.h>
34#include <mach/clkdev.h>
35#include "common.h" 34#include "common.h"
36 35
37static struct of_device_id zynq_of_bus_ids[] __initdata = { 36static struct of_device_id zynq_of_bus_ids[] __initdata = {
@@ -45,22 +44,25 @@ static struct of_device_id zynq_of_bus_ids[] __initdata = {
45 */ 44 */
46static void __init xilinx_init_machine(void) 45static void __init xilinx_init_machine(void)
47{ 46{
48#ifdef CONFIG_CACHE_L2X0
49 /* 47 /*
50 * 64KB way size, 8-way associativity, parity disabled 48 * 64KB way size, 8-way associativity, parity disabled
51 */ 49 */
52 l2x0_init(PL310_L2CC_BASE, 0x02060000, 0xF0F0FFFF); 50 l2x0_of_init(0x02060000, 0xF0F0FFFF);
53#endif
54 51
55 of_platform_bus_probe(NULL, zynq_of_bus_ids, NULL); 52 of_platform_bus_probe(NULL, zynq_of_bus_ids, NULL);
56} 53}
57 54
55static struct of_device_id irq_match[] __initdata = {
56 { .compatible = "arm,cortex-a9-gic", .data = gic_of_init, },
57 { }
58};
59
58/** 60/**
59 * xilinx_irq_init() - Interrupt controller initialization for the GIC. 61 * xilinx_irq_init() - Interrupt controller initialization for the GIC.
60 */ 62 */
61static void __init xilinx_irq_init(void) 63static void __init xilinx_irq_init(void)
62{ 64{
63 gic_init(0, 29, SCU_GIC_DIST_BASE, SCU_GIC_CPU_BASE); 65 of_irq_init(irq_match);
64} 66}
65 67
66/* The minimum devices needed to be mapped before the VM system is up and 68/* The minimum devices needed to be mapped before the VM system is up and
@@ -71,17 +73,12 @@ static struct map_desc io_desc[] __initdata = {
71 { 73 {
72 .virtual = TTC0_VIRT, 74 .virtual = TTC0_VIRT,
73 .pfn = __phys_to_pfn(TTC0_PHYS), 75 .pfn = __phys_to_pfn(TTC0_PHYS),
74 .length = SZ_4K, 76 .length = TTC0_SIZE,
75 .type = MT_DEVICE, 77 .type = MT_DEVICE,
76 }, { 78 }, {
77 .virtual = SCU_PERIPH_VIRT, 79 .virtual = SCU_PERIPH_VIRT,
78 .pfn = __phys_to_pfn(SCU_PERIPH_PHYS), 80 .pfn = __phys_to_pfn(SCU_PERIPH_PHYS),
79 .length = SZ_8K, 81 .length = SCU_PERIPH_SIZE,
80 .type = MT_DEVICE,
81 }, {
82 .virtual = PL310_L2CC_VIRT,
83 .pfn = __phys_to_pfn(PL310_L2CC_PHYS),
84 .length = SZ_4K,
85 .type = MT_DEVICE, 82 .type = MT_DEVICE,
86 }, 83 },
87 84
@@ -89,7 +86,7 @@ static struct map_desc io_desc[] __initdata = {
89 { 86 {
90 .virtual = UART0_VIRT, 87 .virtual = UART0_VIRT,
91 .pfn = __phys_to_pfn(UART0_PHYS), 88 .pfn = __phys_to_pfn(UART0_PHYS),
92 .length = SZ_4K, 89 .length = UART0_SIZE,
93 .type = MT_DEVICE, 90 .type = MT_DEVICE,
94 }, 91 },
95#endif 92#endif