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