11a59d1b8SThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-or-later */ 2eb39c880SMahesh Salgaonkar /* 3eb39c880SMahesh Salgaonkar * Firmware Assisted dump header file. 4eb39c880SMahesh Salgaonkar * 5eb39c880SMahesh Salgaonkar * Copyright 2011 IBM Corporation 6eb39c880SMahesh Salgaonkar * Author: Mahesh Salgaonkar <mahesh@linux.vnet.ibm.com> 7eb39c880SMahesh Salgaonkar */ 8eb39c880SMahesh Salgaonkar 90226e552SHari Bathini #ifndef _ASM_POWERPC_FADUMP_H 100226e552SHari Bathini #define _ASM_POWERPC_FADUMP_H 11eb39c880SMahesh Salgaonkar 12eb39c880SMahesh Salgaonkar #ifdef CONFIG_FA_DUMP 13eb39c880SMahesh Salgaonkar 1422bd0177SHari Bathini extern int crashing_cpu; 1522bd0177SHari Bathini 160db6896fSMahesh Salgaonkar extern int is_fadump_memory_area(u64 addr, ulong size); 173ccc00a7SMahesh Salgaonkar extern int setup_fadump(void); 183ccc00a7SMahesh Salgaonkar extern int is_fadump_active(void); 196fcd6baaSNicholas Piggin extern int should_fadump_crash(void); 20ebaeb5aeSMahesh Salgaonkar extern void crash_fadump(struct pt_regs *, const char *); 21b500afffSMahesh Salgaonkar extern void fadump_cleanup(void); 22b500afffSMahesh Salgaonkar 233ccc00a7SMahesh Salgaonkar #else /* CONFIG_FA_DUMP */ is_fadump_active(void)243ccc00a7SMahesh Salgaonkarstatic inline int is_fadump_active(void) { return 0; } should_fadump_crash(void)256fcd6baaSNicholas Pigginstatic inline int should_fadump_crash(void) { return 0; } crash_fadump(struct pt_regs * regs,const char * str)26ebaeb5aeSMahesh Salgaonkarstatic inline void crash_fadump(struct pt_regs *regs, const char *str) { } fadump_cleanup(void)279c1d38b3SChristophe Leroystatic inline void fadump_cleanup(void) { } 280226e552SHari Bathini #endif /* !CONFIG_FA_DUMP */ 29bec53196SHari Bathini 30bec53196SHari Bathini #if defined(CONFIG_FA_DUMP) || defined(CONFIG_PRESERVE_FA_DUMP) 31bec53196SHari Bathini extern int early_init_dt_scan_fw_dump(unsigned long node, const char *uname, 32bec53196SHari Bathini int depth, void *data); 33bec53196SHari Bathini extern int fadump_reserve_mem(void); 34bec53196SHari Bathini #endif 35*c5c1d1efSRitesh Harjani (IBM) 36*c5c1d1efSRitesh Harjani (IBM) #if defined(CONFIG_FA_DUMP) && defined(CONFIG_CMA) 37*c5c1d1efSRitesh Harjani (IBM) void fadump_cma_init(void); 38*c5c1d1efSRitesh Harjani (IBM) #else fadump_cma_init(void)39*c5c1d1efSRitesh Harjani (IBM)static inline void fadump_cma_init(void) { } 40*c5c1d1efSRitesh Harjani (IBM) #endif 41*c5c1d1efSRitesh Harjani (IBM) 420226e552SHari Bathini #endif /* _ASM_POWERPC_FADUMP_H */ 43