From patchwork Mon Nov 22 23:03:55 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alan Previn X-Patchwork-Id: 12633089 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 1179AC433EF for ; Mon, 22 Nov 2021 23:03:01 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 047AB89ED6; Mon, 22 Nov 2021 23:02:54 +0000 (UTC) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by gabe.freedesktop.org (Postfix) with ESMTPS id 94FA489ED6; Mon, 22 Nov 2021 23:02:52 +0000 (UTC) X-IronPort-AV: E=McAfee;i="6200,9189,10176"; a="215612615" X-IronPort-AV: E=Sophos;i="5.87,255,1631602800"; d="scan'208";a="215612615" Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Nov 2021 15:02:51 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.87,255,1631602800"; d="scan'208";a="674237054" Received: from aalteres-desk.fm.intel.com ([10.80.57.53]) by orsmga005.jf.intel.com with ESMTP; 22 Nov 2021 15:02:51 -0800 From: Alan Previn To: intel-gfx@lists.freedesktop.org Date: Mon, 22 Nov 2021 15:03:55 -0800 Message-Id: <20211122230402.2023576-1-alan.previn.teres.alexis@intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Subject: [Intel-gfx] [RFC 0/7] Add GuC Error Capture Support X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: dri-devel@lists.freedesktop.org, Alan Previn Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" This series: 1. Supports the roll out of an upcoming GuC feature to enable error-state-capture that allows the driver to register lists of MMIO registers that GuC will report during a GuC triggered engine-reset event. 2. Updates the ADS blob creation to register lists of global and engine registers with GuC. 3. Defines tables of register lists that are global or engine class or engine instance in scope. 4. Separates GuC log-buffer access locks for relay logging vs the new region for the error state capture data. 5. Allocates an additional interim circular buffer store to copy snapshots of new GuC reported error-state-capture dumps in response to the G2H notification. 6. Connects the i915_gpu_coredump reporting function to the GuC error capture module to print all GuC error state capture dumps that is reported. Alan Previn (6): drm/i915/guc: Update GuC ADS size for error capture lists drm/i915/guc: Populate XE_LP register lists for GuC error state capture. drm/i915/guc: Add GuC's error state capture output structures. drm/i915/guc: Update GuC's log-buffer-state access for error capture. drm/i915/guc: Copy new GuC error capture logs upon G2H notification. drm/i915/guc: Print the GuC error capture output register list. John Harrison (1): drm/i915/guc: Add basic support for error capture lists drivers/gpu/drm/i915/Makefile | 1 + drivers/gpu/drm/i915/gt/intel_engine_cs.c | 4 +- .../gpu/drm/i915/gt/uc/abi/guc_actions_abi.h | 8 + drivers/gpu/drm/i915/gt/uc/intel_guc.c | 52 +- drivers/gpu/drm/i915/gt/uc/intel_guc.h | 9 + drivers/gpu/drm/i915/gt/uc/intel_guc_ads.c | 197 +++- .../gpu/drm/i915/gt/uc/intel_guc_capture.c | 999 ++++++++++++++++++ .../gpu/drm/i915/gt/uc/intel_guc_capture.h | 107 ++ drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c | 3 + drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h | 40 +- drivers/gpu/drm/i915/gt/uc/intel_guc_log.c | 141 ++- drivers/gpu/drm/i915/gt/uc/intel_guc_log.h | 21 +- .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 22 + drivers/gpu/drm/i915/i915_gpu_error.c | 53 +- drivers/gpu/drm/i915/i915_gpu_error.h | 5 + 15 files changed, 1581 insertions(+), 81 deletions(-) create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_capture.c create mode 100644 drivers/gpu/drm/i915/gt/uc/intel_guc_capture.h