From patchwork Tue Aug 20 23:05:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Summers, Stuart" X-Patchwork-Id: 11104783 Return-Path: Received: from mail.kernel.org (pdx-korg-mail-1.web.codeaurora.org [172.30.200.123]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id DCB341805 for ; Tue, 20 Aug 2019 23:04:57 +0000 (UTC) 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 mail.kernel.org (Postfix) with ESMTPS id C4F1720C01 for ; Tue, 20 Aug 2019 23:04:57 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C4F1720C01 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=intel-gfx-bounces@lists.freedesktop.org Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 3623A6E8A1; Tue, 20 Aug 2019 23:04:55 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTPS id 9C92C6E14A for ; Tue, 20 Aug 2019 23:04:53 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Aug 2019 16:04:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,410,1559545200"; d="scan'208";a="377944594" Received: from jssummer-xeon.ra.intel.com ([10.23.184.90]) by fmsmga005.fm.intel.com with ESMTP; 20 Aug 2019 16:04:52 -0700 From: Stuart Summers To: intel-gfx@lists.freedesktop.org Date: Tue, 20 Aug 2019 16:05:33 -0700 Message-Id: <20190820230544.170010-1-stuart.summers@intel.com> X-Mailer: git-send-email 2.22.0 MIME-Version: 1.0 Subject: [Intel-gfx] [PATCH 00/11] Refactor to expand subslice mask (rev 2) X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" Currently, the subslice_mask runtime parameter is stored as an array of subslices per slice. Expand the subslice mask array to better match what is presented to userspace through the I915_QUERY_TOPOLOGY_INFO ioctl. The index into this array is then calculated: slice * subslice stride + subslice index / 8 Note this is the second iteration of an original patch to implement the same. There are a couple of minor code changes based on changes since the first series was posted. Additionally, the original patch has been split into several smaller patches with more isolated changes based on review feedback in that first series. Link to the original series: https://patchwork.freedesktop.org/series/59742/ v2: Fix 32-bit build v3: Fix typo in haswell sseu info routine and fix SSEU workaround print v4: Merge patch to HSW in previous revision with patch to set subslice_mask for each platform and address feedback from Chris v5: No changes in code. Resending due to unrelated failures - confirmed no failures with trybot. v6: Minor change in intel_workarounds.c to use the new helper function v7: Split set sublice function into multiple more manageable patches And add a couple of GEM_BUG_ON checks requested by Chris Stuart Summers (11): drm/i915: Use variable for debugfs device status drm/i915: Add function to set SSEU info per platform drm/i915: Add subslice stride runtime parameter drm/i915: Add EU stride runtime parameter drm/i915: Use local variables for subslice_mask for device info drm/i915: Add function to set subslices drm/i915: Use subslice stride to set subslices for a given slice drm/i915: Add function to determine if a slice has a subslice drm/i915: Refactor instdone loops on new subslice functions drm/i915: Add new function to copy subslices for a slice drm/i915: Expand subslice mask drivers/gpu/drm/i915/gt/intel_engine_cs.c | 3 +- drivers/gpu/drm/i915/gt/intel_engine_types.h | 31 +++-- drivers/gpu/drm/i915/gt/intel_hangcheck.c | 3 +- drivers/gpu/drm/i915/gt/intel_sseu.c | 52 +++++++- drivers/gpu/drm/i915/gt/intel_sseu.h | 30 ++++- drivers/gpu/drm/i915/gt/intel_workarounds.c | 5 +- drivers/gpu/drm/i915/i915_debugfs.c | 49 +++++--- drivers/gpu/drm/i915/i915_gpu_error.c | 5 +- drivers/gpu/drm/i915/i915_query.c | 10 +- drivers/gpu/drm/i915/intel_device_info.c | 122 +++++++++---------- 10 files changed, 196 insertions(+), 114 deletions(-)