blob: 2daa22c22d5e51c6b3c9436c9d99dfa64f9397b9 [file] [log] [blame]
common/ provides helper and utility functions, as well as all XGL entry points
except xglInitAndEnumerateGpus. Hardware drivers are required to provide that
function, and to embed a "struct icd_dispatch_table *" as the first member of
XGL_PHYSICAL_GPU and all XGL_BASE_OBJECT.
Thread safety
We have these static variables
- common/icd.c:static struct icd icd;
- intel/gpu.c:static struct intel_gpu *intel_gpus;
They require that there is no other thread calling the ICD when these
functions are called
- xglInitAndEnumerateGpus
- xglDbgRegisterMsgCallback
- xglDbgUnregisterMsgCallback
- xglDbgSetGlobalOption