18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Firmware Assisted dump header file. 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright 2011 IBM Corporation 68c2ecf20Sopenharmony_ci * Author: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> 78c2ecf20Sopenharmony_ci */ 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#ifndef _ASM_POWERPC_FADUMP_H 108c2ecf20Sopenharmony_ci#define _ASM_POWERPC_FADUMP_H 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_ci#ifdef CONFIG_FA_DUMP 138c2ecf20Sopenharmony_ci 148c2ecf20Sopenharmony_ciextern int crashing_cpu; 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciextern int is_fadump_memory_area(u64 addr, ulong size); 178c2ecf20Sopenharmony_ciextern int setup_fadump(void); 188c2ecf20Sopenharmony_ciextern int is_fadump_active(void); 198c2ecf20Sopenharmony_ciextern int should_fadump_crash(void); 208c2ecf20Sopenharmony_ciextern void crash_fadump(struct pt_regs *, const char *); 218c2ecf20Sopenharmony_ciextern void fadump_cleanup(void); 228c2ecf20Sopenharmony_ci 238c2ecf20Sopenharmony_ci#else /* CONFIG_FA_DUMP */ 248c2ecf20Sopenharmony_cistatic inline int is_fadump_active(void) { return 0; } 258c2ecf20Sopenharmony_cistatic inline int should_fadump_crash(void) { return 0; } 268c2ecf20Sopenharmony_cistatic inline void crash_fadump(struct pt_regs *regs, const char *str) { } 278c2ecf20Sopenharmony_cistatic inline void fadump_cleanup(void) { } 288c2ecf20Sopenharmony_ci#endif /* !CONFIG_FA_DUMP */ 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci#if defined(CONFIG_FA_DUMP) || defined(CONFIG_PRESERVE_FA_DUMP) 318c2ecf20Sopenharmony_ciextern int early_init_dt_scan_fw_dump(unsigned long node, const char *uname, 328c2ecf20Sopenharmony_ci int depth, void *data); 338c2ecf20Sopenharmony_ciextern int fadump_reserve_mem(void); 348c2ecf20Sopenharmony_ci#endif 358c2ecf20Sopenharmony_ci#endif /* _ASM_POWERPC_FADUMP_H */ 36