diff options
Diffstat (limited to 'arch/mn10300/kernel/csrc-mn10300.c')
| -rw-r--r-- | arch/mn10300/kernel/csrc-mn10300.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/arch/mn10300/kernel/csrc-mn10300.c b/arch/mn10300/kernel/csrc-mn10300.c new file mode 100644 index 000000000000..ba2f0c4d6e01 --- /dev/null +++ b/arch/mn10300/kernel/csrc-mn10300.c | |||
| @@ -0,0 +1,35 @@ | |||
| 1 | /* MN10300 clocksource | ||
| 2 | * | ||
| 3 | * Copyright (C) 2010 Red Hat, Inc. All Rights Reserved. | ||
| 4 | * Written by Mark Salter (msalter@redhat.com) | ||
| 5 | * | ||
| 6 | * This program is free software; you can redistribute it and/or | ||
| 7 | * modify it under the terms of the GNU General Public Licence | ||
| 8 | * as published by the Free Software Foundation; either version | ||
| 9 | * 2 of the Licence, or (at your option) any later version. | ||
| 10 | */ | ||
| 11 | #include <linux/clocksource.h> | ||
| 12 | #include <linux/init.h> | ||
| 13 | #include <asm/timex.h> | ||
| 14 | #include "internal.h" | ||
| 15 | |||
| 16 | static cycle_t mn10300_read(struct clocksource *cs) | ||
| 17 | { | ||
| 18 | return read_timestamp_counter(); | ||
| 19 | } | ||
| 20 | |||
| 21 | static struct clocksource clocksource_mn10300 = { | ||
| 22 | .name = "TSC", | ||
| 23 | .rating = 200, | ||
| 24 | .read = mn10300_read, | ||
| 25 | .mask = CLOCKSOURCE_MASK(32), | ||
| 26 | .flags = CLOCK_SOURCE_IS_CONTINUOUS, | ||
| 27 | }; | ||
| 28 | |||
| 29 | int __init init_clocksource(void) | ||
| 30 | { | ||
| 31 | startup_timestamp_counter(); | ||
| 32 | clocksource_set_clock(&clocksource_mn10300, MN10300_TSCCLK); | ||
| 33 | clocksource_register(&clocksource_mn10300); | ||
| 34 | return 0; | ||
| 35 | } | ||
