From patchwork Wed Mar 23 13:25:57 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrzej Hajda X-Patchwork-Id: 8649981 Return-Path: X-Original-To: patchwork-linux-samsung-soc@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.29.136]) by patchwork1.web.kernel.org (Postfix) with ESMTP id 57ABD9FB32 for ; Wed, 23 Mar 2016 13:26:22 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 7C3FC20397 for ; Wed, 23 Mar 2016 13:26:21 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 64D2220398 for ; Wed, 23 Mar 2016 13:26:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754993AbcCWN0S (ORCPT ); Wed, 23 Mar 2016 09:26:18 -0400 Received: from mailout2.w1.samsung.com ([210.118.77.12]:38220 "EHLO mailout2.w1.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754859AbcCWN0R (ORCPT ); Wed, 23 Mar 2016 09:26:17 -0400 Received: from eucpsbgm2.samsung.com (unknown [203.254.199.245]) by mailout2.w1.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTP id <0O4H00G2WUNQ2NA0@mailout2.w1.samsung.com> for linux-samsung-soc@vger.kernel.org; Wed, 23 Mar 2016 13:26:14 +0000 (GMT) X-AuditID: cbfec7f5-f792a6d000001302-73-56f2997697a9 Received: from eusync4.samsung.com ( [203.254.199.214]) by eucpsbgm2.samsung.com (EUCPMTA) with SMTP id 0B.2B.04866.67992F65; Wed, 23 Mar 2016 13:26:14 +0000 (GMT) Received: from amdc1061.digital.local ([106.116.147.88]) by eusync4.samsung.com (Oracle Communications Messaging Server 7.0.5.31.0 64bit (built May 5 2014)) with ESMTPA id <0O4H0086MUNPPA00@eusync4.samsung.com>; Wed, 23 Mar 2016 13:26:14 +0000 (GMT) From: Andrzej Hajda To: Inki Dae Cc: Andrzej Hajda , Bartlomiej Zolnierkiewicz , Marek Szyprowski , Kyungmin Park , dri-devel@lists.freedesktop.org (open list:DRM DRIVERS FOR EXYNOS), linux-samsung-soc@vger.kernel.org (moderated list:ARM/SAMSUNG EXYNOS ARM ARCHITECTURES) Subject: [PATCH 1/6] drm/exynos: add helper to get crtc from pipe Date: Wed, 23 Mar 2016 14:25:57 +0100 Message-id: <1458739562-32327-2-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1458739562-32327-1-git-send-email-a.hajda@samsung.com> References: <1458739562-32327-1-git-send-email-a.hajda@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupiluLIzCtJLcpLzFFi42I5/e/4Nd2ymZ/CDCY1SFvcWneO1WLjjPWs Fle+vmezmHR/AovF2aY37BYzzu9jslh75C67A7vH/e7jTB59W1YxenzeJBfAHMVlk5Kak1mW WqRvl8CVse/qApaCdYIVJ4+pNzB+4eti5OSQEDCR+H94EiOELSZx4d56ti5GLg4hgaWMEi9P /GCEcJqYJK4v3wRWxSagKfF38002EFtEQFli1b52dpAiZoF7TBLfLjwFSwgLOEr0PeoDa2AR UJXoXnaWHcTmFXCWeHa4nRVinZzEyWOTwWxOAReJaRd6wHqFgGrWT17MPIGRdwEjwypG0dTS 5ILipPRcI73ixNzi0rx0veT83E2MkBD6uoNx6TGrQ4wCHIxKPLwF5z6GCbEmlhVX5h5ilOBg VhLhlZz6KUyINyWxsiq1KD++qDQntfgQozQHi5I478xd70OEBNITS1KzU1MLUotgskwcnFIN jDMa2HkOxdx6e2Nq4ZGP5zc+2jY57U23k812r2PTbgedTwxMDXE2614e/+V19cJlO1dvZamM lupmrvw29+Kmoz9O7WtReX6Lm9mqxtq1k+eM8c6jW7X7V3laBa3546uv/dHMZLnw2TkH4o8U Tta10FbtduA3EXuYfZfr+WXDU/NyHnIevdjNu0uJpTgj0VCLuag4EQB/jT5KHQIAAA== Sender: linux-samsung-soc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-samsung-soc@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, T_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 The helper abstracts out conversion from pipeline to crtc. Currently it is used in two places, but there will be more uses in next patches. Signed-off-by: Andrzej Hajda --- drivers/gpu/drm/exynos/exynos_drm_crtc.c | 10 ++++------ drivers/gpu/drm/exynos/exynos_drm_drv.h | 8 ++++++++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_drm_crtc.c b/drivers/gpu/drm/exynos/exynos_drm_crtc.c index e36579c..50dd33d 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_crtc.c +++ b/drivers/gpu/drm/exynos/exynos_drm_crtc.c @@ -157,9 +157,8 @@ err_crtc: int exynos_drm_crtc_enable_vblank(struct drm_device *dev, unsigned int pipe) { - struct exynos_drm_private *private = dev->dev_private; - struct exynos_drm_crtc *exynos_crtc = - to_exynos_crtc(private->crtc[pipe]); + struct exynos_drm_crtc *exynos_crtc = exynos_drm_crtc_from_pipe(dev, + pipe); if (exynos_crtc->ops->enable_vblank) return exynos_crtc->ops->enable_vblank(exynos_crtc); @@ -169,9 +168,8 @@ int exynos_drm_crtc_enable_vblank(struct drm_device *dev, unsigned int pipe) void exynos_drm_crtc_disable_vblank(struct drm_device *dev, unsigned int pipe) { - struct exynos_drm_private *private = dev->dev_private; - struct exynos_drm_crtc *exynos_crtc = - to_exynos_crtc(private->crtc[pipe]); + struct exynos_drm_crtc *exynos_crtc = exynos_drm_crtc_from_pipe(dev, + pipe); if (exynos_crtc->ops->disable_vblank) exynos_crtc->ops->disable_vblank(exynos_crtc); diff --git a/drivers/gpu/drm/exynos/exynos_drm_drv.h b/drivers/gpu/drm/exynos/exynos_drm_drv.h index 3f170ce..fcea940 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_drv.h +++ b/drivers/gpu/drm/exynos/exynos_drm_drv.h @@ -232,6 +232,14 @@ struct exynos_drm_private { wait_queue_head_t wait; }; +static inline struct exynos_drm_crtc * +exynos_drm_crtc_from_pipe(struct drm_device *dev, int pipe) +{ + struct exynos_drm_private *private = dev->dev_private; + + return to_exynos_crtc(private->crtc[pipe]); +} + static inline struct device *to_dma_dev(struct drm_device *dev) { struct exynos_drm_private *priv = dev->dev_private;