xref: /openbmc/linux/arch/s390/include/asm/vtimer.h (revision 588b48ca)
1 /*
2  *  Copyright IBM Corp. 2003, 2012
3  *  Virtual CPU timer
4  *
5  *  Author(s): Jan Glauber <jan.glauber@de.ibm.com>
6  */
7 
8 #ifndef _ASM_S390_TIMER_H
9 #define _ASM_S390_TIMER_H
10 
11 #define VTIMER_MAX_SLICE (0x7fffffffffffffffULL)
12 
13 struct vtimer_list {
14 	struct list_head entry;
15 	u64 expires;
16 	u64 interval;
17 	void (*function)(unsigned long);
18 	unsigned long data;
19 };
20 
21 extern void init_virt_timer(struct vtimer_list *timer);
22 extern void add_virt_timer(struct vtimer_list *timer);
23 extern void add_virt_timer_periodic(struct vtimer_list *timer);
24 extern int mod_virt_timer(struct vtimer_list *timer, u64 expires);
25 extern int mod_virt_timer_periodic(struct vtimer_list *timer, u64 expires);
26 extern int del_virt_timer(struct vtimer_list *timer);
27 
28 extern void init_cpu_vtimer(void);
29 extern void vtime_init(void);
30 
31 extern void vtime_stop_cpu(void);
32 
33 #endif /* _ASM_S390_TIMER_H */
34