From patchwork Wed Jan 9 18:56:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Ezequiel Garcia X-Patchwork-Id: 10754825 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 0A0296C2 for ; Wed, 9 Jan 2019 18:57:41 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id ED5AF28702 for ; Wed, 9 Jan 2019 18:57:40 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id E026228D0E; Wed, 9 Jan 2019 18:57:40 +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,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,UNPARSEABLE_RELAY autolearn=ham version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 93D1828702 for ; Wed, 9 Jan 2019 18:57:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=7F6n8RPdheDmdMiuc34lzEEd2s46gBfTsect0LPq1K0=; b=fv/5xpomma8P32 Dm6R/NJ40LIVKRjjzaKyAr9AiwE7IO6WPyZfkEpby7wrD7jv0eW1MqnDY4NbAQIezAaT2yDNb+hdf fQkdoRbeYRic+aQYEwKgXFEqnDSovmf/E78+fLgawuOxXERepQTxINtBNFaYPMJom1EBLTfJVjKR3 e5GzRspvf3DTtHMHMLy9C3IDujeKFP4HCK9g43y3CdNDDZETYTr4hcyNx5bYHijbEROwULQJEB724 GZyuVKOyQublMis2hlqgyKXk2kr5LkiRUhZELSLBEzZHcPlO34n9Ml7xVUHcsefri14GAh4gy+duE cV5N8AyPw2mWXh+cVs2A==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1ghJ2n-0004z9-Hf; Wed, 09 Jan 2019 18:57:37 +0000 Received: from bhuna.collabora.co.uk ([46.235.227.227]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1ghJ2j-0004yU-UR for linux-rockchip@lists.infradead.org; Wed, 09 Jan 2019 18:57:35 +0000 Received: from [127.0.0.1] (localhost [127.0.0.1]) (Authenticated sender: ezequiel) with ESMTPSA id 828312756F0 From: Ezequiel Garcia To: dri-devel@lists.freedesktop.org Subject: [PATCH 0/3] Support reflect-x/y on RK3328, RK3368, and RK3399 Date: Wed, 9 Jan 2019 15:56:36 -0300 Message-Id: <20190109185639.5093-1-ezequiel@collabora.com> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190109_105734_110363_9086C691 X-CRM114-Status: UNSURE ( 7.26 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-rockchip@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Upstream kernel work for Rockchip platforms List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Daniele Castagna , =?utf-8?q?Heiko_St=C3=BCbner?= , Sandy Huang , Tomasz Figa , linux-rockchip@lists.infradead.org, Sean Paul , "Kristian H . Kristensen" , kernel@collabora.com, Ezequiel Garcia Sender: "Linux-rockchip" Errors-To: linux-rockchip-bounces+patchwork-linux-rockchip=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Here's a small series supporting plane reflection (aka. mirroring) properties on RK3328, RK3368, and RK3399 SoCs. Note that RK3288 specification doesn't seem to document registers for plane mirroring, but instead it only seems to support mirroring at the display (CRTC) level. A small typo cleanup patch is included, in patch 1. Not related to the rotation stuff. In order to support this feature, patch 2 separates the register set for win0 and win1. Once that's done, patch 3 creates the properties, if supported by each plane/SoC. The following modetest commands would test this feature, where 30 is the plane ID, and 49 = rotate_0 + relect_y + reflect_x. X mirror: modetest -s 43@33:1920x1080@XR24 -w 30:rotation:17 Y mirror: modetest -s 43@33:1920x1080@XR24 -w 30:rotation:33 XY mirror: modetest -s 43@33:1920x1080@XR24 -w 30:rotation:49 This work has been originally by Daniele. I just cleaned up the implementation a it, and ported the code to upstream. This series is based on drm-misc-next plus https://patchwork.kernel.org/patch/10752893/. Daniele Castagna (1): drm/rockchip: Add reflection properties Ezequiel Garcia (2): drm/rockchip: Fix typo in VOP macros argument drm/rockchip: Separate RK3288 from RK3368 win01 registers drivers/gpu/drm/rockchip/rockchip_drm_vop.c | 47 ++++++++++++++++++--- drivers/gpu/drm/rockchip/rockchip_drm_vop.h | 2 + drivers/gpu/drm/rockchip/rockchip_vop_reg.c | 34 ++++++++++++--- 3 files changed, 70 insertions(+), 13 deletions(-)