1/* SPDX-License-Identifier: GPL-2.0 */
2#ifndef __AXP_CONSOLE_H
3#define __AXP_CONSOLE_H
4
5#include <uapi/asm/console.h>
6
7#ifndef __ASSEMBLY__
8extern long callback_puts(long unit, const char *s, long length);
9extern long callback_getc(long unit);
10extern long callback_open_console(void);
11extern long callback_close_console(void);
12extern long callback_open(const char *device, long length);
13extern long callback_close(long unit);
14extern long callback_read(long channel, long count, const char *buf, long lbn);
15extern long callback_getenv(long id, const char *buf, unsigned long buf_size);
16extern long callback_setenv(long id, const char *buf, unsigned long buf_size);
17extern long callback_save_env(void);
18
19extern int srm_fixup(unsigned long new_callback_addr,
20		     unsigned long new_hwrpb_addr);
21extern long srm_puts(const char *, long);
22extern long srm_printk(const char *, ...)
23	__attribute__ ((format (printf, 1, 2)));
24
25struct crb_struct;
26struct hwrpb_struct;
27extern int callback_init_done;
28extern void * callback_init(void *);
29#endif /* __ASSEMBLY__ */
30#endif /* __AXP_CONSOLE_H */
31