Merge branch 'linux-linaro-lsk-v4.4' into linux-linaro-lsk-v4.4-android
[firefly-linux-kernel-4.4.55.git] / arch / arm / mach-realview / core.c
index c309593abdb223e9c9499c0469f080344ea40fd7..cf0a7c2359f072d49aca95af6b4073da42ec7180 100644 (file)
 #include <linux/mtd/physmap.h>
 #include <linux/memblock.h>
 
+#include <clocksource/timer-sp804.h>
+
 #include <mach/hardware.h>
 #include <asm/irq.h>
 #include <asm/mach-types.h>
-#include <asm/hardware/arm_timer.h>
 #include <asm/hardware/icst.h>
 
 #include <asm/mach/arch.h>
 #include <asm/mach/irq.h>
 #include <asm/mach/map.h>
 
-
 #include <mach/platform.h>
 #include <mach/irqs.h>
-#include <asm/hardware/timer-sp.h>
 
 #include <plat/sched_clock.h>
 
@@ -96,7 +95,8 @@ static struct smsc911x_platform_config smsc911x_config = {
 };
 
 static struct smc91x_platdata smc91x_platdata = {
-       .flags = SMC91X_USE_32BIT | SMC91X_NOWAIT,
+       .flags = SMC91X_USE_8BIT | SMC91X_USE_16BIT | SMC91X_USE_32BIT |
+                SMC91X_NOWAIT,
 };
 
 static struct platform_device realview_eth_device = {
@@ -381,10 +381,10 @@ void __init realview_timer_init(unsigned int timer_irq)
        /*
         * Initialise to a known state (all timers off)
         */
-       writel(0, timer0_va_base + TIMER_CTRL);
-       writel(0, timer1_va_base + TIMER_CTRL);
-       writel(0, timer2_va_base + TIMER_CTRL);
-       writel(0, timer3_va_base + TIMER_CTRL);
+       sp804_timer_disable(timer0_va_base);
+       sp804_timer_disable(timer1_va_base);
+       sp804_timer_disable(timer2_va_base);
+       sp804_timer_disable(timer3_va_base);
 
        sp804_clocksource_init(timer3_va_base, "timer3");
        sp804_clockevents_init(timer0_va_base, timer_irq, "timer0");