| /* SPDX-License-Identifier: MIT */ | |
| /****************************************************************************** | |
| * console.h | |
| * | |
| * Console I/O interface for Xen guest OSes. | |
| * | |
| * Copyright (c) 2005, Keir Fraser | |
| */ | |
| #ifndef __XEN_PUBLIC_IO_CONSOLE_H__ | |
| #define __XEN_PUBLIC_IO_CONSOLE_H__ | |
| typedef uint32_t XENCONS_RING_IDX; | |
| #define MASK_XENCONS_IDX(idx, ring) ((idx) & (sizeof(ring)-1)) | |
| struct xencons_interface { | |
| char in[1024]; | |
| char out[2048]; | |
| XENCONS_RING_IDX in_cons, in_prod; | |
| XENCONS_RING_IDX out_cons, out_prod; | |
| /* | |
| * Flag values signaling from backend to frontend whether the console is | |
| * connected. i.e. Whether it will be serviced and emptied. | |
| * | |
| * The flag starts as disconnected. | |
| */ | |
| #define XENCONSOLE_DISCONNECTED 1 | |
| /* | |
| * The flag is set to connected when the backend connects and the console | |
| * will be serviced. | |
| */ | |
| #define XENCONSOLE_CONNECTED 0 | |
| uint8_t connection; | |
| }; | |
| #endif /* __XEN_PUBLIC_IO_CONSOLE_H__ */ |