xref: /linux/arch/powerpc/include/asm/xmon.h (revision 243e25112d06b348f087a6f7aba4bbc288285bdd)
1b8b572e1SStephen Rothwell #ifndef __ASM_POWERPC_XMON_H
2b8b572e1SStephen Rothwell #define __ASM_POWERPC_XMON_H
3b8b572e1SStephen Rothwell 
4b8b572e1SStephen Rothwell /*
5b8b572e1SStephen Rothwell  * Copyrignt (C) 2006 IBM Corp
6b8b572e1SStephen Rothwell  *
7b8b572e1SStephen Rothwell  * This program is free software; you can redistribute it and/or
8b8b572e1SStephen Rothwell  * modify it under the terms of the GNU General Public License
9b8b572e1SStephen Rothwell  * as published by the Free Software Foundation; either version
10b8b572e1SStephen Rothwell  * 2 of the License, or (at your option) any later version.
11b8b572e1SStephen Rothwell  */
12b8b572e1SStephen Rothwell 
13b8b572e1SStephen Rothwell #ifdef __KERNEL__
14b8b572e1SStephen Rothwell 
15b8b572e1SStephen Rothwell #include <linux/irqreturn.h>
16b8b572e1SStephen Rothwell 
17b8b572e1SStephen Rothwell #ifdef CONFIG_XMON
18b8b572e1SStephen Rothwell extern void xmon_setup(void);
19b8b572e1SStephen Rothwell extern void xmon_register_spus(struct list_head *list);
20b8b572e1SStephen Rothwell struct pt_regs;
21b8b572e1SStephen Rothwell extern int xmon(struct pt_regs *excp);
22b8b572e1SStephen Rothwell extern irqreturn_t xmon_irq(int, void *);
23b8b572e1SStephen Rothwell #else
24b8b572e1SStephen Rothwell static inline void xmon_setup(void) { };
25b8b572e1SStephen Rothwell static inline void xmon_register_spus(struct list_head *list) { };
26b8b572e1SStephen Rothwell #endif
27b8b572e1SStephen Rothwell 
28b8b572e1SStephen Rothwell #if defined(CONFIG_XMON) && defined(CONFIG_SMP)
29b8b572e1SStephen Rothwell extern int cpus_are_in_xmon(void);
30b8b572e1SStephen Rothwell #endif
31b8b572e1SStephen Rothwell 
32*243e2511SBenjamin Herrenschmidt extern void xmon_printf(const char *format, ...);
33*243e2511SBenjamin Herrenschmidt 
34b8b572e1SStephen Rothwell #endif /* __KERNEL __ */
35b8b572e1SStephen Rothwell #endif /* __ASM_POWERPC_XMON_H */
36