1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  * hvconsole.h
4  * Copyright (C) 2004 Ryan S Arnold, IBM Corporation
5  *
6  * LPAR console support.
7  */
8 
9 #ifndef _PPC64_HVCONSOLE_H
10 #define _PPC64_HVCONSOLE_H
11 #ifdef __KERNEL__
12 
13 /*
14  * PSeries firmware will only send/recv up to 16 bytes of character data per
15  * hcall.
16  */
17 #define MAX_VIO_PUT_CHARS	16
18 #define SIZE_VIO_GET_CHARS	16
19 
20 /*
21  * Vio firmware always attempts to fetch MAX_VIO_GET_CHARS chars.  The 'count'
22  * parm is included to conform to put_chars() function pointer template
23  */
24 extern int hvc_get_chars(uint32_t vtermno, char *buf, int count);
25 extern int hvc_put_chars(uint32_t vtermno, const char *buf, int count);
26 
27 /* Provided by HVC VIO */
28 void hvc_vio_init_early(void);
29 
30 #endif /* __KERNEL__ */
31 #endif /* _PPC64_HVCONSOLE_H */
32