Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
[linux-2.6] / arch / arm / include / asm / procinfo.h
1 /*
2  *  arch/arm/include/asm/procinfo.h
3  *
4  *  Copyright (C) 1996-1999 Russell King
5  *
6  * This program is free software; you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License version 2 as
8  * published by the Free Software Foundation.
9  */
10 #ifndef __ASM_PROCINFO_H
11 #define __ASM_PROCINFO_H
12
13 #ifdef __KERNEL__
14
15 struct cpu_tlb_fns;
16 struct cpu_user_fns;
17 struct cpu_cache_fns;
18 struct processor;
19
20 /*
21  * Note!  struct processor is always defined if we're
22  * using MULTI_CPU, otherwise this entry is unused,
23  * but still exists.
24  *
25  * NOTE! The following structure is defined by assembly
26  * language, NOT C code.  For more information, check:
27  *  arch/arm/mm/proc-*.S and arch/arm/kernel/head.S
28  */
29 struct proc_info_list {
30         unsigned int            cpu_val;
31         unsigned int            cpu_mask;
32         unsigned long           __cpu_mm_mmu_flags;     /* used by head.S */
33         unsigned long           __cpu_io_mmu_flags;     /* used by head.S */
34         unsigned long           __cpu_flush;            /* used by head.S */
35         const char              *arch_name;
36         const char              *elf_name;
37         unsigned int            elf_hwcap;
38         const char              *cpu_name;
39         struct processor        *proc;
40         struct cpu_tlb_fns      *tlb;
41         struct cpu_user_fns     *user;
42         struct cpu_cache_fns    *cache;
43 };
44
45 #else   /* __KERNEL__ */
46 #include <asm/elf.h>
47 #warning "Please include asm/elf.h instead"
48 #endif  /* __KERNEL__ */
49 #endif