git://git.onelab.eu
/
linux-2.6.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git]
/
arch
/
mips
/
au1000
/
common
/
time.c
diff --git
a/arch/mips/au1000/common/time.c
b/arch/mips/au1000/common/time.c
index
7fbea1b
..
883d3f3
100644
(file)
--- a/
arch/mips/au1000/common/time.c
+++ b/
arch/mips/au1000/common/time.c
@@
-33,6
+33,7
@@
*/
#include <linux/types.h>
*/
#include <linux/types.h>
+#include <linux/config.h>
#include <linux/init.h>
#include <linux/kernel_stat.h>
#include <linux/sched.h>
#include <linux/init.h>
#include <linux/kernel_stat.h>
#include <linux/sched.h>
@@
-49,6
+50,10
@@
#include <linux/mc146818rtc.h>
#include <linux/timex.h>
#include <linux/mc146818rtc.h>
#include <linux/timex.h>
+extern void do_softirq(void);
+extern volatile unsigned long wall_jiffies;
+unsigned long missed_heart_beats = 0;
+
static unsigned long r4k_offset; /* Amount to increment compare reg each time */
static unsigned long r4k_cur; /* What counter should be at next timer irq */
int no_au1xxx_32khz;
static unsigned long r4k_offset; /* Amount to increment compare reg each time */
static unsigned long r4k_cur; /* What counter should be at next timer irq */
int no_au1xxx_32khz;
@@
-111,7
+116,6
@@
void mips_timer_interrupt(struct pt_regs *regs)
null:
ack_r4ktimer(0);
null:
ack_r4ktimer(0);
- irq_exit();
}
#ifdef CONFIG_PM
}
#ifdef CONFIG_PM
@@
-355,7
+359,7
@@
static unsigned long do_fast_cp0_gettimeoffset(void)
: "hi", "lo", GCC_REG_ACCUM);
/*
: "hi", "lo", GCC_REG_ACCUM);
/*
- * Due to possible jiffies inconsistencies, we need to check
+ * Due to possible jiffies inconsistencies, we need to check
* the result so that we'll get a timer that is monotonic.
*/
if (res >= USECS_PER_JIFFY)
* the result so that we'll get a timer that is monotonic.
*/
if (res >= USECS_PER_JIFFY)
@@
-383,9
+387,10
@@
static unsigned long do_fast_pm_gettimeoffset(void)
}
#endif
}
#endif
-void
__init plat
_timer_setup(struct irqaction *irq)
+void
au1xxx
_timer_setup(struct irqaction *irq)
{
{
- unsigned int est_freq;
+ unsigned int est_freq;
+ extern unsigned long (*do_gettimeoffset)(void);
printk("calculating r4koff... ");
r4k_offset = cal_r4koff();
printk("calculating r4koff... ");
r4k_offset = cal_r4koff();