From patchwork Wed Dec 14 13:34:36 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tomeu Vizoso X-Patchwork-Id: 88025 Delivered-To: patch@linaro.org Received: by 10.140.20.101 with SMTP id 92csp197700qgi; Wed, 14 Dec 2016 05:35:45 -0800 (PST) X-Received: by 10.84.209.143 with SMTP id y15mr207347627plh.180.1481722545046; Wed, 14 Dec 2016 05:35:45 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id a5si52796115pgh.296.2016.12.14.05.35.44; Wed, 14 Dec 2016 05:35:45 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE dis=NONE) header.from=collabora.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755996AbcLNNfe (ORCPT + 25 others); Wed, 14 Dec 2016 08:35:34 -0500 Received: from mail-qk0-f194.google.com ([209.85.220.194]:33125 "EHLO mail-qk0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755966AbcLNNfT (ORCPT ); Wed, 14 Dec 2016 08:35:19 -0500 Received: by mail-qk0-f194.google.com with SMTP id x190so2898873qkb.0 for ; Wed, 14 Dec 2016 05:35:18 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=y5gXJwK+lfL/JR4UqEC2hb1eE0SjUfi6Yxu8zgiKAfM=; b=QO3gr6nTKSMuslapiARrEwGBLp3aIe00GgRHew4v1X8JnNgR0V0KNahX1n6pwfRd7z T9fexHRgD/JDBYbtOwdMdHbfMRv/WvWOc6mYckxAsmwF9iT9Jf0QBn0uiO8ipeq7sdNA EdDK733T2h4tip5aprPHr1rdQ6RvWlvQdKgeDJCT3l0hx+Ml82An2qvVRv603rPAnV0o es2d3TACPStvGHO8qOTS94VoZSHrebotwgrDdwGAjIKuD5Bw4bhZMzsDUyQNfHG7ctM0 q+/zUY1Vi1KuEG1tM5I+PI11lHFIzcyOdOaBpJ9DaHKEK9jioITbGDcwpHeqonMT2NL+ s6tw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=y5gXJwK+lfL/JR4UqEC2hb1eE0SjUfi6Yxu8zgiKAfM=; b=T7NxUFj396aSqdt0kZpjyyNm6Bd0kcxAzttqQTOb0eYMbmKLSl8bgponJK4phI08ai kxDtfWvQL/AZbqCHxGXAEBdYNT4rv1UD7G/6AYCGopPh8gw+pq8YFYA699chrhrNU5rx x/s5YumCFBEulPd7CIwM9OUd8SUcxfIZ56GOKPJuPHINPgivaE7xCPmJuqeQ1vtHDtwO +qbRwrtNCuHnjo3B4zn6/7cfcbZEaQm/2nsDTECcrulfqwrPgUYmmwLwM8hagBT+7q4+ WCOg/B0KrH9rfDoDKhiWE8kzl7EEIghMhs8+4u+AWrf6IJ/EKQaOb/ly8TS2T6L2ntG/ bi8g== X-Gm-Message-State: AKaTC02mgMEeeKUKtuep/NRsefhP+KwyIXqH7nNxBoSm8PoPdRdOTI+lOqBXBQS1qnjXxw== X-Received: by 10.28.225.138 with SMTP id y132mr7265454wmg.52.1481722518323; Wed, 14 Dec 2016 05:35:18 -0800 (PST) Received: from cizrna.lan ([109.72.12.226]) by smtp.gmail.com with ESMTPSA id 63sm7692000wmg.2.2016.12.14.05.35.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 14 Dec 2016 05:35:17 -0800 (PST) From: Tomeu Vizoso To: linux-kernel@vger.kernel.org Cc: =?UTF-8?q?Ville=20Syrj=C3=A4l=C3=A4?= , Sean Paul , Thierry Reding , Emil Velikov , Daniel Vetter , Jani Nikula , Tomeu Vizoso , intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, David Airlie Subject: [PATCH v13 3/3] drm/i915: Put "cooked" vlank counters in frame CRC lines Date: Wed, 14 Dec 2016 14:34:36 +0100 Message-Id: <1481722476-29964-4-git-send-email-tomeu.vizoso@collabora.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1481722476-29964-1-git-send-email-tomeu.vizoso@collabora.com> References: <1481722476-29964-1-git-send-email-tomeu.vizoso@collabora.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Use drm_accurate_vblank_count so we have the full 32 bit to represent the frame counter and userspace has a simpler way of knowing when the counter wraps around. Signed-off-by: Tomeu Vizoso Reviewed-by: Emil Velikov --- drivers/gpu/drm/i915/i915_irq.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) -- 2.7.4 diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c index 24b7620c1005..c0e3d1c1b4f0 100644 --- a/drivers/gpu/drm/i915/i915_irq.c +++ b/drivers/gpu/drm/i915/i915_irq.c @@ -1557,7 +1557,6 @@ static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv, struct drm_driver *driver = dev_priv->drm.driver; uint32_t crcs[5]; int head, tail, ret; - u32 frame; spin_lock(&pipe_crc->lock); if (pipe_crc->source) { @@ -1612,8 +1611,9 @@ static void display_pipe_crc_irq_handler(struct drm_i915_private *dev_priv, crcs[2] = crc2; crcs[3] = crc3; crcs[4] = crc4; - frame = driver->get_vblank_counter(&dev_priv->drm, pipe); - ret = drm_crtc_add_crc_entry(&crtc->base, true, frame, crcs); + ret = drm_crtc_add_crc_entry(&crtc->base, true, + drm_accurate_vblank_count(&crtc->base), + crcs); if (!ret) wake_up_interruptible(&crtc->base.crc.wq); }