On 31.01.2018 11:27, Jordan Justen wrote:
On 2018-01-30 23:17:06, Tapani Pälli wrote:
v2: adjust to change that moved cache from ctx to screen
Signed-off-by: Tapani Pälli <tapani.pa...@intel.com>
---
src/mesa/drivers/dri/i965/intel_screen.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/src/mesa/drivers/dri/i965/intel_screen.c
b/src/mesa/drivers/dri/i965/intel_screen.c
index e1e520bc89..2c445af1e4 100644
--- a/src/mesa/drivers/dri/i965/intel_screen.c
+++ b/src/mesa/drivers/dri/i965/intel_screen.c
@@ -36,6 +36,7 @@
#include "main/version.h"
#include "swrast/s_renderbuffer.h"
#include "util/ralloc.h"
+#include "util/disk_cache.h"
#include "brw_defines.h"
#include "brw_state.h"
#include "compiler/nir/nir.h"
@@ -1494,6 +1495,19 @@ brw_query_renderer_string(__DRIscreen *dri_screen,
return -1;
}
+static void
+brw_set_cache_funcs(__DRIscreen *dri_screen,
+ __DRIblobCacheSet set, __DRIblobCacheGet get)
+{
+ const struct intel_screen *const screen =
+ (struct intel_screen *) dri_screen->driverPrivate;
+
+ if (!screen->disk_cache)
+ return;
Could this cause us to fail tests if the disk cache is not enabled?
For example, if they test setting the functions to NULL, or set
multiple times?
No because those are handled already at EGL level. My Piglit API level
test passes even if disk cache is not created.
-Jordan
+
+ disk_cache_set_callbacks(screen->disk_cache, set, get);
+}
+
static const __DRI2rendererQueryExtension intelRendererQueryExtension = {
.base = { __DRI2_RENDERER_QUERY, 1 },
@@ -1505,6 +1519,11 @@ static const __DRIrobustnessExtension dri2Robustness = {
.base = { __DRI2_ROBUSTNESS, 1 }
};
+static const __DRI2blobExtension intelBlobExtension = {
+ .base = { __DRI2_BLOB, 1 },
+ .set_cache_funcs = brw_set_cache_funcs
+};
+
static const __DRIextension *screenExtensions[] = {
&intelTexBufferExtension.base,
&intelFenceExtension.base,
@@ -1513,6 +1532,7 @@ static const __DRIextension *screenExtensions[] = {
&intelRendererQueryExtension.base,
&dri2ConfigQueryExtension.base,
&dri2NoErrorExtension.base,
+ &intelBlobExtension.base,
NULL
};
@@ -1525,6 +1545,7 @@ static const __DRIextension *intelRobustScreenExtensions[] = {
&dri2ConfigQueryExtension.base,
&dri2Robustness.base,
&dri2NoErrorExtension.base,
+ &intelBlobExtension.base,
NULL
};
--
2.13.6
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev