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 */ 55