summaryrefslogtreecommitdiffstats
path: root/arch/sparc/cpu
diff options
context:
space:
mode:
authorFrancois Retief <fgretief@spaceteq.co.za>2015-11-21 23:15:07 +0200
committerFrancois Retief <fgretief@spaceteq.co.za>2015-12-03 13:15:50 +0200
commit7a4fb11b85939b47738283c3a7ae7f461468e274 (patch)
treee3367520a0795a6e84275381a92d0f9f4bf71cfc /arch/sparc/cpu
parentf376c42f3b28862326ea378b0b6cc6b9b699d0c0 (diff)
downloadblackbird-obmc-uboot-7a4fb11b85939b47738283c3a7ae7f461468e274.tar.gz
blackbird-obmc-uboot-7a4fb11b85939b47738283c3a7ae7f461468e274.zip
sparc: Remove non-generic board init files: board.c, time.c
Remove the board.c and time.c files and all associated non-generic board initialization code. Signed-off-by: Francois Retief <fgretief@spaceteq.co.za>
Diffstat (limited to 'arch/sparc/cpu')
-rw-r--r--arch/sparc/cpu/leon2/cpu_init.c45
-rw-r--r--arch/sparc/cpu/leon2/interrupts.c14
-rw-r--r--arch/sparc/cpu/leon3/cpu_init.c60
-rw-r--r--arch/sparc/cpu/leon3/interrupts.c11
4 files changed, 1 insertions, 129 deletions
diff --git a/arch/sparc/cpu/leon2/cpu_init.c b/arch/sparc/cpu/leon2/cpu_init.c
index b4d91e5039..9dfb99cb0f 100644
--- a/arch/sparc/cpu/leon2/cpu_init.c
+++ b/arch/sparc/cpu/leon2/cpu_init.c
@@ -14,9 +14,6 @@
#include <config.h>
-#define TIMER_BASE_CLK 1000000
-#define US_PER_TICK (1000000 / CONFIG_SYS_HZ)
-
DECLARE_GLOBAL_DATA_PTR;
/*
@@ -77,48 +74,8 @@ int cpu_init_r(void)
return 0;
}
-/* Uses Timer 0 to get accurate
- * pauses. Max 2 raised to 32 ticks
- *
- */
-void cpu_wait_ticks(unsigned long ticks)
-{
- unsigned long start = get_timer(0);
- while (get_timer(start) < ticks) ;
-}
-
-/* initiate and setup timer0 interrupt to configured HZ. Base clock is 1MHz.
- * Return irq number for timer int or a negative number for
- * dealing with self
- */
-int timer_interrupt_init_cpu(void)
-{
- LEON2_regs *leon2 = (LEON2_regs *) LEON2_PREGS;
-
- /* SYS_HZ ticks per second */
- leon2->Timer_Counter_1 = 0;
- leon2->Timer_Reload_1 = (TIMER_BASE_CLK / CONFIG_SYS_HZ) - 1;
- leon2->Timer_Control_1 =
- (LEON2_TIMER_CTRL_EN | LEON2_TIMER_CTRL_RS | LEON2_TIMER_CTRL_LD);
-
- return LEON2_TIMER1_IRQNO;
-}
-
-/*
- * This function is intended for SHORT delays only.
+/* initiate and setup timer0 to configured HZ. Base clock is 1MHz.
*/
-unsigned long cpu_usec2ticks(unsigned long usec)
-{
- if (usec < US_PER_TICK)
- return 1;
- return usec / US_PER_TICK;
-}
-
-unsigned long cpu_ticks2usec(unsigned long ticks)
-{
- return ticks * US_PER_TICK;
-}
-
int timer_init(void)
{
LEON2_regs *leon2 = (LEON2_regs *)LEON2_PREGS;
diff --git a/arch/sparc/cpu/leon2/interrupts.c b/arch/sparc/cpu/leon2/interrupts.c
index f78ec8a410..602e4a67ba 100644
--- a/arch/sparc/cpu/leon2/interrupts.c
+++ b/arch/sparc/cpu/leon2/interrupts.c
@@ -118,20 +118,6 @@ int interrupt_init_cpu(void)
/****************************************************************************/
-/* Handle Timer 0 IRQ */
-void timer_interrupt_cpu(void *arg)
-{
- LEON2_regs *leon2 = (LEON2_regs *) LEON2_PREGS;
-
- leon2->Timer_Control_1 =
- (LEON2_TIMER_CTRL_EN | LEON2_TIMER_CTRL_RS | LEON2_TIMER_CTRL_LD);
-
- /* nothing to do here */
- return;
-}
-
-/****************************************************************************/
-
/*
* Install and free a interrupt handler.
*/
diff --git a/arch/sparc/cpu/leon3/cpu_init.c b/arch/sparc/cpu/leon3/cpu_init.c
index 9e294bfd0e..f25388cf84 100644
--- a/arch/sparc/cpu/leon3/cpu_init.c
+++ b/arch/sparc/cpu/leon3/cpu_init.c
@@ -11,7 +11,6 @@
#include <asm/asi.h>
#include <asm/leon.h>
#include <asm/io.h>
-#include <asm/irq.h>
#include <ambapp.h>
#include <grlib/irqmp.h>
#include <grlib/gptimer.h>
@@ -29,9 +28,6 @@
#define CONFIG_SYS_GRLIB_GPTIMER_INDEX 0
#endif
-#define TIMER_BASE_CLK 1000000
-#define US_PER_TICK (1000000 / CONFIG_SYS_HZ)
-
DECLARE_GLOBAL_DATA_PTR;
ambapp_dev_irqmp *irqmp = NULL;
@@ -142,63 +138,7 @@ int cpu_init_r(void)
return 0;
}
-/* Busy wait a number of ms */
-void cpu_wait_ms_busy(unsigned long ms)
-{
- unsigned int ms_delay;
- volatile unsigned int tmp;
-
- /* ~10-20 cycles per decrement */
- ms_delay = leon_cpu_freq / (1000 * 10);
- do {
- /* Wait ~1ms */
- tmp = ms_delay;
- while (tmp-- > 0)
- ;
- } while (--ms > 0);
-}
-
-/* Uses Timer 0 to get accurate
- * pauses. Max 2 raised to 32 ticks
- *
- */
-void cpu_wait_ticks(unsigned long ticks)
-{
- unsigned long start;
-
- if (interrupt_is_enabled()) {
- start = get_timer(0);
- while (get_timer(start) < ticks)
;
- } else {
- /* Interrupts disabled, this means that we cannot
- * use get_timer(), it relies on IRQ. Instead the
- * CPU frequency is used.
- */
- cpu_wait_ms_busy(ticks2usec(ticks) / 1000);
- }
-}
-
-int timer_interrupt_init_cpu(void)
-{
- return -1;
-}
-
-/*
- * This function is intended for SHORT delays only.
- */
-unsigned long cpu_usec2ticks(unsigned long usec)
-{
- if (usec < US_PER_TICK)
- return 1;
- return usec / US_PER_TICK;
-}
-
-unsigned long cpu_ticks2usec(unsigned long ticks)
-{
- return ticks * US_PER_TICK;
-}
-
int timer_init(void)
{
ambapp_dev_gptimer_element *tmr;
diff --git a/arch/sparc/cpu/leon3/interrupts.c b/arch/sparc/cpu/leon3/interrupts.c
index 2312b58d29..00c3288774 100644
--- a/arch/sparc/cpu/leon3/interrupts.c
+++ b/arch/sparc/cpu/leon3/interrupts.c
@@ -124,17 +124,6 @@ int interrupt_init_cpu(void)
/****************************************************************************/
-/* Handle Timer 0 IRQ */
-void timer_interrupt_cpu(void *arg)
-{
- gptimer->e[0].ctrl = (GPTIMER_CTRL_EN | GPTIMER_CTRL_RS |
- GPTIMER_CTRL_LD | GPTIMER_CTRL_IE);
- /* nothing to do here */
- return;
-}
-
-/****************************************************************************/
-
/*
* Install and free a interrupt handler.
*/
OpenPOWER on IntegriCloud