diff options
Diffstat (limited to 'arch/arm/mach-integrator')
-rw-r--r-- | arch/arm/mach-integrator/clock.c | 1 | ||||
-rw-r--r-- | arch/arm/mach-integrator/integrator_ap.c | 80 | ||||
-rw-r--r-- | arch/arm/mach-integrator/integrator_cp.c | 67 | ||||
-rw-r--r-- | arch/arm/mach-integrator/lm.c | 1 |
4 files changed, 125 insertions, 24 deletions
diff --git a/arch/arm/mach-integrator/clock.c b/arch/arm/mach-integrator/clock.c index 56200594db3c..73c360685cad 100644 --- a/arch/arm/mach-integrator/clock.c +++ b/arch/arm/mach-integrator/clock.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/list.h> | 13 | #include <linux/list.h> |
14 | #include <linux/errno.h> | 14 | #include <linux/errno.h> |
15 | #include <linux/err.h> | 15 | #include <linux/err.h> |
16 | #include <linux/string.h> | ||
16 | 17 | ||
17 | #include <asm/semaphore.h> | 18 | #include <asm/semaphore.h> |
18 | #include <asm/hardware/clock.h> | 19 | #include <asm/hardware/clock.h> |
diff --git a/arch/arm/mach-integrator/integrator_ap.c b/arch/arm/mach-integrator/integrator_ap.c index 36e2b6eb67b7..764ceb49470a 100644 --- a/arch/arm/mach-integrator/integrator_ap.c +++ b/arch/arm/mach-integrator/integrator_ap.c | |||
@@ -30,6 +30,7 @@ | |||
30 | #include <asm/io.h> | 30 | #include <asm/io.h> |
31 | #include <asm/irq.h> | 31 | #include <asm/irq.h> |
32 | #include <asm/setup.h> | 32 | #include <asm/setup.h> |
33 | #include <asm/param.h> /* HZ */ | ||
33 | #include <asm/mach-types.h> | 34 | #include <asm/mach-types.h> |
34 | #include <asm/hardware/amba.h> | 35 | #include <asm/hardware/amba.h> |
35 | #include <asm/hardware/amba_kmi.h> | 36 | #include <asm/hardware/amba_kmi.h> |
@@ -75,19 +76,72 @@ | |||
75 | */ | 76 | */ |
76 | 77 | ||
77 | static struct map_desc ap_io_desc[] __initdata = { | 78 | static struct map_desc ap_io_desc[] __initdata = { |
78 | { IO_ADDRESS(INTEGRATOR_HDR_BASE), INTEGRATOR_HDR_BASE, SZ_4K, MT_DEVICE }, | 79 | { |
79 | { IO_ADDRESS(INTEGRATOR_SC_BASE), INTEGRATOR_SC_BASE, SZ_4K, MT_DEVICE }, | 80 | .virtual = IO_ADDRESS(INTEGRATOR_HDR_BASE), |
80 | { IO_ADDRESS(INTEGRATOR_EBI_BASE), INTEGRATOR_EBI_BASE, SZ_4K, MT_DEVICE }, | 81 | .pfn = __phys_to_pfn(INTEGRATOR_HDR_BASE), |
81 | { IO_ADDRESS(INTEGRATOR_CT_BASE), INTEGRATOR_CT_BASE, SZ_4K, MT_DEVICE }, | 82 | .length = SZ_4K, |
82 | { IO_ADDRESS(INTEGRATOR_IC_BASE), INTEGRATOR_IC_BASE, SZ_4K, MT_DEVICE }, | 83 | .type = MT_DEVICE |
83 | { IO_ADDRESS(INTEGRATOR_UART0_BASE), INTEGRATOR_UART0_BASE, SZ_4K, MT_DEVICE }, | 84 | }, { |
84 | { IO_ADDRESS(INTEGRATOR_UART1_BASE), INTEGRATOR_UART1_BASE, SZ_4K, MT_DEVICE }, | 85 | .virtual = IO_ADDRESS(INTEGRATOR_SC_BASE), |
85 | { IO_ADDRESS(INTEGRATOR_DBG_BASE), INTEGRATOR_DBG_BASE, SZ_4K, MT_DEVICE }, | 86 | .pfn = __phys_to_pfn(INTEGRATOR_SC_BASE), |
86 | { IO_ADDRESS(INTEGRATOR_GPIO_BASE), INTEGRATOR_GPIO_BASE, SZ_4K, MT_DEVICE }, | 87 | .length = SZ_4K, |
87 | { PCI_MEMORY_VADDR, PHYS_PCI_MEM_BASE, SZ_16M, MT_DEVICE }, | 88 | .type = MT_DEVICE |
88 | { PCI_CONFIG_VADDR, PHYS_PCI_CONFIG_BASE, SZ_16M, MT_DEVICE }, | 89 | }, { |
89 | { PCI_V3_VADDR, PHYS_PCI_V3_BASE, SZ_64K, MT_DEVICE }, | 90 | .virtual = IO_ADDRESS(INTEGRATOR_EBI_BASE), |
90 | { PCI_IO_VADDR, PHYS_PCI_IO_BASE, SZ_64K, MT_DEVICE } | 91 | .pfn = __phys_to_pfn(INTEGRATOR_EBI_BASE), |
92 | .length = SZ_4K, | ||
93 | .type = MT_DEVICE | ||
94 | }, { | ||
95 | .virtual = IO_ADDRESS(INTEGRATOR_CT_BASE), | ||
96 | .pfn = __phys_to_pfn(INTEGRATOR_CT_BASE), | ||
97 | .length = SZ_4K, | ||
98 | .type = MT_DEVICE | ||
99 | }, { | ||
100 | .virtual = IO_ADDRESS(INTEGRATOR_IC_BASE), | ||
101 | .pfn = __phys_to_pfn(INTEGRATOR_IC_BASE), | ||
102 | .length = SZ_4K, | ||
103 | .type = MT_DEVICE | ||
104 | }, { | ||
105 | .virtual = IO_ADDRESS(INTEGRATOR_UART0_BASE), | ||
106 | .pfn = __phys_to_pfn(INTEGRATOR_UART0_BASE), | ||
107 | .length = SZ_4K, | ||
108 | .type = MT_DEVICE | ||
109 | }, { | ||
110 | .virtual = IO_ADDRESS(INTEGRATOR_UART1_BASE), | ||
111 | .pfn = __phys_to_pfn(INTEGRATOR_UART1_BASE), | ||
112 | .length = SZ_4K, | ||
113 | .type = MT_DEVICE | ||
114 | }, { | ||
115 | .virtual = IO_ADDRESS(INTEGRATOR_DBG_BASE), | ||
116 | .pfn = __phys_to_pfn(INTEGRATOR_DBG_BASE), | ||
117 | .length = SZ_4K, | ||
118 | .type = MT_DEVICE | ||
119 | }, { | ||
120 | .virtual = IO_ADDRESS(INTEGRATOR_GPIO_BASE), | ||
121 | .pfn = __phys_to_pfn(INTEGRATOR_GPIO_BASE), | ||
122 | .length = SZ_4K, | ||
123 | .type = MT_DEVICE | ||
124 | }, { | ||
125 | .virtual = PCI_MEMORY_VADDR, | ||
126 | .pfn = __phys_to_pfn(PHYS_PCI_MEM_BASE), | ||
127 | .length = SZ_16M, | ||
128 | .type = MT_DEVICE | ||
129 | }, { | ||
130 | .virtual = PCI_CONFIG_VADDR, | ||
131 | .pfn = __phys_to_pfn(PHYS_PCI_CONFIG_BASE), | ||
132 | .length = SZ_16M, | ||
133 | .type = MT_DEVICE | ||
134 | }, { | ||
135 | .virtual = PCI_V3_VADDR, | ||
136 | .pfn = __phys_to_pfn(PHYS_PCI_V3_BASE), | ||
137 | .length = SZ_64K, | ||
138 | .type = MT_DEVICE | ||
139 | }, { | ||
140 | .virtual = PCI_IO_VADDR, | ||
141 | .pfn = __phys_to_pfn(PHYS_PCI_IO_BASE), | ||
142 | .length = SZ_64K, | ||
143 | .type = MT_DEVICE | ||
144 | } | ||
91 | }; | 145 | }; |
92 | 146 | ||
93 | static void __init ap_map_io(void) | 147 | static void __init ap_map_io(void) |
diff --git a/arch/arm/mach-integrator/integrator_cp.c b/arch/arm/mach-integrator/integrator_cp.c index 2be5c03ab87f..aa34c58b96c4 100644 --- a/arch/arm/mach-integrator/integrator_cp.c +++ b/arch/arm/mach-integrator/integrator_cp.c | |||
@@ -74,17 +74,62 @@ | |||
74 | */ | 74 | */ |
75 | 75 | ||
76 | static struct map_desc intcp_io_desc[] __initdata = { | 76 | static struct map_desc intcp_io_desc[] __initdata = { |
77 | { IO_ADDRESS(INTEGRATOR_HDR_BASE), INTEGRATOR_HDR_BASE, SZ_4K, MT_DEVICE }, | 77 | { |
78 | { IO_ADDRESS(INTEGRATOR_SC_BASE), INTEGRATOR_SC_BASE, SZ_4K, MT_DEVICE }, | 78 | .virtual = IO_ADDRESS(INTEGRATOR_HDR_BASE), |
79 | { IO_ADDRESS(INTEGRATOR_EBI_BASE), INTEGRATOR_EBI_BASE, SZ_4K, MT_DEVICE }, | 79 | .pfn = __phys_to_pfn(INTEGRATOR_HDR_BASE), |
80 | { IO_ADDRESS(INTEGRATOR_CT_BASE), INTEGRATOR_CT_BASE, SZ_4K, MT_DEVICE }, | 80 | .length = SZ_4K, |
81 | { IO_ADDRESS(INTEGRATOR_IC_BASE), INTEGRATOR_IC_BASE, SZ_4K, MT_DEVICE }, | 81 | .type = MT_DEVICE |
82 | { IO_ADDRESS(INTEGRATOR_UART0_BASE), INTEGRATOR_UART0_BASE, SZ_4K, MT_DEVICE }, | 82 | }, { |
83 | { IO_ADDRESS(INTEGRATOR_UART1_BASE), INTEGRATOR_UART1_BASE, SZ_4K, MT_DEVICE }, | 83 | .virtual = IO_ADDRESS(INTEGRATOR_SC_BASE), |
84 | { IO_ADDRESS(INTEGRATOR_DBG_BASE), INTEGRATOR_DBG_BASE, SZ_4K, MT_DEVICE }, | 84 | .pfn = __phys_to_pfn(INTEGRATOR_SC_BASE), |
85 | { IO_ADDRESS(INTEGRATOR_GPIO_BASE), INTEGRATOR_GPIO_BASE, SZ_4K, MT_DEVICE }, | 85 | .length = SZ_4K, |
86 | { 0xfca00000, 0xca000000, SZ_4K, MT_DEVICE }, | 86 | .type = MT_DEVICE |
87 | { 0xfcb00000, 0xcb000000, SZ_4K, MT_DEVICE }, | 87 | }, { |
88 | .virtual = IO_ADDRESS(INTEGRATOR_EBI_BASE), | ||
89 | .pfn = __phys_to_pfn(INTEGRATOR_EBI_BASE), | ||
90 | .length = SZ_4K, | ||
91 | .type = MT_DEVICE | ||
92 | }, { | ||
93 | .virtual = IO_ADDRESS(INTEGRATOR_CT_BASE), | ||
94 | .pfn = __phys_to_pfn(INTEGRATOR_CT_BASE), | ||
95 | .length = SZ_4K, | ||
96 | .type = MT_DEVICE | ||
97 | }, { | ||
98 | .virtual = IO_ADDRESS(INTEGRATOR_IC_BASE), | ||
99 | .pfn = __phys_to_pfn(INTEGRATOR_IC_BASE), | ||
100 | .length = SZ_4K, | ||
101 | .type = MT_DEVICE | ||
102 | }, { | ||
103 | .virtual = IO_ADDRESS(INTEGRATOR_UART0_BASE), | ||
104 | .pfn = __phys_to_pfn(INTEGRATOR_UART0_BASE), | ||
105 | .length = SZ_4K, | ||
106 | .type = MT_DEVICE | ||
107 | }, { | ||
108 | .virtual = IO_ADDRESS(INTEGRATOR_UART1_BASE), | ||
109 | .pfn = __phys_to_pfn(INTEGRATOR_UART1_BASE), | ||
110 | .length = SZ_4K, | ||
111 | .type = MT_DEVICE | ||
112 | }, { | ||
113 | .virtual = IO_ADDRESS(INTEGRATOR_DBG_BASE), | ||
114 | .pfn = __phys_to_pfn(INTEGRATOR_DBG_BASE), | ||
115 | .length = SZ_4K, | ||
116 | .type = MT_DEVICE | ||
117 | }, { | ||
118 | .virtual = IO_ADDRESS(INTEGRATOR_GPIO_BASE), | ||
119 | .pfn = __phys_to_pfn(INTEGRATOR_GPIO_BASE), | ||
120 | .length = SZ_4K, | ||
121 | .type = MT_DEVICE | ||
122 | }, { | ||
123 | .virtual = 0xfca00000, | ||
124 | .pfn = __phys_to_pfn(0xca000000), | ||
125 | .length = SZ_4K, | ||
126 | .type = MT_DEVICE | ||
127 | }, { | ||
128 | .virtual = 0xfcb00000, | ||
129 | .pfn = __phys_to_pfn(0xcb000000), | ||
130 | .length = SZ_4K, | ||
131 | .type = MT_DEVICE | ||
132 | } | ||
88 | }; | 133 | }; |
89 | 134 | ||
90 | static void __init intcp_map_io(void) | 135 | static void __init intcp_map_io(void) |
diff --git a/arch/arm/mach-integrator/lm.c b/arch/arm/mach-integrator/lm.c index c5f19d160598..5b41e3a724e1 100644 --- a/arch/arm/mach-integrator/lm.c +++ b/arch/arm/mach-integrator/lm.c | |||
@@ -10,6 +10,7 @@ | |||
10 | #include <linux/module.h> | 10 | #include <linux/module.h> |
11 | #include <linux/init.h> | 11 | #include <linux/init.h> |
12 | #include <linux/device.h> | 12 | #include <linux/device.h> |
13 | #include <linux/slab.h> | ||
13 | 14 | ||
14 | #include <asm/arch/lm.h> | 15 | #include <asm/arch/lm.h> |
15 | 16 | ||