aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2/board-4430sdp.c
diff options
context:
space:
mode:
authorSantosh Shilimkar <santosh.shilimkar@ti.com>2010-05-14 15:05:26 -0400
committerTony Lindgren <tony@atomide.com>2010-05-20 14:17:51 -0400
commitfbc9be106e9f27450ea999da74bc24fad04cf41d (patch)
tree6d3d7dae1c657a9b5343ecf177ea968c939622b6 /arch/arm/mach-omap2/board-4430sdp.c
parent2e5f51a539194406566968d1b68f0bcd1112720d (diff)
omap4: Move SOC specific code from board file
This patch moves OMAP4 soc specific code from 4430sdp board file. The change is necessary so that newer board support can be added with minimal changes. This will be also problematic for multi-board, multi-omap builds. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/board-4430sdp.c')
-rw-r--r--arch/arm/mach-omap2/board-4430sdp.c47
1 files changed, 1 insertions, 46 deletions
diff --git a/arch/arm/mach-omap2/board-4430sdp.c b/arch/arm/mach-omap2/board-4430sdp.c
index be7a7868d210..6cce6f229799 100644
--- a/arch/arm/mach-omap2/board-4430sdp.c
+++ b/arch/arm/mach-omap2/board-4430sdp.c
@@ -21,6 +21,7 @@
21#include <linux/spi/spi.h> 21#include <linux/spi/spi.h>
22 22
23#include <mach/hardware.h> 23#include <mach/hardware.h>
24#include <mach/omap4-common.h>
24#include <asm/mach-types.h> 25#include <asm/mach-types.h>
25#include <asm/mach/arch.h> 26#include <asm/mach/arch.h>
26#include <asm/mach/map.h> 27#include <asm/mach/map.h>
@@ -30,8 +31,6 @@
30#include <plat/control.h> 31#include <plat/control.h>
31#include <plat/timer-gp.h> 32#include <plat/timer-gp.h>
32#include <plat/usb.h> 33#include <plat/usb.h>
33#include <asm/hardware/gic.h>
34#include <asm/hardware/cache-l2x0.h>
35 34
36#define ETH_KS8851_IRQ 34 35#define ETH_KS8851_IRQ 34
37#define ETH_KS8851_POWER_ON 48 36#define ETH_KS8851_POWER_ON 48
@@ -119,50 +118,6 @@ static struct omap_board_config_kernel sdp4430_config[] __initdata = {
119 { OMAP_TAG_LCD, &sdp4430_lcd_config }, 118 { OMAP_TAG_LCD, &sdp4430_lcd_config },
120}; 119};
121 120
122#ifdef CONFIG_CACHE_L2X0
123static int __init omap_l2_cache_init(void)
124{
125 extern void omap_smc1(u32 fn, u32 arg);
126 void __iomem *l2cache_base;
127
128 /* To avoid code running on other OMAPs in
129 * multi-omap builds
130 */
131 if (!cpu_is_omap44xx())
132 return -ENODEV;
133
134 /* Static mapping, never released */
135 l2cache_base = ioremap(OMAP44XX_L2CACHE_BASE, SZ_4K);
136 BUG_ON(!l2cache_base);
137
138 /* Enable PL310 L2 Cache controller */
139 omap_smc1(0x102, 0x1);
140
141 /* 32KB way size, 16-way associativity,
142 * parity disabled
143 */
144 l2x0_init(l2cache_base, 0x0e050000, 0xc0000fff);
145
146 return 0;
147}
148early_initcall(omap_l2_cache_init);
149#endif
150
151static void __init gic_init_irq(void)
152{
153 void __iomem *base;
154
155 /* Static mapping, never released */
156 base = ioremap(OMAP44XX_GIC_DIST_BASE, SZ_4K);
157 BUG_ON(!base);
158 gic_dist_init(0, base, 29);
159
160 /* Static mapping, never released */
161 gic_cpu_base_addr = ioremap(OMAP44XX_GIC_CPU_BASE, SZ_512);
162 BUG_ON(!gic_cpu_base_addr);
163 gic_cpu_init(0, gic_cpu_base_addr);
164}
165
166static void __init omap_4430sdp_init_irq(void) 121static void __init omap_4430sdp_init_irq(void)
167{ 122{
168 omap_board_config = sdp4430_config; 123 omap_board_config = sdp4430_config;