sparc: Update cpu_init.c to use generic timer infrastructure

Introduce the CONFIG_SYS_TIMER_* macros in include/asm/config.h to make use
of the generic timer infrastructure in lib/time.c.

Created a timer_init() function to initialize the timer hardware and update
the #ifdef in board_init_f to allow this function to be called during the
start-up sequence.

Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
diff --git a/arch/sparc/include/asm/config.h b/arch/sparc/include/asm/config.h
index c884b25..455fbc1 100644
--- a/arch/sparc/include/asm/config.h
+++ b/arch/sparc/include/asm/config.h
@@ -14,4 +14,8 @@
 #define CONFIG_LMB
 #define CONFIG_SYS_BOOT_RAMDISK_HIGH
 
+#define CONFIG_SYS_TIMER_RATE		1000000		/* 1MHz */
+#define CONFIG_SYS_TIMER_COUNTER	gd->arch.timer
+#define CONFIG_SYS_TIMER_COUNTS_DOWN
+
 #endif
diff --git a/arch/sparc/include/asm/global_data.h b/arch/sparc/include/asm/global_data.h
index 8c6557a..af38d17 100644
--- a/arch/sparc/include/asm/global_data.h
+++ b/arch/sparc/include/asm/global_data.h
@@ -15,6 +15,7 @@
 
 /* Architecture-specific global data */
 struct arch_global_data {
+	void *timer;
 	void *uart;
 	unsigned int uart_freq;
 #ifdef CONFIG_LEON3