xref: /openbmc/linux/arch/arm/include/asm/procinfo.h (revision d2912cb1)
1d2912cb1SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
24baa9922SRussell King /*
34baa9922SRussell King  *  arch/arm/include/asm/procinfo.h
44baa9922SRussell King  *
54baa9922SRussell King  *  Copyright (C) 1996-1999 Russell King
64baa9922SRussell King  */
74baa9922SRussell King #ifndef __ASM_PROCINFO_H
84baa9922SRussell King #define __ASM_PROCINFO_H
94baa9922SRussell King 
104baa9922SRussell King #ifdef __KERNEL__
114baa9922SRussell King 
124baa9922SRussell King struct cpu_tlb_fns;
134baa9922SRussell King struct cpu_user_fns;
144baa9922SRussell King struct cpu_cache_fns;
154baa9922SRussell King struct processor;
164baa9922SRussell King 
174baa9922SRussell King /*
184baa9922SRussell King  * Note!  struct processor is always defined if we're
194baa9922SRussell King  * using MULTI_CPU, otherwise this entry is unused,
204baa9922SRussell King  * but still exists.
214baa9922SRussell King  *
224baa9922SRussell King  * NOTE! The following structure is defined by assembly
234baa9922SRussell King  * language, NOT C code.  For more information, check:
244baa9922SRussell King  *  arch/arm/mm/proc-*.S and arch/arm/kernel/head.S
254baa9922SRussell King  */
264baa9922SRussell King struct proc_info_list {
274baa9922SRussell King 	unsigned int		cpu_val;
284baa9922SRussell King 	unsigned int		cpu_mask;
294baa9922SRussell King 	unsigned long		__cpu_mm_mmu_flags;	/* used by head.S */
304baa9922SRussell King 	unsigned long		__cpu_io_mmu_flags;	/* used by head.S */
314baa9922SRussell King 	unsigned long		__cpu_flush;		/* used by head.S */
324baa9922SRussell King 	const char		*arch_name;
334baa9922SRussell King 	const char		*elf_name;
344baa9922SRussell King 	unsigned int		elf_hwcap;
354baa9922SRussell King 	const char		*cpu_name;
364baa9922SRussell King 	struct processor	*proc;
374baa9922SRussell King 	struct cpu_tlb_fns	*tlb;
384baa9922SRussell King 	struct cpu_user_fns	*user;
394baa9922SRussell King 	struct cpu_cache_fns	*cache;
404baa9922SRussell King };
414baa9922SRussell King 
424baa9922SRussell King #else	/* __KERNEL__ */
434baa9922SRussell King #include <asm/elf.h>
444baa9922SRussell King #warning "Please include asm/elf.h instead"
454baa9922SRussell King #endif	/* __KERNEL__ */
464baa9922SRussell King #endif
47