1 /* SPDX-License-Identifier: MIT */
2 /* Copyright (C) 2006-2017 Oracle Corporation */
3 
4 #ifndef __HGSMI_CH_SETUP_H__
5 #define __HGSMI_CH_SETUP_H__
6 
7 /*
8  * Tell the host the location of hgsmi_host_flags structure, where the host
9  * can write information about pending buffers, etc, and which can be quickly
10  * polled by the guest without a need to port IO.
11  */
12 #define HGSMI_CC_HOST_FLAGS_LOCATION 0
13 
14 struct hgsmi_buffer_location {
15 	u32 buf_location;
16 	u32 buf_len;
17 } __packed;
18 
19 /* HGSMI setup and configuration data structures. */
20 
21 #define HGSMIHOSTFLAGS_COMMANDS_PENDING    0x01u
22 #define HGSMIHOSTFLAGS_IRQ                 0x02u
23 #define HGSMIHOSTFLAGS_VSYNC               0x10u
24 #define HGSMIHOSTFLAGS_HOTPLUG             0x20u
25 #define HGSMIHOSTFLAGS_CURSOR_CAPABILITIES 0x40u
26 
27 struct hgsmi_host_flags {
28 	u32 host_flags;
29 	u32 reserved[3];
30 } __packed;
31 
32 #endif
33