162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-or-later */ 262306a36Sopenharmony_ci/* 362306a36Sopenharmony_ci * (c) 2001, 2006 IBM Corporation. 462306a36Sopenharmony_ci */ 562306a36Sopenharmony_ci 662306a36Sopenharmony_ci#ifndef _ASM_POWERPC_UDBG_H 762306a36Sopenharmony_ci#define _ASM_POWERPC_UDBG_H 862306a36Sopenharmony_ci#ifdef __KERNEL__ 962306a36Sopenharmony_ci 1062306a36Sopenharmony_ci#include <linux/compiler.h> 1162306a36Sopenharmony_ci#include <linux/init.h> 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_ciextern void (*udbg_putc)(char c); 1462306a36Sopenharmony_ciextern void (*udbg_flush)(void); 1562306a36Sopenharmony_ciextern int (*udbg_getc)(void); 1662306a36Sopenharmony_ciextern int (*udbg_getc_poll)(void); 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_civoid udbg_puts(const char *s); 1962306a36Sopenharmony_ciint udbg_write(const char *s, int n); 2062306a36Sopenharmony_ci 2162306a36Sopenharmony_civoid register_early_udbg_console(void); 2262306a36Sopenharmony_civoid udbg_printf(const char *fmt, ...) 2362306a36Sopenharmony_ci __attribute__ ((format (printf, 1, 2))); 2462306a36Sopenharmony_civoid udbg_progress(char *s, unsigned short hex); 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_civoid __init udbg_uart_init_mmio(void __iomem *addr, unsigned int stride); 2762306a36Sopenharmony_civoid __init udbg_uart_init_pio(unsigned long port, unsigned int stride); 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_civoid __init udbg_uart_setup(unsigned int speed, unsigned int clock); 3062306a36Sopenharmony_ciunsigned int __init udbg_probe_uart_speed(unsigned int clock); 3162306a36Sopenharmony_ci 3262306a36Sopenharmony_cistruct device_node; 3362306a36Sopenharmony_civoid __init udbg_scc_init(int force_scc); 3462306a36Sopenharmony_ciint udbg_adb_init(int force_btext); 3562306a36Sopenharmony_civoid udbg_adb_init_early(void); 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_civoid __init udbg_early_init(void); 3862306a36Sopenharmony_civoid __init udbg_init_debug_lpar(void); 3962306a36Sopenharmony_civoid __init udbg_init_debug_lpar_hvsi(void); 4062306a36Sopenharmony_civoid __init udbg_init_pmac_realmode(void); 4162306a36Sopenharmony_civoid __init udbg_init_maple_realmode(void); 4262306a36Sopenharmony_civoid __init udbg_init_pas_realmode(void); 4362306a36Sopenharmony_civoid __init udbg_init_rtas_panel(void); 4462306a36Sopenharmony_civoid __init udbg_init_rtas_console(void); 4562306a36Sopenharmony_civoid __init udbg_init_btext(void); 4662306a36Sopenharmony_civoid __init udbg_init_44x_as1(void); 4762306a36Sopenharmony_civoid __init udbg_init_40x_realmode(void); 4862306a36Sopenharmony_civoid __init udbg_init_cpm(void); 4962306a36Sopenharmony_civoid __init udbg_init_usbgecko(void); 5062306a36Sopenharmony_civoid __init udbg_init_memcons(void); 5162306a36Sopenharmony_civoid __init udbg_init_ehv_bc(void); 5262306a36Sopenharmony_civoid __init udbg_init_ps3gelic(void); 5362306a36Sopenharmony_civoid __init udbg_init_debug_opal_raw(void); 5462306a36Sopenharmony_civoid __init udbg_init_debug_opal_hvsi(void); 5562306a36Sopenharmony_civoid __init udbg_init_debug_16550(void); 5662306a36Sopenharmony_ci 5762306a36Sopenharmony_ci#endif /* __KERNEL__ */ 5862306a36Sopenharmony_ci#endif /* _ASM_POWERPC_UDBG_H */ 59