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