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 | }; |