Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound
[sfrench/cifs-2.6.git] / arch / powerpc / include / asm / types.h
1 #ifndef _ASM_POWERPC_TYPES_H
2 #define _ASM_POWERPC_TYPES_H
3
4 /*
5  * This is here because we used to use l64 for 64bit powerpc
6  * and we don't want to impact user mode with our change to ll64
7  * in the kernel.
8  *
9  * However, some user programs are fine with this.  They can
10  * flag __SANE_USERSPACE_TYPES__ to get int-ll64.h here.
11  */
12 #if !defined(__SANE_USERSPACE_TYPES__) && defined(__powerpc64__) && !defined(__KERNEL__)
13 # include <asm-generic/int-l64.h>
14 #else
15 # include <asm-generic/int-ll64.h>
16 #endif
17
18 #ifndef __ASSEMBLY__
19
20 /*
21  * This file is never included by application software unless
22  * explicitly requested (e.g., via linux/types.h) in which case the
23  * application is Linux specific so (user-) name space pollution is
24  * not a major issue.  However, for interoperability, libraries still
25  * need to be careful to avoid a name clashes.
26  *
27  * This program is free software; you can redistribute it and/or
28  * modify it under the terms of the GNU General Public License
29  * as published by the Free Software Foundation; either version
30  * 2 of the License, or (at your option) any later version.
31  */
32
33 typedef struct {
34         __u32 u[4];
35 } __attribute__((aligned(16))) __vector128;
36
37 #endif /* __ASSEMBLY__ */
38
39 #ifdef __KERNEL__
40 #ifndef __ASSEMBLY__
41
42 typedef __vector128 vector128;
43
44 typedef struct {
45         unsigned long entry;
46         unsigned long toc;
47         unsigned long env;
48 } func_descr_t;
49
50 #endif /* __ASSEMBLY__ */
51
52 #endif /* __KERNEL__ */
53
54 #endif /* _ASM_POWERPC_TYPES_H */