Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp864808imu; Thu, 22 Nov 2018 06:31:59 -0800 (PST) X-Google-Smtp-Source: AFSGD/XCVbfwdGLA1g6Jk36yjJ/8dhl45d5bm8NRfN+StxeQLbT+TNjz+478LitT/8JIHAQe2X/b X-Received: by 2002:a63:3858:: with SMTP id h24mr9991754pgn.300.1542897119316; Thu, 22 Nov 2018 06:31:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542897119; cv=none; d=google.com; s=arc-20160816; b=AYQfSj/3mkdJSe2dsYMI4pa1SOqbgbOqfLHSILrPq1IxKR56gB2Nc15efcAPgzPC9l JFgvWZhCWMlK6H8eB5bKpbh55mXeVxv+RVdaeFRFdfV3/lRwDVz+UVVF4Fp8TeiCepH/ MVIZh6IRQglfSXRAtOXmun10l2Ge4LJEpsq7vz7wbGUDNG6TH7WDFxSp/XANA26WeDcB wr4dGOtf6p6wWOQSam4PWMRyMLgGgZJe4enzx0e94nr3h4vC0nHTTM1dKDSLBx7i6aQN yY24PNo/o9LpkApDT5YJeNldBKKCzfF7saii/8jLA088wA7onrHcjTYU23a2w5rrJn8P SQHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature; bh=kvkrNknnnYyDCwzgoDOzZl41ciugn9Tt2keFs4A91m0=; b=1LD3LwBs1mFGxqkOoISIqejtvUvD9QlvLMYA+7H50xt9Jy75VZT806hgYtHUI4mPbh BrP24ONPRcGProneSCWUSEvPlyzZhT9GWn+qF2/PkP1c9egknl0qXjHgUkSs8o4tmgsM yyHbJmp7c+kkJGJPFpxnCrAfZuuI6vFhIraAKkSrAUQKW6oXQJdthISFfiXuSZwbf4rV 1J2IR7yC6h453E83E5gfQeFWOpEC+LG7FmCyOad3H2UGyMq/MoXnImaM9X/9PwTRvn1E ztSMJXNeqYBvtYtfhSxAQusXl+wFb4/VXfeXlg+UEC89NRzw8LTeZIecxAQLEtYOnI8g mGXw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b="QY9W/u1p"; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i2si15126006pfi.125.2018.11.22.06.31.43; Thu, 22 Nov 2018 06:31:59 -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=pass header.i=@gmail.com header.s=20161025 header.b="QY9W/u1p"; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2391585AbeKVMWR (ORCPT + 99 others); Thu, 22 Nov 2018 07:22:17 -0500 Received: from mail-pl1-f193.google.com ([209.85.214.193]:38715 "EHLO mail-pl1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388737AbeKVMWQ (ORCPT ); Thu, 22 Nov 2018 07:22:16 -0500 Received: by mail-pl1-f193.google.com with SMTP id e5so8004596plb.5 for ; Wed, 21 Nov 2018 17:45:16 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=kvkrNknnnYyDCwzgoDOzZl41ciugn9Tt2keFs4A91m0=; b=QY9W/u1pcWReosHAIJ0Mlet99ZY0UtHlAVvl80t1NMMfhHOPTx1hQZvZei6awez8ag b+prL3CZUGSmVb1swiDRD0P9CqVG7vTRuYHiqmztckcfjuMNQAmBonoiDUYW5JZQXVWH xN0SENdRoC2Fg+DauO37xY+OKZNnUSZ/jxdrTQBQ0arhxRRb0+4uWKdV3uPodfsY9qbN lRpg3CQUwJmeezLty+0VwEDImvScy44L5D3O4JGfpfk/1atju4Li2HFwN2yGKerA+kZ1 ipLTWFgeyP+amgUYUdaBO4cavrej/fBzQg1l5XYD+mZ3vlkFx6LJRX6mQZteb4NbAWX/ i98Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=kvkrNknnnYyDCwzgoDOzZl41ciugn9Tt2keFs4A91m0=; b=Fz4b52r8bkztBdheUXPR2ZiSrEfkvXOqpMbrrTl85aVOxfmB7ZVISLLOxKNTf/Mjmi EbnJ9NumfMg9cUIR7NMt2MOS81/RMPk2Je45wJLR71RHPfmOYllXXe7mrrMw55TyES1E ZN34XTzbDo3SFeV96AwhfVbpr7F3D695nD/gOYOx2qMfdMhva3G76i05jPaw9qUA1sKg qVPwztrQUvvy9BShrSBSgE+Gg8AdG5+/azDirPSGBYHDk0sFAiBam5lFpzAKZgsTzyJ8 xa3IceZK+mlVWUy7+2rnXeoLaP87qO3UV6FYy+++pbm9G6JjkTsitkCitRF+T1KirCxd pBOA== X-Gm-Message-State: AA+aEWa7mdmouNXGw6YZUEuyF4yT5kHt521xBCk63RdERMGvFYSn4OH5 1rTPjL4HgxsbD0Es/fnR678EN+ips4o= X-Received: by 2002:a17:902:20b:: with SMTP id 11mr6303624plc.57.1542851115675; Wed, 21 Nov 2018 17:45:15 -0800 (PST) Received: from yuq-Aspire-4738G.www.tendawifi.com ([150.109.119.235]) by smtp.gmail.com with ESMTPSA id i193sm58541500pgc.22.2018.11.21.17.45.12 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 21 Nov 2018 17:45:15 -0800 (PST) From: Qiang Yu To: dri-devel@lists.freedesktop.org, linux-sunxi@googlegroups.com, Maxime Ripard , David Airlie , Chen-Yu Tsai , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: Vasily Khoruzhick , Icenowy Zheng , Qiang Yu Subject: [PATCH] drm/sun4i: wait on implicit fence before display Date: Thu, 22 Nov 2018 09:44:17 +0800 Message-Id: <20181122014417.23285-1-yuq825@gmail.com> X-Mailer: git-send-email 2.17.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Render like lima will attach a fence to the framebuffer dma_buf, display like sun4i should wait it finish before show the framebuffer. Otherwise tearing will be observed. Signed-off-by: Qiang Yu --- drivers/gpu/drm/sun4i/sun4i_layer.c | 2 ++ drivers/gpu/drm/sun4i/sun8i_ui_layer.c | 2 ++ drivers/gpu/drm/sun4i/sun8i_vi_layer.c | 2 ++ 3 files changed, 6 insertions(+) diff --git a/drivers/gpu/drm/sun4i/sun4i_layer.c b/drivers/gpu/drm/sun4i/sun4i_layer.c index 750ad24de1d7..d68e663df9a0 100644 --- a/drivers/gpu/drm/sun4i/sun4i_layer.c +++ b/drivers/gpu/drm/sun4i/sun4i_layer.c @@ -12,6 +12,7 @@ #include #include +#include #include #include "sun4i_backend.h" @@ -114,6 +115,7 @@ static void sun4i_backend_layer_atomic_update(struct drm_plane *plane, } static const struct drm_plane_helper_funcs sun4i_backend_layer_helper_funcs = { + .prepare_fb = drm_gem_fb_prepare_fb, .atomic_disable = sun4i_backend_layer_atomic_disable, .atomic_update = sun4i_backend_layer_atomic_update, }; diff --git a/drivers/gpu/drm/sun4i/sun8i_ui_layer.c b/drivers/gpu/drm/sun4i/sun8i_ui_layer.c index 28c15c6ef1ef..7bc2ca2bd0c3 100644 --- a/drivers/gpu/drm/sun4i/sun8i_ui_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_ui_layer.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include @@ -287,6 +288,7 @@ static void sun8i_ui_layer_atomic_update(struct drm_plane *plane, } static struct drm_plane_helper_funcs sun8i_ui_layer_helper_funcs = { + .prepare_fb = drm_gem_fb_prepare_fb, .atomic_check = sun8i_ui_layer_atomic_check, .atomic_disable = sun8i_ui_layer_atomic_disable, .atomic_update = sun8i_ui_layer_atomic_update, diff --git a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c index f4fe97813f94..815895795afd 100644 --- a/drivers/gpu/drm/sun4i/sun8i_vi_layer.c +++ b/drivers/gpu/drm/sun4i/sun8i_vi_layer.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -315,6 +316,7 @@ static void sun8i_vi_layer_atomic_update(struct drm_plane *plane, } static struct drm_plane_helper_funcs sun8i_vi_layer_helper_funcs = { + .prepare_fb = drm_gem_fb_prepare_fb, .atomic_check = sun8i_vi_layer_atomic_check, .atomic_disable = sun8i_vi_layer_atomic_disable, .atomic_update = sun8i_vi_layer_atomic_update, -- 2.17.1