drm/i915/guc: Fix Gen9 GuC loading workarounds
authorMichal Wajdeczko <michal.wajdeczko@intel.com>
Tue, 16 Oct 2018 08:59:30 +0000 (08:59 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 17 Oct 2018 08:08:00 +0000 (09:08 +0100)
In commit 4502e9ec820d ("drm/i915/uc: Unify firmware loading") we
stopped converting errors detected during firmware transfer into
-EAGAIN and this indirectly killed our workarounds for Gen9 GuC.
Reactivate those workarounds by looking for actual -ETIMEDOUT error.

Testcase: igt@drv_selftest@live_hangcheck
Reported-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
References: commit 4502e9ec820d ("drm/i915/uc: Unify firmware loading")

Signed-off-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20181016085931.23532-1-michal.wajdeczko@intel.com
drivers/gpu/drm/i915/intel_uc.c

index b1b3e81b6e241568e4d54986062fb8a2ea7a5b7d..b34c318b238dad37a027aad52b5a920e2c73f3dc 100644 (file)
@@ -376,7 +376,7 @@ int intel_uc_init_hw(struct drm_i915_private *i915)
 
                intel_guc_init_params(guc);
                ret = intel_guc_fw_upload(guc);
-               if (ret == 0 || ret != -EAGAIN)
+               if (ret == 0 || ret != -ETIMEDOUT)
                        break;
 
                DRM_DEBUG_DRIVER("GuC fw load failed: %d; will reset and "