1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Based on arch/arm/include/asm/proc-fns.h 4 * 5 * Copyright (C) 1997-1999 Russell King 6 * Copyright (C) 2000 Deep Blue Solutions Ltd 7 * Copyright (C) 2012 ARM Ltd. 8 */ 9 #ifndef __ASM_PROCFNS_H 10 #define __ASM_PROCFNS_H 11 12 #ifdef __KERNEL__ 13 #ifndef __ASSEMBLY__ 14 15 #include <asm/page.h> 16 17 struct mm_struct; 18 struct cpu_suspend_ctx; 19 20 extern void cpu_do_idle(void); 21 extern void cpu_do_switch_mm(unsigned long pgd_phys, struct mm_struct *mm); 22 extern void cpu_do_suspend(struct cpu_suspend_ctx *ptr); 23 extern u64 cpu_do_resume(phys_addr_t ptr, u64 idmap_ttbr); 24 25 #include <asm/memory.h> 26 27 #endif /* __ASSEMBLY__ */ 28 #endif /* __KERNEL__ */ 29 #endif /* __ASM_PROCFNS_H */ 30