From: Michał Winiarski Date: Wed, 1 Jul 2020 14:27:52 +0000 (+0200) Subject: drm/i915/guc: Expand guc_info debugfs with more information X-Git-Tag: v5.9-rc1~134^2~1^2~75 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ba06216d00275f07dc7750bd21e9c3385e1188aa;p=thirdparty%2Fkernel%2Flinux.git drm/i915/guc: Expand guc_info debugfs with more information The information about platform/driver/user view of GuC firmware usage currently requires user to either go through kernel log or parse the combination of "enable_guc" modparam and various debugfs entries. Let's keep things simple and add a "supported/used/wanted" matrix (already used internally by i915) in guc_info debugfs. Signed-off-by: Michał Winiarski Cc: Daniele Ceraolo Spurio Cc: Lukasz Fiedorowicz Cc: Michal Wajdeczko Reviewed-by: Lukasz Fiedorowicz Signed-off-by: Chris Wilson Link: https://patchwork.freedesktop.org/patch/msgid/20200701142752.419878-1-michal@hardline.pl --- diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc.c b/drivers/gpu/drm/i915/gt/uc/intel_guc.c index 861657897c0f9..446a41946f566 100644 --- a/drivers/gpu/drm/i915/gt/uc/intel_guc.c +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc.c @@ -733,19 +733,28 @@ int intel_guc_allocate_and_map_vma(struct intel_guc *guc, u32 size, */ void intel_guc_load_status(struct intel_guc *guc, struct drm_printer *p) { + struct intel_uc *uc = container_of(guc, struct intel_uc, guc); struct intel_gt *gt = guc_to_gt(guc); struct intel_uncore *uncore = gt->uncore; intel_wakeref_t wakeref; - if (!intel_guc_is_supported(guc)) { - drm_printf(p, "GuC not supported\n"); + drm_printf(p, "[guc] supported:%s wanted:%s used:%s\n", + yesno(intel_uc_supports_guc(uc)), + yesno(intel_uc_wants_guc(uc)), + yesno(intel_uc_uses_guc(uc))); + drm_printf(p, "[huc] supported:%s wanted:%s used:%s\n", + yesno(intel_uc_supports_huc(uc)), + yesno(intel_uc_wants_huc(uc)), + yesno(intel_uc_uses_huc(uc))); + drm_printf(p, "[submission] supported:%s wanted:%s used:%s\n", + yesno(intel_uc_supports_guc_submission(uc)), + yesno(intel_uc_wants_guc_submission(uc)), + yesno(intel_uc_uses_guc_submission(uc))); + + if (!intel_guc_is_supported(guc) || !intel_guc_is_wanted(guc)) return; - } - if (!intel_guc_is_wanted(guc)) { - drm_printf(p, "GuC disabled\n"); - return; - } + drm_puts(p, "\n"); intel_uc_fw_dump(&guc->fw, p);