h8300: update timer handler - misc update
- Update selection - Update common timer handler - Add support functions Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
e0b0f9e4ea
commit
81d423e280
@ -27,27 +27,21 @@
|
||||
#include <linux/profile.h>
|
||||
|
||||
#include <asm/io.h>
|
||||
#include <asm/target_time.h>
|
||||
#include <asm/timer.h>
|
||||
|
||||
#define TICK_SIZE (tick_nsec / 1000)
|
||||
|
||||
/*
|
||||
* timer_interrupt() needs to keep up the real-time clock,
|
||||
* as well as call the "do_timer()" routine every clocktick
|
||||
*/
|
||||
static void timer_interrupt(int irq, void *dummy, struct pt_regs * regs)
|
||||
void h8300_timer_tick(void)
|
||||
{
|
||||
/* may need to kick the hardware timer */
|
||||
platform_timer_eoi();
|
||||
|
||||
if (current->pid)
|
||||
profile_tick(CPU_PROFILING);
|
||||
write_seqlock(&xtime_lock);
|
||||
do_timer(1);
|
||||
#ifndef CONFIG_SMP
|
||||
update_process_times(user_mode(regs));
|
||||
#endif
|
||||
profile_tick(CPU_PROFILING);
|
||||
write_sequnlock(&xtime_lock);
|
||||
update_process_times(user_mode(get_irq_regs()));
|
||||
}
|
||||
|
||||
void time_init(void)
|
||||
void __init time_init(void)
|
||||
{
|
||||
unsigned int year, mon, day, hour, min, sec;
|
||||
|
||||
@ -57,12 +51,13 @@ void time_init(void)
|
||||
year = 1980;
|
||||
mon = day = 1;
|
||||
hour = min = sec = 0;
|
||||
platform_gettod (&year, &mon, &day, &hour, &min, &sec);
|
||||
|
||||
#ifdef CONFIG_H8300_GETTOD
|
||||
h8300_gettod (&year, &mon, &day, &hour, &min, &sec);
|
||||
#endif
|
||||
if ((year += 1900) < 1970)
|
||||
year += 100;
|
||||
xtime.tv_sec = mktime(year, mon, day, hour, min, sec);
|
||||
xtime.tv_nsec = 0;
|
||||
|
||||
platform_timer_setup(timer_interrupt);
|
||||
h8300_timer_setup();
|
||||
}
|
||||
|
Reference in New Issue
Block a user