OSDN Git Service

drm/i915/guc: Improve GuC load error reporting
authorJohn Harrison <John.C.Harrison@Intel.com>
Thu, 16 Mar 2023 22:06:31 +0000 (15:06 -0700)
committerJohn Harrison <John.C.Harrison@Intel.com>
Thu, 23 Mar 2023 22:49:49 +0000 (15:49 -0700)
commit411de2b5ac61a29e1e79db44539f69bb9b35a34d
tree2a294a4bb49f1710761ea0b12f9ae3883db30491
parent4d6d94ba8823a2f4e48c56ed33cb77061c1f425d
drm/i915/guc: Improve GuC load error reporting

There are multiple ways in which the GuC load can fail. The driver was
reporting the status register as is, but not everyone can read the
matrix unfiltered. So add decoding of the common error cases.

Also, remove the comment about interrupt based load completion
checking being not recommended. The interrupt was removed from the GuC
firmware some time ago so it is no longer an option anyway. While at
it, also abort the timeout if a known error code is reported. No need
to keep waiting if the GuC has already given up the load.

v2: Fix mis-matched case and confusing 'success' variable (Daniele).

Signed-off-by: John Harrison <John.C.Harrison@Intel.com>
Reviewed-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20230316220632.3312218-2-John.C.Harrison@Intel.com
drivers/gpu/drm/i915/gt/uc/abi/guc_errors_abi.h
drivers/gpu/drm/i915/gt/uc/intel_guc_fw.c
drivers/gpu/drm/i915/gt/uc/intel_guc_reg.h