1 /* SPDX-License-Identifier: MIT
2  *
3  * console.h
4  *
5  * Console I/O interface for Xen guest OSes.
6  *
7  * Copyright (c) 2005, Keir Fraser
8  */
9 
10 #ifndef __XEN_PUBLIC_IO_CONSOLE_H__
11 #define __XEN_PUBLIC_IO_CONSOLE_H__
12 
13 typedef u32 XENCONS_RING_IDX;
14 
15 #define MASK_XENCONS_IDX(idx, ring) ((idx) & (sizeof(ring) - 1))
16 
17 struct xencons_interface {
18 	char in[1024];
19 	char out[2048];
20 	XENCONS_RING_IDX in_cons, in_prod;
21 	XENCONS_RING_IDX out_cons, out_prod;
22 };
23 
24 #ifdef XEN_WANT_FLEX_CONSOLE_RING
25 #include "ring.h"
26 DEFINE_XEN_FLEX_RING(xencons);
27 #endif
28 
29 #endif /* __XEN_PUBLIC_IO_CONSOLE_H__ */
30 
31 /*
32  * Local variables:
33  * mode: C
34  * c-file-style: "BSD"
35  * c-basic-offset: 4
36  * tab-width: 4
37  * indent-tabs-mode: nil
38  * End:
39  */
40