| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
| Michael Ellerman | 296167a | 2006-01-11 11:54:09 +1100 | [diff] [blame] | 2 | * (c) 2001, 2006 IBM Corporation. | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 | * | 
|  | 4 | * This program is free software; you can redistribute it and/or | 
|  | 5 | * modify it under the terms of the GNU General Public License | 
|  | 6 | * as published by the Free Software Foundation; either version | 
|  | 7 | * 2 of the License, or (at your option) any later version. | 
|  | 8 | */ | 
|  | 9 |  | 
| David Gibson | 35cd878 | 2005-11-11 16:42:12 +1100 | [diff] [blame] | 10 | #ifndef _ASM_POWERPC_UDBG_H | 
|  | 11 | #define _ASM_POWERPC_UDBG_H | 
| Arnd Bergmann | 88ced03 | 2005-12-16 22:43:46 +0100 | [diff] [blame] | 12 | #ifdef __KERNEL__ | 
| David Gibson | 35cd878 | 2005-11-11 16:42:12 +1100 | [diff] [blame] | 13 |  | 
|  | 14 | #include <linux/compiler.h> | 
|  | 15 | #include <linux/init.h> | 
|  | 16 |  | 
| Benjamin Herrenschmidt | 51d3082 | 2005-11-23 17:57:25 +1100 | [diff] [blame] | 17 | extern void (*udbg_putc)(char c); | 
| Benjamin Herrenschmidt | bb6b9b2 | 2005-11-30 16:54:12 +1100 | [diff] [blame] | 18 | extern int (*udbg_getc)(void); | 
| Milton Miller | c8f1c8b | 2005-09-06 11:56:42 +1000 | [diff] [blame] | 19 | extern int (*udbg_getc_poll)(void); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 20 |  | 
| Milton Miller | c8f1c8b | 2005-09-06 11:56:42 +1000 | [diff] [blame] | 21 | extern void udbg_puts(const char *s); | 
|  | 22 | extern int udbg_write(const char *s, int n); | 
|  | 23 | extern int udbg_read(char *buf, int buflen); | 
|  | 24 |  | 
| Milton Miller | 8d92739 | 2005-09-06 11:57:27 +1000 | [diff] [blame] | 25 | extern void register_early_udbg_console(void); | 
| jimix@watson.ibm.com | 8ae5b28 | 2006-05-17 12:00:35 -0400 | [diff] [blame] | 26 | extern void udbg_printf(const char *fmt, ...) | 
|  | 27 | __attribute__ ((format (printf, 1, 2))); | 
| Kumar Gala | be6b843 | 2005-12-20 16:37:07 -0600 | [diff] [blame] | 28 | extern void udbg_progress(char *s, unsigned short hex); | 
| Milton Miller | c8f1c8b | 2005-09-06 11:56:42 +1000 | [diff] [blame] | 29 |  | 
| Benjamin Herrenschmidt | 463ce0e | 2005-11-23 17:56:06 +1100 | [diff] [blame] | 30 | extern void udbg_init_uart(void __iomem *comport, unsigned int speed, | 
|  | 31 | unsigned int clock); | 
|  | 32 | extern unsigned int udbg_probe_uart_speed(void __iomem *comport, | 
|  | 33 | unsigned int clock); | 
| Paul Mackerras | 35499c0 | 2005-10-22 16:02:39 +1000 | [diff] [blame] | 34 |  | 
|  | 35 | struct device_node; | 
| Benjamin Herrenschmidt | 51d3082 | 2005-11-23 17:57:25 +1100 | [diff] [blame] | 36 | extern void udbg_scc_init(int force_scc); | 
|  | 37 | extern int udbg_adb_init(int force_btext); | 
|  | 38 | extern void udbg_adb_init_early(void); | 
|  | 39 |  | 
| Michael Ellerman | 296167a | 2006-01-11 11:54:09 +1100 | [diff] [blame] | 40 | extern void __init udbg_early_init(void); | 
|  | 41 | extern void __init udbg_init_debug_lpar(void); | 
|  | 42 | extern void __init udbg_init_pmac_realmode(void); | 
|  | 43 | extern void __init udbg_init_maple_realmode(void); | 
|  | 44 | extern void __init udbg_init_iseries(void); | 
| Michael Ellerman | cc46bb9 | 2006-06-23 18:20:16 +1000 | [diff] [blame] | 45 | extern void __init udbg_init_rtas_panel(void); | 
|  | 46 | extern void __init udbg_init_rtas_console(void); | 
| Michael Ellerman | 296167a | 2006-01-11 11:54:09 +1100 | [diff] [blame] | 47 |  | 
| Arnd Bergmann | 88ced03 | 2005-12-16 22:43:46 +0100 | [diff] [blame] | 48 | #endif /* __KERNEL__ */ | 
| David Gibson | 35cd878 | 2005-11-11 16:42:12 +1100 | [diff] [blame] | 49 | #endif /* _ASM_POWERPC_UDBG_H */ |