Release 4.10 arch/ia64/sn/kernel/sn2/timer.c
/*
* linux/arch/ia64/sn/kernel/sn2/timer.c
*
* Copyright (C) 2003 Silicon Graphics, Inc.
* Copyright (C) 2003 Hewlett-Packard Co
* David Mosberger <davidm@hpl.hp.com>: updated for new timer-interpolation infrastructure
*/
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/sched.h>
#include <linux/time.h>
#include <linux/interrupt.h>
#include <linux/clocksource.h>
#include <asm/hw_irq.h>
#include <asm/timex.h>
#include <asm/sn/leds.h>
#include <asm/sn/shub_mmr.h>
#include <asm/sn/clksupport.h>
extern unsigned long sn_rtc_cycles_per_second;
static u64 read_sn2(struct clocksource *cs)
{
return (u64)readq(RTC_COUNTER_ADDR);
}
Contributors
| Person | Tokens | Prop | Commits | CommitProp |
tony luck | tony luck | 13 | 65.00% | 1 | 25.00% |
magnus damm | magnus damm | 4 | 20.00% | 1 | 25.00% |
thomas gleixner | thomas gleixner | 2 | 10.00% | 1 | 25.00% |
christoph lameter | christoph lameter | 1 | 5.00% | 1 | 25.00% |
| Total | 20 | 100.00% | 4 | 100.00% |
static struct clocksource clocksource_sn2 = {
.name = "sn2_rtc",
.rating = 450,
.read = read_sn2,
.mask = (1LL << 55) - 1,
.flags = CLOCK_SOURCE_IS_CONTINUOUS,
};
/*
* sn udelay uses the RTC instead of the ITC because the ITC is not
* synchronized across all CPUs, and the thread may migrate to another CPU
* if preemption is enabled.
*/
static void
ia64_sn_udelay (unsigned long usecs)
{
unsigned long start = rtc_time();
unsigned long end = start +
usecs * sn_rtc_cycles_per_second / 1000000;
while (time_before((unsigned long)rtc_time(), end))
cpu_relax();
}
Contributors
| Person | Tokens | Prop | Commits | CommitProp |
john hawkes | john hawkes | 46 | 100.00% | 1 | 100.00% |
| Total | 46 | 100.00% | 1 | 100.00% |
void __init sn_timer_init(void)
{
clocksource_sn2.archdata.fsys_mmio = RTC_COUNTER_ADDR;
clocksource_register_hz(&clocksource_sn2, sn_rtc_cycles_per_second);
ia64_udelay = &ia64_sn_udelay;
}
Contributors
| Person | Tokens | Prop | Commits | CommitProp |
christoph lameter | christoph lameter | 10 | 34.48% | 2 | 25.00% |
john hawkes | john hawkes | 5 | 17.24% | 1 | 12.50% |
jack steiner | jack steiner | 4 | 13.79% | 1 | 12.50% |
john stultz | john stultz | 3 | 10.34% | 1 | 12.50% |
tony luck | tony luck | 3 | 10.34% | 1 | 12.50% |
jes sorensen | jes sorensen | 2 | 6.90% | 1 | 12.50% |
andy lutomirski | andy lutomirski | 2 | 6.90% | 1 | 12.50% |
| Total | 29 | 100.00% | 8 | 100.00% |
Overall Contributors
| Person | Tokens | Prop | Commits | CommitProp |
john hawkes | john hawkes | 55 | 31.79% | 1 | 7.14% |
tony luck | tony luck | 33 | 19.08% | 1 | 7.14% |
jes sorensen | jes sorensen | 33 | 19.08% | 1 | 7.14% |
christoph lameter | christoph lameter | 29 | 16.76% | 3 | 21.43% |
david mosberger | david mosberger | 5 | 2.89% | 2 | 14.29% |
magnus damm | magnus damm | 4 | 2.31% | 1 | 7.14% |
jack steiner | jack steiner | 4 | 2.31% | 1 | 7.14% |
patrick gefre | patrick gefre | 3 | 1.73% | 1 | 7.14% |
john stultz | john stultz | 3 | 1.73% | 1 | 7.14% |
andy lutomirski | andy lutomirski | 2 | 1.16% | 1 | 7.14% |
thomas gleixner | thomas gleixner | 2 | 1.16% | 1 | 7.14% |
| Total | 173 | 100.00% | 14 | 100.00% |
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.