From patchwork Sat Mar 8 00:03:16 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matt Roper X-Patchwork-Id: 3795651 Return-Path: X-Original-To: patchwork-intel-gfx@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 1AFB69F369 for ; Sat, 8 Mar 2014 00:02:42 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 4FBAE202E9 for ; Sat, 8 Mar 2014 00:02:41 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 6BC6B20274 for ; Sat, 8 Mar 2014 00:02:40 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id B0924FAD78; Fri, 7 Mar 2014 16:02:38 -0800 (PST) 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 ESMTP id 546CDFAD78; Fri, 7 Mar 2014 16:02:37 -0800 (PST) Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP; 07 Mar 2014 15:58:09 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.97,611,1389772800"; d="scan'208";a="496137336" Received: from mdroper-hswdev.fm.intel.com (HELO mdroper-hswdev) ([10.1.134.215]) by orsmga002.jf.intel.com with ESMTP; 07 Mar 2014 16:02:36 -0800 Received: from mattrope by mdroper-hswdev with local (Exim 4.82) (envelope-from ) id 1WM4jy-0004j3-9i; Fri, 07 Mar 2014 16:03:46 -0800 From: Matt Roper To: dri-devel@lists.freedesktop.org Date: Fri, 7 Mar 2014 16:03:16 -0800 Message-Id: <1394237002-18041-5-git-send-email-matthew.d.roper@intel.com> X-Mailer: git-send-email 1.8.5.1 In-Reply-To: <1394237002-18041-1-git-send-email-matthew.d.roper@intel.com> References: <1394237002-18041-1-git-send-email-matthew.d.roper@intel.com> Cc: Intel Graphics Development Subject: [Intel-gfx] [RFCv2 04/10] drm/i915: Restrict plane loops to only operate on overlay planes X-BeenThere: intel-gfx@lists.freedesktop.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: Intel graphics driver community testing & development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: intel-gfx-bounces@lists.freedesktop.org Errors-To: intel-gfx-bounces@lists.freedesktop.org X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Before we add additional types of planes to the DRM plane list, ensure that existing loops over all planes continue to operate only on "overlay" planes and ignore primary & cursor planes. Cc: Intel Graphics Development Signed-off-by: Matt Roper --- drivers/gpu/drm/i915/intel_display.c | 6 ++++++ drivers/gpu/drm/i915/intel_pm.c | 3 +++ 2 files changed, 9 insertions(+) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 6f15627..53f7c9c 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -3421,6 +3421,9 @@ static void intel_enable_planes(struct drm_crtc *crtc) struct intel_plane *intel_plane; list_for_each_entry(intel_plane, &dev->mode_config.plane_list, base.head) + if (intel_plane->base.type != DRM_PLANE_TYPE_OVERLAY) + continue; + if (intel_plane->pipe == pipe) intel_plane_restore(&intel_plane->base); } @@ -3432,6 +3435,9 @@ static void intel_disable_planes(struct drm_crtc *crtc) struct intel_plane *intel_plane; list_for_each_entry(intel_plane, &dev->mode_config.plane_list, base.head) + if (intel_plane->base.type != DRM_PLANE_TYPE_OVERLAY) + continue; + if (intel_plane->pipe == pipe) intel_plane_disable(&intel_plane->base); } diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c index c8347ae..4a534c4 100644 --- a/drivers/gpu/drm/i915/intel_pm.c +++ b/drivers/gpu/drm/i915/intel_pm.c @@ -2129,6 +2129,9 @@ static void ilk_compute_wm_parameters(struct drm_crtc *crtc, list_for_each_entry(plane, &dev->mode_config.plane_list, head) { struct intel_plane *intel_plane = to_intel_plane(plane); + if (plane->type != DRM_PLANE_TYPE_OVERLAY) + continue; + if (intel_plane->pipe == pipe) p->spr = intel_plane->wm;