Merge branch 'sh/for-2.6.29' of git://git.kernel.org/pub/scm/linux/kernel/git/lethal...
[linux-2.6] / arch / s390 / include / asm / cpu.h
1 /*
2  *  include/asm-s390/cpu.h
3  *
4  *    Copyright IBM Corp. 2007
5  *    Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>
6  */
7
8 #ifndef _ASM_S390_CPU_H_
9 #define _ASM_S390_CPU_H_
10
11 #include <linux/types.h>
12 #include <linux/percpu.h>
13 #include <linux/spinlock.h>
14
15 struct s390_idle_data {
16         spinlock_t lock;
17         unsigned long long idle_count;
18         unsigned long long idle_enter;
19         unsigned long long idle_time;
20 };
21
22 DECLARE_PER_CPU(struct s390_idle_data, s390_idle);
23
24 void vtime_start_cpu(void);
25
26 static inline void s390_idle_check(void)
27 {
28         if ((&__get_cpu_var(s390_idle))->idle_enter != 0ULL)
29                 vtime_start_cpu();
30 }
31
32 #endif /* _ASM_S390_CPU_H_ */