Subversion Repositories Kolibri OS

Rev

Rev 5270 | Rev 6934 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 5270 Rev 6082
Line 1... Line 1...
1
/**************************************************************************
1
/**************************************************************************
2
 *
2
 *
3
 * Copyright © 2009 VMware, Inc., Palo Alto, CA., USA
3
 * Copyright © 2009-2015 VMware, Inc., Palo Alto, CA., USA
4
 * All Rights Reserved.
4
 * All Rights Reserved.
5
 *
5
 *
6
 * Permission is hereby granted, free of charge, to any person obtaining a
6
 * Permission is hereby granted, free of charge, to any person obtaining a
7
 * copy of this software and associated documentation files (the
7
 * copy of this software and associated documentation files (the
8
 * "Software"), to deal in the Software without restriction, including
8
 * "Software"), to deal in the Software without restriction, including
Line 62... Line 62...
62
#define DRM_VMW_CREATE_SHADER        21
62
#define DRM_VMW_CREATE_SHADER        21
63
#define DRM_VMW_UNREF_SHADER         22
63
#define DRM_VMW_UNREF_SHADER         22
64
#define DRM_VMW_GB_SURFACE_CREATE    23
64
#define DRM_VMW_GB_SURFACE_CREATE    23
65
#define DRM_VMW_GB_SURFACE_REF       24
65
#define DRM_VMW_GB_SURFACE_REF       24
66
#define DRM_VMW_SYNCCPU              25
66
#define DRM_VMW_SYNCCPU              25
-
 
67
#define DRM_VMW_CREATE_EXTENDED_CONTEXT 26
Line 67... Line 68...
67
 
68
 
68
/*************************************************************************/
69
/*************************************************************************/
69
/**
70
/**
70
 * DRM_VMW_GET_PARAM - get device information.
71
 * DRM_VMW_GET_PARAM - get device information.
Line 86... Line 87...
86
#define DRM_VMW_PARAM_FIFO_HW_VERSION  6
87
#define DRM_VMW_PARAM_FIFO_HW_VERSION  6
87
#define DRM_VMW_PARAM_MAX_SURF_MEMORY  7
88
#define DRM_VMW_PARAM_MAX_SURF_MEMORY  7
88
#define DRM_VMW_PARAM_3D_CAPS_SIZE     8
89
#define DRM_VMW_PARAM_3D_CAPS_SIZE     8
89
#define DRM_VMW_PARAM_MAX_MOB_MEMORY   9
90
#define DRM_VMW_PARAM_MAX_MOB_MEMORY   9
90
#define DRM_VMW_PARAM_MAX_MOB_SIZE     10
91
#define DRM_VMW_PARAM_MAX_MOB_SIZE     10
-
 
92
#define DRM_VMW_PARAM_SCREEN_TARGET    11
-
 
93
#define DRM_VMW_PARAM_DX               12
Line 91... Line 94...
91
 
94
 
92
/**
95
/**
93
 * enum drm_vmw_handle_type - handle type for ref ioctls
96
 * enum drm_vmw_handle_type - handle type for ref ioctls
94
 *
97
 *
Line 294... Line 297...
294
 * @flags: Execbuf flags. None currently.
297
 * @flags: Execbuf flags. None currently.
295
 *
298
 *
296
 * Argument to the DRM_VMW_EXECBUF Ioctl.
299
 * Argument to the DRM_VMW_EXECBUF Ioctl.
297
 */
300
 */
Line 298... Line 301...
298
 
301
 
Line 299... Line 302...
299
#define DRM_VMW_EXECBUF_VERSION 1
302
#define DRM_VMW_EXECBUF_VERSION 2
300
 
303
 
301
struct drm_vmw_execbuf_arg {
304
struct drm_vmw_execbuf_arg {
302
	uint64_t commands;
305
	uint64_t commands;
303
	uint32_t command_size;
306
	uint32_t command_size;
304
	uint32_t throttle_us;
307
	uint32_t throttle_us;
305
	uint64_t fence_rep;
308
	uint64_t fence_rep;
-
 
309
	uint32_t version;
-
 
310
	uint32_t flags;
306
	uint32_t version;
311
	uint32_t context_handle;
Line 307... Line 312...
307
	uint32_t flags;
312
	uint32_t pad64;
308
};
313
};
309
 
314
 
Line 823... Line 828...
823
 * enum drm_vmw_shader_type - Shader types
828
 * enum drm_vmw_shader_type - Shader types
824
 */
829
 */
825
enum drm_vmw_shader_type {
830
enum drm_vmw_shader_type {
826
	drm_vmw_shader_type_vs = 0,
831
	drm_vmw_shader_type_vs = 0,
827
	drm_vmw_shader_type_ps,
832
	drm_vmw_shader_type_ps,
828
	drm_vmw_shader_type_gs
-
 
829
};
833
};
Line 830... Line 834...
830
 
834
 
831
 
835
 
Line 905... Line 909...
905
 * @multisample_count Future use. Set to 0.
909
 * @multisample_count Future use. Set to 0.
906
 * @autogen_filter    Future use. Set to 0.
910
 * @autogen_filter    Future use. Set to 0.
907
 * @buffer_handle     Buffer handle of backup buffer. SVGA3D_INVALID_ID
911
 * @buffer_handle     Buffer handle of backup buffer. SVGA3D_INVALID_ID
908
 *                    if none.
912
 *                    if none.
909
 * @base_size         Size of the base mip level for all faces.
913
 * @base_size         Size of the base mip level for all faces.
-
 
914
 * @array_size        Must be zero for non-DX hardware, and if non-zero
-
 
915
 *                    svga3d_flags must have proper bind flags setup.
910
 *
916
 *
911
 * Input argument to the  DRM_VMW_GB_SURFACE_CREATE Ioctl.
917
 * Input argument to the  DRM_VMW_GB_SURFACE_CREATE Ioctl.
912
 * Part of output argument for the DRM_VMW_GB_SURFACE_REF Ioctl.
918
 * Part of output argument for the DRM_VMW_GB_SURFACE_REF Ioctl.
913
 */
919
 */
914
struct drm_vmw_gb_surface_create_req {
920
struct drm_vmw_gb_surface_create_req {
Line 917... Line 923...
917
	uint32_t mip_levels;
923
	uint32_t mip_levels;
918
	enum drm_vmw_surface_flags drm_surface_flags;
924
	enum drm_vmw_surface_flags drm_surface_flags;
919
	uint32_t multisample_count;
925
	uint32_t multisample_count;
920
	uint32_t autogen_filter;
926
	uint32_t autogen_filter;
921
	uint32_t buffer_handle;
927
	uint32_t buffer_handle;
922
	uint32_t pad64;
928
	uint32_t array_size;
923
	struct drm_vmw_size base_size;
929
	struct drm_vmw_size base_size;
924
};
930
};
Line 925... Line 931...
925
 
931
 
926
/**
932
/**
Line 1057... Line 1063...
1057
	enum drm_vmw_synccpu_flags flags;
1063
	enum drm_vmw_synccpu_flags flags;
1058
	uint32_t handle;
1064
	uint32_t handle;
1059
	uint32_t pad64;
1065
	uint32_t pad64;
1060
};
1066
};
Line -... Line 1067...
-
 
1067
 
-
 
1068
/*************************************************************************/
-
 
1069
/**
-
 
1070
 * DRM_VMW_CREATE_EXTENDED_CONTEXT - Create a host context.
-
 
1071
 *
-
 
1072
 * Allocates a device unique context id, and queues a create context command
-
 
1073
 * for the host. Does not wait for host completion.
-
 
1074
 */
-
 
1075
enum drm_vmw_extended_context {
-
 
1076
	drm_vmw_context_legacy,
-
 
1077
	drm_vmw_context_dx
-
 
1078
};
-
 
1079
 
-
 
1080
/**
-
 
1081
 * union drm_vmw_extended_context_arg
-
 
1082
 *
-
 
1083
 * @req: Context type.
-
 
1084
 * @rep: Context identifier.
-
 
1085
 *
-
 
1086
 * Argument to the DRM_VMW_CREATE_EXTENDED_CONTEXT Ioctl.
-
 
1087
 */
-
 
1088
union drm_vmw_extended_context_arg {
-
 
1089
	enum drm_vmw_extended_context req;
-
 
1090
	struct drm_vmw_context_arg rep;
1061
 
1091
};