projects/linux·blob master · refs

37 lines · 957 B

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
13typedef uint32_t XENCONS_RING_IDX;
14
15#define MASK_XENCONS_IDX(idx, ring) ((idx) & (sizeof(ring)-1))
16
17struct 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 * Flag values signaling from backend to frontend whether the console is
24 * connected. i.e. Whether it will be serviced and emptied.
25 *
26 * The flag starts as disconnected.
27 */
28#define XENCONSOLE_DISCONNECTED 1
29/*
30 * The flag is set to connected when the backend connects and the console
31 * will be serviced.
32 */
33#define XENCONSOLE_CONNECTED 0
34 uint8_t connection;
35};
36
37#endif /* __XEN_PUBLIC_IO_CONSOLE_H__ */