Add function to set an icd's dispatch table for subsequently created objects.
With layers the loaders dispatch table is used instead of the drivers dispatch
table. The gpu objects were reflecting this change but not subsequent objects.
Tell the icd driver about the loader's dispatch table so it will use it on
object creation rather than the default driver dispatch table.
diff --git a/icd/intel/intel.c b/icd/intel/intel.c
index 30ea9a1..db9c860 100644
--- a/icd/intel/intel.c
+++ b/icd/intel/intel.c
@@ -73,6 +73,13 @@
env = p + 1;
}
}
+
+ICD_EXPORT XGL_VOID xglSetDispatch(XGL_LAYER_DISPATCH_TABLE *dispatch, XGL_BOOL debug)
+{
+ struct icd_dispatch_table * disp = (struct icd_dispatch_table *) dispatch;
+ intelSetDispatch(disp, debug);
+}
+
ICD_EXPORT void * xglGetProcAddr(XGL_PHYSICAL_GPU gpu, const XGL_CHAR * pName)
{
return intelGetProcAddr(gpu, pName);