From patchwork Wed Sep 5 23:38:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Deepak Singh Rawat X-Patchwork-Id: 10589647 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 3C50A174C for ; Wed, 5 Sep 2018 23:43:39 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 2BF69200CB for ; Wed, 5 Sep 2018 23:43:39 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2003A28BD3; Wed, 5 Sep 2018 23:43:39 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-5.2 required=2.0 tests=BAYES_00,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id CFD82200CB for ; Wed, 5 Sep 2018 23:43:38 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 2079F6E57E; Wed, 5 Sep 2018 23:43:34 +0000 (UTC) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from EX13-EDG-OU-001.vmware.com (ex13-edg-ou-001.vmware.com [208.91.0.189]) by gabe.freedesktop.org (Postfix) with ESMTPS id D6C696E57A for ; Wed, 5 Sep 2018 23:43:32 +0000 (UTC) Received: from sc9-mailhost2.vmware.com (10.113.161.72) by EX13-EDG-OU-001.vmware.com (10.113.208.155) with Microsoft SMTP Server id 15.0.1156.6; Wed, 5 Sep 2018 16:39:21 -0700 Received: from ubuntu.localdomain (promb-2n-dhcp79.eng.vmware.com [10.20.88.79]) by sc9-mailhost2.vmware.com (Postfix) with ESMTP id 0F70AB06E3; Wed, 5 Sep 2018 19:39:27 -0400 (EDT) From: Deepak Rawat To: , , , Subject: [PATCH 00/14] plane update with damage Date: Wed, 5 Sep 2018 16:38:47 -0700 Message-ID: <20180905233901.2321-1-drawat@vmware.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 Received-SPF: None (EX13-EDG-OU-001.vmware.com: drawat@vmware.com does not designate permitted sender hosts) X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Deepak Rawat , lukasz.spintzyk@displaylink.com Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Virus-Scanned: ClamAV using ClamSMTP Hi, Set of patches for a new plane property FB_DAMAGE_CLIPS to send damage during plane update. I have incorporated review comments since last RFC. Also with this patch series vmwgfx implementation of plane damage. Based on Rob Clark earlier patch, implemented legacy dirtyfb with new damage clips property. I will be sending a separate patch series for unit test case for damage interface using igt-gpu-tools. Also a separate patch series for a rudimentary weston implementation, which for now only send damage for default scanout plane. Testing: vmware xorg driver mainly use dirty_fb ioctl to update the screen so it is a good overall test of damage interface. Weston implementation also works as intended. Let me know what you think. Thanks, Deepak Deepak Rawat (12): drm: add helper iterator functions for plane fb_damage_clips blob drm: clear plane damage during full modeset drm/vmwgfx: add a new interface for plane update on a display unit drm/vmwgfx: implement STDU plane update for surface backed fb drm/vmwgfx: implement STDU plane update for BO backed fb drm/vmwgfx: use the new interface for STDU plane update drm/vmwgfx: enable FB_DAMAGE_CLIPS property for STDU primary plane drm/vmwgfx: implement SOU plane update for surface backed fb drm/vmwgfx: implement SOU plane update for BO backed fb drm/vmwgfx: use the new interface for SOU plane update drm/vmwgfx: enable FB_DAMAGE_CLIPS property for SOU primary plane drm/vmwgfx: use atomic helper function for dirty fb IOCTL Lukasz Spintzyk (1): drm: add new plane property FB_DAMAGE_CLIPS to send damage during plane update Rob Clark (1): drm: add helper to implement legacy dirtyfb Documentation/gpu/drm-kms.rst | 9 + drivers/gpu/drm/Makefile | 2 +- drivers/gpu/drm/drm_atomic.c | 13 + drivers/gpu/drm/drm_atomic_helper.c | 8 + drivers/gpu/drm/drm_damage_helper.c | 301 +++++++++++++++++ drivers/gpu/drm/drm_mode_config.c | 6 + drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 225 ++++++------- drivers/gpu/drm/vmwgfx/vmwgfx_kms.h | 171 ++++++++++ drivers/gpu/drm/vmwgfx/vmwgfx_scrn.c | 361 ++++++++++++++++++-- drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c | 483 +++++++++++++++++++++++++-- include/drm/drm_damage_helper.h | 97 ++++++ include/drm/drm_mode_config.h | 10 + include/drm/drm_plane.h | 8 + include/uapi/drm/drm_mode.h | 19 ++ 14 files changed, 1539 insertions(+), 174 deletions(-) create mode 100644 drivers/gpu/drm/drm_damage_helper.c create mode 100644 include/drm/drm_damage_helper.h