From patchwork Mon Jun 24 20:31:48 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Daniele Ceraolo Spurio X-Patchwork-Id: 11014087 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3EBEC14BB for ; Mon, 24 Jun 2019 20:32:14 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2F70628BC6 for ; Mon, 24 Jun 2019 20:32:14 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 19CC928AF9; Mon, 24 Jun 2019 20:32:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id BA42A28AF9 for ; Mon, 24 Jun 2019 20:32:13 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2464189DD3; Mon, 24 Jun 2019 20:32:13 +0000 (UTC) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by gabe.freedesktop.org (Postfix) with ESMTPS id 66C0189DD3 for ; Mon, 24 Jun 2019 20:32:12 +0000 (UTC) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga004.fm.intel.com ([10.253.24.48]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Jun 2019 13:32:11 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.63,413,1557212400"; d="scan'208";a="184241347" Received: from dceraolo-linux.fm.intel.com ([10.1.27.145]) by fmsmga004.fm.intel.com with ESMTP; 24 Jun 2019 13:32:11 -0700 From: Daniele Ceraolo Spurio To: intel-gfx@lists.freedesktop.org Date: Mon, 24 Jun 2019 13:31:48 -0700 Message-Id: <20190624203152.13725-1-daniele.ceraolospurio@intel.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [Intel-gfx] [RFC 0/4] Display uncore 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: , Cc: Jani Nikula Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" X-Virus-Scanned: ClamAV using ClamSMTP More focused proposal for display/GT uncore split. A few notes/considerations: - I've copied the MMIO ranges check in patch 3 from a patch from Ville that did something similar in regards to splitting GT/DE register access. I'm seeing some check failures on gen 3 and 4 [1], so I'd appreciate it if someone could double check those ranges since I'm not familiar with those gens. For the same reason I don't expect BAT to pass. - Instead of doing a range check to find erroneous accesses, I considered using a new structure for display registers (wrapping i915_reg_t) and therefore force a compile-time check, but the sheer amount of register definitions that would need updating makes this hard to merge together with the switch to the new functions without hitting conflicts. If there is interest in this option, I'll put something out after all the display register accesses have transitioned to the new accessors. - When MMIO debug is enabled, the accesses from GT and DE are still serialized because the HW debug infrastructure is shared. Since our testing defaults the MMIO debug on, we won't really test parallel accesses. After the series settles down I'm going to submit a CI run with MMIO debug off, but maybe we should update some tests to run with MMIO debug disabled. Thoughts? Cc: Ville Syrjälä Cc: Jani Nikula Cc: Chris Wilson Cc: Tvrtko Ursulin [1] https://intel-gfx-ci.01.org/tree/drm-tip/Trybot_4491/? Daniele Ceraolo Spurio (4): drm/i915: split out uncore_mmio_debug drm/i915: rework mmio debug stop/start drm/i915: introduce display_uncore drm/i915: convert intel_hdmi to display reg accessors drivers/gpu/drm/i915/display/intel_hdmi.c | 278 ++++++++++------------ drivers/gpu/drm/i915/i915_debugfs.c | 2 +- drivers/gpu/drm/i915/i915_drv.c | 20 +- drivers/gpu/drm/i915/i915_drv.h | 59 +++++ drivers/gpu/drm/i915/intel_uncore.c | 100 +++++--- drivers/gpu/drm/i915/intel_uncore.h | 18 +- 6 files changed, 292 insertions(+), 185 deletions(-)