From patchwork Thu Feb 21 00:50:26 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Daniel Vetter X-Patchwork-Id: 2170171 Return-Path: X-Original-To: patchwork-intel-gfx@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by patchwork1.kernel.org (Postfix) with ESMTP id C26D73FDF1 for ; Thu, 21 Feb 2013 01:08:32 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 8B16EE684F for ; Wed, 20 Feb 2013 17:08:32 -0800 (PST) X-Original-To: intel-gfx@lists.freedesktop.org Delivered-To: intel-gfx@lists.freedesktop.org Received: from mail-ea0-f178.google.com (mail-ea0-f178.google.com [209.85.215.178]) by gabe.freedesktop.org (Postfix) with ESMTP id B1DBCE5FE4 for ; Wed, 20 Feb 2013 16:51:39 -0800 (PST) Received: by mail-ea0-f178.google.com with SMTP id a14so3778849eaa.37 for ; Wed, 20 Feb 2013 16:51:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=x-received:from:to:cc:subject:date:message-id:x-mailer:in-reply-to :references; bh=5EJ4FsYztz7ap7r8mYEq2RRHELmNcykN5FuEGf1B1jg=; b=eG3aN1Wc3z6JsFCAD/GLrDbTa5L9kw4hW1IEz6fXBmgno8Z2Spz8a16whlkmCjwdez iPdEAcFYj8wa0BMWLShMYHqeHqTYVCZlORS6tEgzmOtH3mbbWxwjdZNqy0911jQWVyl9 24ndI1teOP1HP/TLIxVKg+zjpNJ2yCbBbjqLM= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:from:to:cc:subject:date:message-id:x-mailer:in-reply-to :references:x-gm-message-state; bh=5EJ4FsYztz7ap7r8mYEq2RRHELmNcykN5FuEGf1B1jg=; b=TdBgvDi/lKujQyC5jW92vBpJsKonGAsP8MqPt5kKkjoL7/N6BG1KbSX0quBngaS2ch k+3JHgIz3sF+hatmsN383HmzlB138YfRy2H7yW+atnjCbCu6+NDAC7DOMNdDawO4xHjd aK4cFxiV2wnv6rTKDudE7BvrnWrL7bpr8mkiLGkd/mbZ9ABripJwr/8tjxPW14ZcLi7S m5WUGM5RyUtPJ/+tCIkL1p/z5jQKf/27yyWGLna9mWZujJm5+gdV6bjcCFFJ7+cFNcKb Vb6lZP4R0LTEsEnoD6nZaJ6tDOdV0+aMUkweuyHnXxZqCxKJWvQr7GEtaaK113rOJZgs F6bg== X-Received: by 10.14.211.132 with SMTP id w4mr74291503eeo.36.1361407898947; Wed, 20 Feb 2013 16:51:38 -0800 (PST) Received: from bremse.ffwll.local (178-83-130-250.dynamic.hispeed.ch. [178.83.130.250]) by mx.google.com with ESMTPS id d47sm53318783eem.9.2013.02.20.16.51.37 (version=TLSv1 cipher=RC4-SHA bits=128/128); Wed, 20 Feb 2013 16:51:38 -0800 (PST) From: Daniel Vetter To: Intel Graphics Development Date: Thu, 21 Feb 2013 01:50:26 +0100 Message-Id: <1361407828-2419-35-git-send-email-daniel.vetter@ffwll.ch> X-Mailer: git-send-email 1.7.11.4 In-Reply-To: <1361407828-2419-1-git-send-email-daniel.vetter@ffwll.ch> References: <1361407828-2419-1-git-send-email-daniel.vetter@ffwll.ch> X-Gm-Message-State: ALoCoQndJ6dw3KDhqSdQTlyMuBZ4DPqKaqQ5a0KjerU0YJsxuhs0JQrepLV1sdTw2tbIEu/QzQ3x Cc: Daniel Vetter Subject: [Intel-gfx] [PATCH 34/36] drm/i915: consolidate pch pll computations a bit 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+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org Errors-To: intel-gfx-bounces+patchwork-intel-gfx=patchwork.kernel.org@lists.freedesktop.org We need the dpll/fp/fp2 values only when we need a pch pll. So move them together with the code to acquire such a pll. Signed-off-by: Daniel Vetter --- drivers/gpu/drm/i915/intel_display.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 58f1e35..a4e9bde 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -5285,7 +5285,7 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc, int plane = intel_crtc->plane; int num_connectors = 0; intel_clock_t clock, reduced_clock; - u32 dpll, fp = 0, fp2 = 0; + u32 dpll = 0, fp = 0, fp2 = 0; bool ok, has_reduced_clock = false; bool is_lvds = false; struct intel_encoder *encoder; @@ -5324,13 +5324,6 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc, /* Ensure that the cursor is valid for the new mode before changing... */ intel_crtc_update_cursor(crtc, true); - fp = clock.n << 16 | clock.m1 << 8 | clock.m2; - if (has_reduced_clock) - fp2 = reduced_clock.n << 16 | reduced_clock.m1 << 8 | - reduced_clock.m2; - - dpll = ironlake_compute_dpll(intel_crtc, &clock, fp); - DRM_DEBUG_KMS("Mode for pipe %d:\n", pipe); drm_mode_debug_printmodeline(mode); @@ -5338,6 +5331,13 @@ static int ironlake_crtc_mode_set(struct drm_crtc *crtc, if (intel_crtc->config.has_pch_encoder) { struct intel_pch_pll *pll; + fp = clock.n << 16 | clock.m1 << 8 | clock.m2; + if (has_reduced_clock) + fp2 = reduced_clock.n << 16 | reduced_clock.m1 << 8 | + reduced_clock.m2; + + dpll = ironlake_compute_dpll(intel_crtc, &clock, fp); + pll = intel_get_pch_pll(intel_crtc, dpll, fp); if (pll == NULL) { DRM_DEBUG_DRIVER("failed to find PLL for pipe %d\n",