Merge git://git.infradead.org/mtd-2.6
[pandora-kernel.git] / include / asm-s390 / 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 int in_idle;
18         unsigned long long idle_count;
19         unsigned long long idle_enter;
20         unsigned long long idle_time;
21 };
22
23 DECLARE_PER_CPU(struct s390_idle_data, s390_idle);
24
25 void s390_idle_leave(void);
26
27 static inline void s390_idle_check(void)
28 {
29         if ((&__get_cpu_var(s390_idle))->in_idle)
30                 s390_idle_leave();
31 }
32
33 #endif /* _ASM_S390_CPU_H_ */