diff options
Diffstat (limited to 'arch/arm/mach-spear6xx/spear6xx.c')
-rw-r--r-- | arch/arm/mach-spear6xx/spear6xx.c | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/arch/arm/mach-spear6xx/spear6xx.c b/arch/arm/mach-spear6xx/spear6xx.c index 5a5a52db252b..b8bd33ca88bd 100644 --- a/arch/arm/mach-spear6xx/spear6xx.c +++ b/arch/arm/mach-spear6xx/spear6xx.c | |||
@@ -16,12 +16,11 @@ | |||
16 | #include <linux/amba/pl08x.h> | 16 | #include <linux/amba/pl08x.h> |
17 | #include <linux/clk.h> | 17 | #include <linux/clk.h> |
18 | #include <linux/err.h> | 18 | #include <linux/err.h> |
19 | #include <linux/irqchip.h> | ||
19 | #include <linux/of.h> | 20 | #include <linux/of.h> |
20 | #include <linux/of_address.h> | 21 | #include <linux/of_address.h> |
21 | #include <linux/of_irq.h> | ||
22 | #include <linux/of_platform.h> | 22 | #include <linux/of_platform.h> |
23 | #include <asm/hardware/pl080.h> | 23 | #include <asm/hardware/pl080.h> |
24 | #include <asm/hardware/vic.h> | ||
25 | #include <asm/mach/arch.h> | 24 | #include <asm/mach/arch.h> |
26 | #include <asm/mach/time.h> | 25 | #include <asm/mach/time.h> |
27 | #include <asm/mach/map.h> | 26 | #include <asm/mach/map.h> |
@@ -374,7 +373,7 @@ void __init spear6xx_map_io(void) | |||
374 | iotable_init(spear6xx_io_desc, ARRAY_SIZE(spear6xx_io_desc)); | 373 | iotable_init(spear6xx_io_desc, ARRAY_SIZE(spear6xx_io_desc)); |
375 | } | 374 | } |
376 | 375 | ||
377 | static void __init spear6xx_timer_init(void) | 376 | void __init spear6xx_timer_init(void) |
378 | { | 377 | { |
379 | char pclk_name[] = "pll3_clk"; | 378 | char pclk_name[] = "pll3_clk"; |
380 | struct clk *gpt_clk, *pclk; | 379 | struct clk *gpt_clk, *pclk; |
@@ -403,10 +402,6 @@ static void __init spear6xx_timer_init(void) | |||
403 | spear_setup_of_timer(); | 402 | spear_setup_of_timer(); |
404 | } | 403 | } |
405 | 404 | ||
406 | struct sys_timer spear6xx_timer = { | ||
407 | .init = spear6xx_timer_init, | ||
408 | }; | ||
409 | |||
410 | /* Add auxdata to pass platform data */ | 405 | /* Add auxdata to pass platform data */ |
411 | struct of_dev_auxdata spear6xx_auxdata_lookup[] __initdata = { | 406 | struct of_dev_auxdata spear6xx_auxdata_lookup[] __initdata = { |
412 | OF_DEV_AUXDATA("arm,pl080", SPEAR6XX_ICM3_DMA_BASE, NULL, | 407 | OF_DEV_AUXDATA("arm,pl080", SPEAR6XX_ICM3_DMA_BASE, NULL, |
@@ -425,21 +420,10 @@ static const char *spear600_dt_board_compat[] = { | |||
425 | NULL | 420 | NULL |
426 | }; | 421 | }; |
427 | 422 | ||
428 | static const struct of_device_id vic_of_match[] __initconst = { | ||
429 | { .compatible = "arm,pl190-vic", .data = vic_of_init, }, | ||
430 | { /* Sentinel */ } | ||
431 | }; | ||
432 | |||
433 | static void __init spear6xx_dt_init_irq(void) | ||
434 | { | ||
435 | of_irq_init(vic_of_match); | ||
436 | } | ||
437 | |||
438 | DT_MACHINE_START(SPEAR600_DT, "ST SPEAr600 (Flattened Device Tree)") | 423 | DT_MACHINE_START(SPEAR600_DT, "ST SPEAr600 (Flattened Device Tree)") |
439 | .map_io = spear6xx_map_io, | 424 | .map_io = spear6xx_map_io, |
440 | .init_irq = spear6xx_dt_init_irq, | 425 | .init_irq = irqchip_init, |
441 | .handle_irq = vic_handle_irq, | 426 | .init_time = spear6xx_timer_init, |
442 | .timer = &spear6xx_timer, | ||
443 | .init_machine = spear600_dt_init, | 427 | .init_machine = spear600_dt_init, |
444 | .restart = spear_restart, | 428 | .restart = spear_restart, |
445 | .dt_compat = spear600_dt_board_compat, | 429 | .dt_compat = spear600_dt_board_compat, |