From patchwork Thu Jun 18 20:50:51 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Gustavo Padovan X-Patchwork-Id: 6640471 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 22725C0020 for ; Thu, 18 Jun 2015 20:51:05 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 487A720877 for ; Thu, 18 Jun 2015 20:51:04 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id EAC5E2086D for ; Thu, 18 Jun 2015 20:51:02 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 396AE6E380; Thu, 18 Jun 2015 13:51:02 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mail-qk0-f176.google.com (mail-qk0-f176.google.com [209.85.220.176]) by gabe.freedesktop.org (Postfix) with ESMTP id B8E4C6E380 for ; Thu, 18 Jun 2015 13:51:00 -0700 (PDT) Received: by qkbp125 with SMTP id p125so46455127qkb.2 for ; Thu, 18 Jun 2015 13:51:00 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=from:to:cc:subject:date:message-id; bh=Yrpr+RFgJnccAtpfrXga7MrdLRlLG0X4DxLhhHqzWJk=; b=MR6NIaK4MLRiuqtCB/0juj7K0WPxxLU155oI3bHC4nbNM4GnN2WVMEX6cLjr1Sr1Zk AuZ2SJGoj/bU4mK+0DqTcCvIixLixdl3DD0/QFS02Lq0kzVmRQDXk1EfnAbh9jL/8GeS R4lrwqQBYglhuQYA0hYvJzZ9uhOGH/ioFcLA5RHVwqPQL3m8DOP++SqcEWojpiWP0Ydu BU59Dy321H+z3xe1XhqRJdA7xwT9tzGevuNtFJZrohbHVcUSer1RyeyeIVxdB7JFK9/l hnzonmP3an6iG7Zq+6WBTMWJMfrTHlp1ck+GwMP58ZM18CqP4OatmLz41kUHOiQ+TkkS FALQ== X-Received: by 10.55.21.219 with SMTP id 88mr28660692qkv.96.1434660660241; Thu, 18 Jun 2015 13:51:00 -0700 (PDT) Received: from jade.localdomain ([179.111.136.2]) by mx.google.com with ESMTPSA id c88sm1616071qge.26.2015.06.18.13.50.56 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 18 Jun 2015 13:50:59 -0700 (PDT) From: Gustavo Padovan To: linux-samsung-soc@vger.kernel.org Subject: [PATCH 1/2] drm/exynos: calculate vrefresh instead of use a fixed value Date: Thu, 18 Jun 2015 17:50:51 -0300 Message-Id: <1434660652-20367-1-git-send-email-gustavo@padovan.org> X-Mailer: git-send-email 2.1.0 Cc: tjakobi@math.uni-bielefeld.de, Gustavo Padovan , dri-devel@lists.freedesktop.org X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.5 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, 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 From: Gustavo Padovan When mode's vrefresh is zero we should ask DRM core to calculate vrefresh for us so we can get the correct value instead of relying on fixed value defined in a macro. But if vrefresh is still zero we should fail the update. Suggested-by: Daniel Stone Signed-off-by: Gustavo Padovan --- drivers/gpu/drm/exynos/exynos_drm_fimd.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c index 1e3bb72..7ba348e 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c @@ -41,7 +41,6 @@ * CPU Interface. */ -#define FIMD_DEFAULT_FRAMERATE 60 #define MIN_FB_WIDTH_FOR_16WORD_BURST 128 /* position control register for hardware window 0, 2 ~ 4.*/ @@ -403,7 +402,9 @@ static bool fimd_mode_fixup(struct exynos_drm_crtc *crtc, struct drm_display_mode *adjusted_mode) { if (adjusted_mode->vrefresh == 0) - adjusted_mode->vrefresh = FIMD_DEFAULT_FRAMERATE; + adjusted_mode->vrefresh = drm_mode_vrefresh(mode); + if (adjusted_mode->vrefresh == 0) + return false; return true; }