Commit 6b274d5c authored by Jordan Justen's avatar Jordan Justen

intel/vulkan: Support INTEL_NO_HW environment variable

Signed-off-by: Jordan Justen's avatarJordan Justen <jordan.l.justen@intel.com>
Reviewed-by: Samuel Iglesias Gonsálvez's avatarSamuel Iglesias Gonsálvez <siglesias@igalia.com>
Reviewed-by: D Scott Phillips's avatarScott D Phillips <scott.d.phillips@intel.com>
parent b9af0437
......@@ -294,6 +294,8 @@ anv_physical_device_init(struct anv_physical_device *device,
assert(strlen(path) < ARRAY_SIZE(device->path));
strncpy(device->path, path, ARRAY_SIZE(device->path));
device->no_hw = getenv("INTEL_NO_HW") != NULL;
device->chipset_id = anv_gem_get_param(fd, I915_PARAM_CHIPSET_ID);
if (!device->chipset_id) {
result = vk_error(VK_ERROR_INCOMPATIBLE_DRIVER);
......@@ -1368,6 +1370,7 @@ VkResult anv_CreateDevice(
device->_loader_data.loaderMagic = ICD_LOADER_MAGIC;
device->instance = physical_device->instance;
device->chipset_id = physical_device->chipset_id;
device->no_hw = physical_device->no_hw;
device->lost = false;
if (pAllocator)
......
......@@ -749,6 +749,7 @@ struct anv_physical_device {
struct anv_instance * instance;
uint32_t chipset_id;
bool no_hw;
char path[20];
const char * name;
struct gen_device_info info;
......@@ -852,6 +853,7 @@ struct anv_device {
struct anv_instance * instance;
uint32_t chipset_id;
bool no_hw;
struct gen_device_info info;
struct isl_device isl_dev;
int context_id;
......
......@@ -39,7 +39,7 @@ anv_device_execbuf(struct anv_device *device,
struct drm_i915_gem_execbuffer2 *execbuf,
struct anv_bo **execbuf_bos)
{
int ret = anv_gem_execbuffer(device, execbuf);
int ret = device->no_hw ? 0 : anv_gem_execbuffer(device, execbuf);
if (ret != 0) {
/* We don't know the real error. */
device->lost = true;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment