Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  *  arch/arm/include/asm/procinfo.h
0004  *
0005  *  Copyright (C) 1996-1999 Russell King
0006  */
0007 #ifndef __ASM_PROCINFO_H
0008 #define __ASM_PROCINFO_H
0009 
0010 #ifdef __KERNEL__
0011 
0012 struct cpu_tlb_fns;
0013 struct cpu_user_fns;
0014 struct cpu_cache_fns;
0015 struct processor;
0016 
0017 /*
0018  * Note!  struct processor is always defined if we're
0019  * using MULTI_CPU, otherwise this entry is unused,
0020  * but still exists.
0021  *
0022  * NOTE! The following structure is defined by assembly
0023  * language, NOT C code.  For more information, check:
0024  *  arch/arm/mm/proc-*.S and arch/arm/kernel/head.S
0025  */
0026 struct proc_info_list {
0027     unsigned int        cpu_val;
0028     unsigned int        cpu_mask;
0029     unsigned long       __cpu_mm_mmu_flags; /* used by head.S */
0030     unsigned long       __cpu_io_mmu_flags; /* used by head.S */
0031     unsigned long       __cpu_flush;        /* used by head.S */
0032     const char      *arch_name;
0033     const char      *elf_name;
0034     unsigned int        elf_hwcap;
0035     const char      *cpu_name;
0036     struct processor    *proc;
0037     struct cpu_tlb_fns  *tlb;
0038     struct cpu_user_fns *user;
0039     struct cpu_cache_fns    *cache;
0040 };
0041 
0042 #else   /* __KERNEL__ */
0043 #include <asm/elf.h>
0044 #warning "Please include asm/elf.h instead"
0045 #endif  /* __KERNEL__ */
0046 #endif