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