svga: updated svga3d_reg.h to latest public version
This commit is contained in:
@@ -57,7 +57,8 @@ typedef enum {
|
||||
SVGA3D_HWVERSION_WS6_B1 = SVGA3D_MAKE_HWVERSION(1, 1),
|
||||
SVGA3D_HWVERSION_FUSION_11 = SVGA3D_MAKE_HWVERSION(1, 4),
|
||||
SVGA3D_HWVERSION_WS65_B1 = SVGA3D_MAKE_HWVERSION(2, 0),
|
||||
SVGA3D_HWVERSION_CURRENT = SVGA3D_HWVERSION_WS65_B1,
|
||||
SVGA3D_HWVERSION_WS8_B1 = SVGA3D_MAKE_HWVERSION(2, 1),
|
||||
SVGA3D_HWVERSION_CURRENT = SVGA3D_HWVERSION_WS8_B1,
|
||||
} SVGA3dHardwareVersion;
|
||||
|
||||
/*
|
||||
@@ -67,7 +68,8 @@ typedef enum {
|
||||
typedef uint32 SVGA3dBool; /* 32-bit Bool definition */
|
||||
#define SVGA3D_NUM_CLIPPLANES 6
|
||||
#define SVGA3D_MAX_SIMULTANEOUS_RENDER_TARGETS 8
|
||||
|
||||
#define SVGA3D_MAX_CONTEXT_IDS 256
|
||||
#define SVGA3D_MAX_SURFACE_IDS (32 * 1024)
|
||||
|
||||
/*
|
||||
* Surface formats.
|
||||
@@ -79,76 +81,91 @@ typedef uint32 SVGA3dBool; /* 32-bit Bool definition */
|
||||
*/
|
||||
|
||||
typedef enum SVGA3dSurfaceFormat {
|
||||
SVGA3D_FORMAT_INVALID = 0,
|
||||
SVGA3D_FORMAT_INVALID = 0,
|
||||
|
||||
SVGA3D_X8R8G8B8 = 1,
|
||||
SVGA3D_A8R8G8B8 = 2,
|
||||
SVGA3D_X8R8G8B8 = 1,
|
||||
SVGA3D_A8R8G8B8 = 2,
|
||||
|
||||
SVGA3D_R5G6B5 = 3,
|
||||
SVGA3D_X1R5G5B5 = 4,
|
||||
SVGA3D_A1R5G5B5 = 5,
|
||||
SVGA3D_A4R4G4B4 = 6,
|
||||
SVGA3D_R5G6B5 = 3,
|
||||
SVGA3D_X1R5G5B5 = 4,
|
||||
SVGA3D_A1R5G5B5 = 5,
|
||||
SVGA3D_A4R4G4B4 = 6,
|
||||
|
||||
SVGA3D_Z_D32 = 7,
|
||||
SVGA3D_Z_D16 = 8,
|
||||
SVGA3D_Z_D24S8 = 9,
|
||||
SVGA3D_Z_D15S1 = 10,
|
||||
SVGA3D_Z_D32 = 7,
|
||||
SVGA3D_Z_D16 = 8,
|
||||
SVGA3D_Z_D24S8 = 9,
|
||||
SVGA3D_Z_D15S1 = 10,
|
||||
|
||||
SVGA3D_LUMINANCE8 = 11,
|
||||
SVGA3D_LUMINANCE4_ALPHA4 = 12,
|
||||
SVGA3D_LUMINANCE16 = 13,
|
||||
SVGA3D_LUMINANCE8_ALPHA8 = 14,
|
||||
SVGA3D_LUMINANCE8 = 11,
|
||||
SVGA3D_LUMINANCE4_ALPHA4 = 12,
|
||||
SVGA3D_LUMINANCE16 = 13,
|
||||
SVGA3D_LUMINANCE8_ALPHA8 = 14,
|
||||
|
||||
SVGA3D_DXT1 = 15,
|
||||
SVGA3D_DXT2 = 16,
|
||||
SVGA3D_DXT3 = 17,
|
||||
SVGA3D_DXT4 = 18,
|
||||
SVGA3D_DXT5 = 19,
|
||||
SVGA3D_DXT1 = 15,
|
||||
SVGA3D_DXT2 = 16,
|
||||
SVGA3D_DXT3 = 17,
|
||||
SVGA3D_DXT4 = 18,
|
||||
SVGA3D_DXT5 = 19,
|
||||
|
||||
SVGA3D_BUMPU8V8 = 20,
|
||||
SVGA3D_BUMPL6V5U5 = 21,
|
||||
SVGA3D_BUMPX8L8V8U8 = 22,
|
||||
SVGA3D_BUMPL8V8U8 = 23,
|
||||
SVGA3D_BUMPU8V8 = 20,
|
||||
SVGA3D_BUMPL6V5U5 = 21,
|
||||
SVGA3D_BUMPX8L8V8U8 = 22,
|
||||
SVGA3D_BUMPL8V8U8 = 23,
|
||||
|
||||
SVGA3D_ARGB_S10E5 = 24, /* 16-bit floating-point ARGB */
|
||||
SVGA3D_ARGB_S23E8 = 25, /* 32-bit floating-point ARGB */
|
||||
SVGA3D_ARGB_S10E5 = 24, /* 16-bit floating-point ARGB */
|
||||
SVGA3D_ARGB_S23E8 = 25, /* 32-bit floating-point ARGB */
|
||||
|
||||
SVGA3D_A2R10G10B10 = 26,
|
||||
SVGA3D_A2R10G10B10 = 26,
|
||||
|
||||
/* signed formats */
|
||||
SVGA3D_V8U8 = 27,
|
||||
SVGA3D_Q8W8V8U8 = 28,
|
||||
SVGA3D_CxV8U8 = 29,
|
||||
SVGA3D_V8U8 = 27,
|
||||
SVGA3D_Q8W8V8U8 = 28,
|
||||
SVGA3D_CxV8U8 = 29,
|
||||
|
||||
/* mixed formats */
|
||||
SVGA3D_X8L8V8U8 = 30,
|
||||
SVGA3D_A2W10V10U10 = 31,
|
||||
SVGA3D_X8L8V8U8 = 30,
|
||||
SVGA3D_A2W10V10U10 = 31,
|
||||
|
||||
SVGA3D_ALPHA8 = 32,
|
||||
SVGA3D_ALPHA8 = 32,
|
||||
|
||||
/* Single- and dual-component floating point formats */
|
||||
SVGA3D_R_S10E5 = 33,
|
||||
SVGA3D_R_S23E8 = 34,
|
||||
SVGA3D_RG_S10E5 = 35,
|
||||
SVGA3D_RG_S23E8 = 36,
|
||||
SVGA3D_R_S10E5 = 33,
|
||||
SVGA3D_R_S23E8 = 34,
|
||||
SVGA3D_RG_S10E5 = 35,
|
||||
SVGA3D_RG_S23E8 = 36,
|
||||
|
||||
/*
|
||||
* Any surface can be used as a buffer object, but SVGA3D_BUFFER is
|
||||
* the most efficient format to use when creating new surfaces
|
||||
* expressly for index or vertex data.
|
||||
*/
|
||||
SVGA3D_BUFFER = 37,
|
||||
|
||||
SVGA3D_Z_D24X8 = 38,
|
||||
SVGA3D_BUFFER = 37,
|
||||
|
||||
SVGA3D_V16U16 = 39,
|
||||
SVGA3D_Z_D24X8 = 38,
|
||||
|
||||
SVGA3D_G16R16 = 40,
|
||||
SVGA3D_A16B16G16R16 = 41,
|
||||
SVGA3D_V16U16 = 39,
|
||||
|
||||
SVGA3D_G16R16 = 40,
|
||||
SVGA3D_A16B16G16R16 = 41,
|
||||
|
||||
/* Packed Video formats */
|
||||
SVGA3D_UYVY = 42,
|
||||
SVGA3D_YUY2 = 43,
|
||||
SVGA3D_UYVY = 42,
|
||||
SVGA3D_YUY2 = 43,
|
||||
|
||||
/* Planar video formats */
|
||||
SVGA3D_NV12 = 44,
|
||||
|
||||
/* Video format with alpha */
|
||||
SVGA3D_AYUV = 45,
|
||||
|
||||
SVGA3D_BC4_UNORM = 108,
|
||||
SVGA3D_BC5_UNORM = 111,
|
||||
|
||||
/* Advanced D3D9 depth formats. */
|
||||
SVGA3D_Z_DF16 = 118,
|
||||
SVGA3D_Z_DF24 = 119,
|
||||
SVGA3D_Z_D24S8_INT = 120,
|
||||
|
||||
SVGA3D_FORMAT_MAX
|
||||
} SVGA3dSurfaceFormat;
|
||||
@@ -414,9 +431,19 @@ typedef enum {
|
||||
SVGA3D_RS_SRCBLENDALPHA = 94, /* SVGA3dBlendOp */
|
||||
SVGA3D_RS_DSTBLENDALPHA = 95, /* SVGA3dBlendOp */
|
||||
SVGA3D_RS_BLENDEQUATIONALPHA = 96, /* SVGA3dBlendEquation */
|
||||
SVGA3D_RS_TRANSPARENCYANTIALIAS = 97, /* SVGA3dTransparencyAntialiasType */
|
||||
SVGA3D_RS_LINEAA = 98, /* SVGA3dBool */
|
||||
SVGA3D_RS_LINEWIDTH = 99, /* float */
|
||||
SVGA3D_RS_MAX
|
||||
} SVGA3dRenderStateName;
|
||||
|
||||
typedef enum {
|
||||
SVGA3D_TRANSPARENCYANTIALIAS_NORMAL = 0,
|
||||
SVGA3D_TRANSPARENCYANTIALIAS_ALPHATOCOVERAGE = 1,
|
||||
SVGA3D_TRANSPARENCYANTIALIAS_SUPERSAMPLE = 2,
|
||||
SVGA3D_TRANSPARENCYANTIALIAS_MAX
|
||||
} SVGA3dTransparencyAntialiasType;
|
||||
|
||||
typedef enum {
|
||||
SVGA3D_VERTEXMATERIAL_NONE = 0, /* Use the value in the current material */
|
||||
SVGA3D_VERTEXMATERIAL_DIFFUSE = 1, /* Use the value in the diffuse component */
|
||||
@@ -930,7 +957,6 @@ typedef enum {
|
||||
} SVGA3dCubeFace;
|
||||
|
||||
typedef enum {
|
||||
SVGA3D_SHADERTYPE_COMPILED_DX8 = 0,
|
||||
SVGA3D_SHADERTYPE_VS = 1,
|
||||
SVGA3D_SHADERTYPE_PS = 2,
|
||||
SVGA3D_SHADERTYPE_MAX
|
||||
@@ -996,7 +1022,7 @@ typedef enum {
|
||||
#define SVGA_3D_CMD_LEGACY_BASE 1000
|
||||
#define SVGA_3D_CMD_BASE 1040
|
||||
|
||||
#define SVGA_3D_CMD_SURFACE_DEFINE SVGA_3D_CMD_BASE + 0
|
||||
#define SVGA_3D_CMD_SURFACE_DEFINE SVGA_3D_CMD_BASE + 0 // Deprecated
|
||||
#define SVGA_3D_CMD_SURFACE_DESTROY SVGA_3D_CMD_BASE + 1
|
||||
#define SVGA_3D_CMD_SURFACE_COPY SVGA_3D_CMD_BASE + 2
|
||||
#define SVGA_3D_CMD_SURFACE_STRETCHBLT SVGA_3D_CMD_BASE + 3
|
||||
@@ -1026,7 +1052,11 @@ typedef enum {
|
||||
#define SVGA_3D_CMD_WAIT_FOR_QUERY SVGA_3D_CMD_BASE + 27
|
||||
#define SVGA_3D_CMD_PRESENT_READBACK SVGA_3D_CMD_BASE + 28 // Deprecated
|
||||
#define SVGA_3D_CMD_BLIT_SURFACE_TO_SCREEN SVGA_3D_CMD_BASE + 29
|
||||
#define SVGA_3D_CMD_MAX SVGA_3D_CMD_BASE + 30
|
||||
#define SVGA_3D_CMD_SURFACE_DEFINE_V2 SVGA_3D_CMD_BASE + 30
|
||||
#define SVGA_3D_CMD_GENERATE_MIPMAPS SVGA_3D_CMD_BASE + 31
|
||||
#define SVGA_3D_CMD_ACTIVATE_SURFACE SVGA_3D_CMD_BASE + 40
|
||||
#define SVGA_3D_CMD_DEACTIVATE_SURFACE SVGA_3D_CMD_BASE + 41
|
||||
#define SVGA_3D_CMD_MAX SVGA_3D_CMD_BASE + 42
|
||||
|
||||
#define SVGA_3D_CMD_FUTURE_MAX 2000
|
||||
|
||||
@@ -1115,6 +1145,8 @@ typedef enum {
|
||||
SVGA3D_SURFACE_HINT_RENDERTARGET = (1 << 6),
|
||||
SVGA3D_SURFACE_HINT_DEPTHSTENCIL = (1 << 7),
|
||||
SVGA3D_SURFACE_HINT_WRITEONLY = (1 << 8),
|
||||
SVGA3D_SURFACE_MASKABLE_ANTIALIAS = (1 << 9),
|
||||
SVGA3D_SURFACE_AUTOGENMIPMAPS = (1 << 10),
|
||||
} SVGA3dSurfaceFlags;
|
||||
|
||||
typedef
|
||||
@@ -1127,6 +1159,12 @@ struct {
|
||||
uint32 sid;
|
||||
SVGA3dSurfaceFlags surfaceFlags;
|
||||
SVGA3dSurfaceFormat format;
|
||||
/*
|
||||
* If surfaceFlags has SVGA3D_SURFACE_CUBEMAP bit set, all SVGA3dSurfaceFace
|
||||
* structures must have the same value of numMipLevels field.
|
||||
* Otherwise, all but the first SVGA3dSurfaceFace structures must have the
|
||||
* numMipLevels set to 0.
|
||||
*/
|
||||
SVGA3dSurfaceFace face[SVGA3D_MAX_SURFACE_FACES];
|
||||
/*
|
||||
* Followed by an SVGA3dSize structure for each mip level in each face.
|
||||
@@ -1139,6 +1177,31 @@ struct {
|
||||
*/
|
||||
} SVGA3dCmdDefineSurface; /* SVGA_3D_CMD_SURFACE_DEFINE */
|
||||
|
||||
typedef
|
||||
struct {
|
||||
uint32 sid;
|
||||
SVGA3dSurfaceFlags surfaceFlags;
|
||||
SVGA3dSurfaceFormat format;
|
||||
/*
|
||||
* If surfaceFlags has SVGA3D_SURFACE_CUBEMAP bit set, all SVGA3dSurfaceFace
|
||||
* structures must have the same value of numMipLevels field.
|
||||
* Otherwise, all but the first SVGA3dSurfaceFace structures must have the
|
||||
* numMipLevels set to 0.
|
||||
*/
|
||||
SVGA3dSurfaceFace face[SVGA3D_MAX_SURFACE_FACES];
|
||||
uint32 multisampleCount;
|
||||
SVGA3dTextureFilter autogenFilter;
|
||||
/*
|
||||
* Followed by an SVGA3dSize structure for each mip level in each face.
|
||||
*
|
||||
* A note on surface sizes: Sizes are always specified in pixels,
|
||||
* even if the true surface size is not a multiple of the minimum
|
||||
* block size of the surface's format. For example, a 3x3x1 DXT1
|
||||
* compressed texture would actually be stored as a 4x4x1 image in
|
||||
* memory.
|
||||
*/
|
||||
} SVGA3dCmdDefineSurface_v2; /* SVGA_3D_CMD_SURFACE_DEFINE_V2 */
|
||||
|
||||
typedef
|
||||
struct {
|
||||
uint32 sid;
|
||||
@@ -1679,6 +1742,12 @@ struct {
|
||||
/* Clipping: zero or more SVGASignedRects follow */
|
||||
} SVGA3dCmdBlitSurfaceToScreen; /* SVGA_3D_CMD_BLIT_SURFACE_TO_SCREEN */
|
||||
|
||||
typedef
|
||||
struct {
|
||||
uint32 sid;
|
||||
SVGA3dTextureFilter filter;
|
||||
} SVGA3dCmdGenerateMipmaps; /* SVGA_3D_CMD_GENERATE_MIPMAPS */
|
||||
|
||||
|
||||
/*
|
||||
* Capability query index.
|
||||
@@ -1782,6 +1851,32 @@ typedef enum {
|
||||
SVGA3D_DEVCAP_SURFACEFMT_A16B16G16R16 = 67,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_UYVY = 68,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_YUY2 = 69,
|
||||
SVGA3D_DEVCAP_MULTISAMPLE_NONMASKABLESAMPLES = 70,
|
||||
SVGA3D_DEVCAP_MULTISAMPLE_MASKABLESAMPLES = 71,
|
||||
SVGA3D_DEVCAP_ALPHATOCOVERAGE = 72,
|
||||
SVGA3D_DEVCAP_SUPERSAMPLE = 73,
|
||||
SVGA3D_DEVCAP_AUTOGENMIPMAPS = 74,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_NV12 = 75,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_AYUV = 76,
|
||||
|
||||
/*
|
||||
* This is the maximum number of SVGA context IDs that the guest
|
||||
* can define using SVGA_3D_CMD_CONTEXT_DEFINE.
|
||||
*/
|
||||
SVGA3D_DEVCAP_MAX_CONTEXT_IDS = 77,
|
||||
|
||||
/*
|
||||
* This is the maximum number of SVGA surface IDs that the guest
|
||||
* can define using SVGA_3D_CMD_SURFACE_DEFINE*.
|
||||
*/
|
||||
SVGA3D_DEVCAP_MAX_SURFACE_IDS = 78,
|
||||
|
||||
SVGA3D_DEVCAP_SURFACEFMT_Z_DF16 = 79,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_Z_DF24 = 80,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_Z_D24S8_INT = 81,
|
||||
|
||||
SVGA3D_DEVCAP_SURFACEFMT_BC4_UNORM = 82,
|
||||
SVGA3D_DEVCAP_SURFACEFMT_BC5_UNORM = 83,
|
||||
|
||||
/*
|
||||
* Don't add new caps into the previous section; the values in this
|
||||
|
||||
Reference in New Issue
Block a user