Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* $Id: fasttimer.h,v 1.3 2004/05/14 10:19:19 starvik Exp $ |
2 | * linux/include/asm-cris/fasttimer.h | |
3 | * | |
4 | * Fast timers for ETRAX100LX | |
5 | * This may be useful in other OS than Linux so use 2 space indentation... | |
6 | * Copyright (C) 2000, 2002 Axis Communications AB | |
7 | */ | |
1da177e4 LT |
8 | #include <linux/time.h> /* struct timeval */ |
9 | #include <linux/timex.h> | |
10 | ||
11 | #ifdef CONFIG_ETRAX_FAST_TIMER | |
12 | ||
13 | typedef void fast_timer_function_type(unsigned long); | |
14 | ||
15 | struct fast_timer{ /* Close to timer_list */ | |
16 | struct fast_timer *next; | |
17 | struct fast_timer *prev; | |
18 | struct timeval tv_set; | |
19 | struct timeval tv_expires; | |
20 | unsigned long delay_us; | |
21 | fast_timer_function_type *function; | |
22 | unsigned long data; | |
23 | const char *name; | |
24 | }; | |
25 | ||
26 | extern struct fast_timer *fast_timer_list; | |
27 | ||
28 | void start_one_shot_timer(struct fast_timer *t, | |
29 | fast_timer_function_type *function, | |
30 | unsigned long data, | |
31 | unsigned long delay_us, | |
32 | const char *name); | |
33 | ||
34 | int del_fast_timer(struct fast_timer * t); | |
35 | /* return 1 if deleted */ | |
36 | ||
37 | ||
38 | void schedule_usleep(unsigned long us); | |
39 | ||
40 | ||
41 | void fast_timer_init(void); | |
42 | ||
43 | #endif |