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