drm/i915/guc: Print status register when waiting for GuC to load
authorJohn Harrison <John.C.Harrison@Intel.com>
Tue, 2 May 2023 23:40:03 +0000 (16:40 -0700)
committerJohn Harrison <John.C.Harrison@Intel.com>
Fri, 5 May 2023 22:33:54 +0000 (15:33 -0700)
If the GuC load is taking an excessively long time, the wait loop
currently prints the GT frequency. Extend that to include the GuC
status as well so we can see if the GuC is actually making progress or
not.

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/20230502234007.1762014-3-John.C.Harrison@Intel.com
drivers/gpu/drm/i915/gt/uc/intel_guc_fw.c

index 0ff088a..364d0d5 100644 (file)
@@ -191,8 +191,10 @@ static int guc_wait_ucode(struct intel_guc *guc)
                if (!ret || !success)
                        break;
 
-               guc_dbg(guc, "load still in progress, count = %d, freq = %dMHz\n",
-                       count, intel_rps_read_actual_frequency(&uncore->gt->rps));
+               guc_dbg(guc, "load still in progress, count = %d, freq = %dMHz, status = 0x%08X [0x%02X/%02X]\n",
+                       count, intel_rps_read_actual_frequency(&uncore->gt->rps), status,
+                       REG_FIELD_GET(GS_BOOTROM_MASK, status),
+                       REG_FIELD_GET(GS_UKERNEL_MASK, status));
        }
        after = ktime_get();
        delta = ktime_sub(after, before);