at v2.6.13 1.0 kB view raw
1/* 2 * include/asm-s390/timer.h 3 * 4 * (C) Copyright IBM Corp. 2003 5 * Virtual CPU timer 6 * 7 * Author: Jan Glauber (jang@de.ibm.com) 8 */ 9 10#ifndef _ASM_S390_TIMER_H 11#define _ASM_S390_TIMER_H 12 13#include <linux/timer.h> 14 15#define VTIMER_MAX_SLICE (0x7ffffffffffff000LL) 16 17struct vtimer_list { 18 struct list_head entry; 19 20 int cpu; 21 __u64 expires; 22 __u64 interval; 23 24 spinlock_t lock; 25 unsigned long magic; 26 27 void (*function)(unsigned long, struct pt_regs*); 28 unsigned long data; 29}; 30 31/* the offset value will wrap after ca. 71 years */ 32struct vtimer_queue { 33 struct list_head list; 34 spinlock_t lock; 35 __u64 to_expire; /* current event expire time */ 36 __u64 offset; /* list offset to zero */ 37 __u64 idle; /* temp var for idle */ 38}; 39 40extern void init_virt_timer(struct vtimer_list *timer); 41extern void add_virt_timer(void *new); 42extern void add_virt_timer_periodic(void *new); 43extern int mod_virt_timer(struct vtimer_list *timer, __u64 expires); 44extern int del_virt_timer(struct vtimer_list *timer); 45 46#endif