projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gallium: add PIPE_CAP_MAX_SHADER_PATCH_VARYINGS
[mesa.git]
/
src
/
gallium
/
drivers
/
i915
/
i915_screen.c
diff --git
a/src/gallium/drivers/i915/i915_screen.c
b/src/gallium/drivers/i915/i915_screen.c
index dc76464f1f6a59e9020eb071f8ab406f032ac637..6083687962fdc5bb6778caccfd1f7aac5f083adb 100644
(file)
--- a/
src/gallium/drivers/i915/i915_screen.c
+++ b/
src/gallium/drivers/i915/i915_screen.c
@@
-54,6
+54,12
@@
i915_get_vendor(struct pipe_screen *screen)
return "Mesa Project";
}
return "Mesa Project";
}
+static const char *
+i915_get_device_vendor(struct pipe_screen *screen)
+{
+ return "Intel";
+}
+
static const char *
i915_get_name(struct pipe_screen *screen)
{
static const char *
i915_get_name(struct pipe_screen *screen)
{
@@
-158,6
+164,8
@@
i915_get_shader_param(struct pipe_screen *screen, unsigned shader, enum pipe_sha
case PIPE_SHADER_CAP_DOUBLES:
case PIPE_SHADER_CAP_TGSI_DROUND_SUPPORTED:
case PIPE_SHADER_CAP_TGSI_DFRACEXP_DLDEXP_SUPPORTED:
case PIPE_SHADER_CAP_DOUBLES:
case PIPE_SHADER_CAP_TGSI_DROUND_SUPPORTED:
case PIPE_SHADER_CAP_TGSI_DFRACEXP_DLDEXP_SUPPORTED:
+ case PIPE_SHADER_CAP_TGSI_FMA_SUPPORTED:
+ case PIPE_SHADER_CAP_TGSI_ANY_INOUT_DECL_RANGE:
return 0;
default:
debug_printf("%s: Unknown cap %u.\n", __FUNCTION__, cap);
return 0;
default:
debug_printf("%s: Unknown cap %u.\n", __FUNCTION__, cap);
@@
-234,6
+242,8
@@
i915_get_param(struct pipe_screen *screen, enum pipe_cap cap)
case PIPE_CAP_POLYGON_OFFSET_CLAMP:
case PIPE_CAP_MULTISAMPLE_Z_RESOLVE:
case PIPE_CAP_RESOURCE_FROM_USER_MEMORY:
case PIPE_CAP_POLYGON_OFFSET_CLAMP:
case PIPE_CAP_MULTISAMPLE_Z_RESOLVE:
case PIPE_CAP_RESOURCE_FROM_USER_MEMORY:
+ case PIPE_CAP_DEVICE_RESET_STATUS_QUERY:
+ case PIPE_CAP_MAX_SHADER_PATCH_VARYINGS:
return 0;
case PIPE_CAP_MAX_DUAL_SOURCE_RENDER_TARGETS:
return 0;
case PIPE_CAP_MAX_DUAL_SOURCE_RENDER_TARGETS:
@@
-453,15
+463,6
@@
i915_fence_reference(struct pipe_screen *screen,
is->iws->fence_reference(is->iws, ptr, fence);
}
is->iws->fence_reference(is->iws, ptr, fence);
}
-static boolean
-i915_fence_signalled(struct pipe_screen *screen,
- struct pipe_fence_handle *fence)
-{
- struct i915_screen *is = i915_screen(screen);
-
- return is->iws->fence_signalled(is->iws, fence) == 1;
-}
-
static boolean
i915_fence_finish(struct pipe_screen *screen,
struct pipe_fence_handle *fence,
static boolean
i915_fence_finish(struct pipe_screen *screen,
struct pipe_fence_handle *fence,
@@
-469,6
+470,9
@@
i915_fence_finish(struct pipe_screen *screen,
{
struct i915_screen *is = i915_screen(screen);
{
struct i915_screen *is = i915_screen(screen);
+ if (!timeout)
+ return is->iws->fence_signalled(is->iws, fence) == 1;
+
return is->iws->fence_finish(is->iws, fence) == 1;
}
return is->iws->fence_finish(is->iws, fence) == 1;
}
@@
-547,6
+551,7
@@
i915_screen_create(struct i915_winsys *iws)
is->base.get_name = i915_get_name;
is->base.get_vendor = i915_get_vendor;
is->base.get_name = i915_get_name;
is->base.get_vendor = i915_get_vendor;
+ is->base.get_device_vendor = i915_get_device_vendor;
is->base.get_param = i915_get_param;
is->base.get_shader_param = i915_get_shader_param;
is->base.get_paramf = i915_get_paramf;
is->base.get_param = i915_get_param;
is->base.get_shader_param = i915_get_shader_param;
is->base.get_paramf = i915_get_paramf;
@@
-555,7
+560,6
@@
i915_screen_create(struct i915_winsys *iws)
is->base.context_create = i915_create_context;
is->base.fence_reference = i915_fence_reference;
is->base.context_create = i915_create_context;
is->base.fence_reference = i915_fence_reference;
- is->base.fence_signalled = i915_fence_signalled;
is->base.fence_finish = i915_fence_finish;
i915_init_screen_resource_functions(is);
is->base.fence_finish = i915_fence_finish;
i915_init_screen_resource_functions(is);