Commit ba06216d authored by Michał Winiarski's avatar Michał Winiarski Committed by Chris Wilson
Browse files

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: default avatarMichał Winiarski <michal.winiarski@intel.com>
Cc: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Cc: Lukasz Fiedorowicz <lukasz.fiedorowicz@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Reviewed-by: default avatarLukasz Fiedorowicz <lukasz.fiedorowicz@intel.com>
Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20200701142752.419878-1-michal@hardline.pl
parent 1fe541cc
Loading
Loading
Loading
Loading
+16 −7
Original line number Diff line number Diff line
@@ -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);