From patchwork Wed May 28 06:11:11 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rahul Sharma X-Patchwork-Id: 4255591 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id EEE139F336 for ; Wed, 28 May 2014 14:22:53 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 1FE9D20173 for ; Wed, 28 May 2014 14:22:53 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 720A920172 for ; Wed, 28 May 2014 14:22:49 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id CDC4F6E87B; Wed, 28 May 2014 07:22:48 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) by gabe.freedesktop.org (Postfix) with ESMTP id CFF5A6E4C4 for ; Tue, 27 May 2014 23:12:01 -0700 (PDT) Received: from epcpsbgr4.samsung.com (u144.gpu120.samsung.co.kr [203.254.230.144]) by mailout4.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N6900JWST80I540@mailout4.samsung.com> for dri-devel@lists.freedesktop.org; Wed, 28 May 2014 15:12:00 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [172.20.52.124]) by epcpsbgr4.samsung.com (EPCPMTA) with SMTP id 43.48.13369.F2E75835; Wed, 28 May 2014 15:11:59 +0900 (KST) X-AuditID: cbfee690-b7fb56d000003439-52-53857e2f8e22 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id C2.6A.08203.F2E75835; Wed, 28 May 2014 15:11:59 +0900 (KST) Received: from localhost.localdomain ([107.108.83.245]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0N690003TT7R19C0@mmp1.samsung.com>; Wed, 28 May 2014 15:11:59 +0900 (KST) From: Rahul Sharma To: dri-devel@lists.freedesktop.org Subject: [PATCH] drm/exynos: remove hardware overlays disable from fimd probe Date: Wed, 28 May 2014 11:41:11 +0530 Message-id: <1401257471-31994-1-git-send-email-rahul.sharma@samsung.com> X-Mailer: git-send-email 1.7.9.5 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrOLMWRmVeSWpSXmKPExsWyRsSkRle/rjXY4PknC4srX9+zWUy6P4HF 4vuuL+wWvQuuslnMOL+PyWLhi3iLKYsOszqwe+ycdZfd4373cSaPvi2rGD0+b5ILYInisklJ zcksSy3St0vgylg6U6PgAG/Fso429gbGOdxdjJwcEgImEt2XD7FA2GISF+6tZ+ti5OIQEljK KNG1fiY7TNH6/69ZIRKLGCW2bP/ECOG0M0nsap8N1s4moCsx++AzRhBbREBZ4u/EVWBFzALL GSVebm5hA0kIC/hK9Df0M4PYLAKqEocWdII18Ap4SBz7vAsozgG0TkFiziQbiM2/2SQ65mdD lAtIfJsMcipIiazEpgPMECWSEgdX3GCZwCi4gJFhFaNoakFyQXFSepGJXnFibnFpXrpecn7u JkZgoJ7+92zCDsZ7B6wPMSYDjZvILCWanA8M9LySeENjMyMLUxNTYyNzSzPShJXEedUeJQUJ CaQnlqRmp6YWpBbFF5XmpBYfYmTi4JRqYJxWfMXr9KqZyywsPW8umbC04UxD2m1Ou72xfp+e 2y29IDxjvoS71RoR61Xbn23Ns/uTcjXz4A1+w/5Py177zyy+diw49sPtyno5w1OxtY09sUkl WxbfXJXdxW8tG3UkNnfaKbXFHUm7Aw6fWbd6U+ORCtH7Wxj3MO2W/ed43fLqxW42pdJL3XeV WIozEg21mIuKEwEgwpIqagIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrKIsWRmVeSWpSXmKPExsVy+t9jAV39utZggx2LDS2ufH3PZjHp/gQW i++7vrBb9C64ymYx4/w+JouFL+Itpiw6zOrA7rFz1l12j/vdx5k8+rasYvT4vEkugCWqgdEm IzUxJbVIITUvOT8lMy/dVsk7ON453tTMwFDX0NLCXEkhLzE31VbJxSdA1y0zB+gCJYWyxJxS oFBAYnGxkr4dpgmhIW66FjCNEbq+IUFwPUYGaCBhDWPG0pkaBQd4K5Z1tLE3MM7h7mLk5JAQ MJFY//81K4QtJnHh3nq2LkYuDiGBRYwSW7Z/YoRw2pkkdrXPZgGpYhPQlZh98BkjiC0ioCzx d+IqsCJmgeWMEi83t7CBJIQFfCX6G/qZQWwWAVWJQws6wRp4BTwkjn3eBRTnAFqnIDFnks0E Ru4FjAyrGEVTC5ILipPScw31ihNzi0vz0vWS83M3MYIj4ZnUDsaVDRaHGAU4GJV4eA8sbgkW Yk0sK67MPcQowcGsJMJ7s7A1WIg3JbGyKrUoP76oNCe1+BBjMtDyicxSosn5wCjNK4k3NDYx NzU2tTSxMDGzJE1YSZz3QKt1oJBAemJJanZqakFqEcwWJg5OqQZGuemtseKuP5KfM+tF3Hza YlIx3W7n5OUu5ho/HF/MKFALMp9tV3tsE/Mq8X2vd0bpHJXs9VugwGImdWNX1EQT9oYkbus/ mgyX5hQ+W/TAsITJOXXq9e1TlkodN+mfJB2m7rH7zZEZj37KS5qs0BRwOPssLf9qxImLgur9 V/nPRcRUz4uN4O1WYinOSDTUYi4qTgQAKlE+rcgCAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected X-Mailman-Approved-At: Wed, 28 May 2014 07:22:47 -0700 Cc: kgene.kim@samsung.com, joshi@samsung.com, linux-samsung-soc@vger.kernel.org, Rahul Sharma X-BeenThere: dri-devel@lists.freedesktop.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Direct Rendering Infrastructure - Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" X-Spam-Status: No, score=-4.8 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_MED, 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 System hangs when FIMD registers are accessed to disable hardware overlays. This is because of the clocks which are not enabled before register access. 'Hardware overlay disable' is cleaned from the FIMD probe. Signed-off-by: Rahul Sharma --- Based on exynos-drm-next branch. drivers/gpu/drm/exynos/exynos_drm_fimd.c | 17 ----------------- 1 file changed, 17 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_drm_fimd.c b/drivers/gpu/drm/exynos/exynos_drm_fimd.c index bd30d0c..2ec634f 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_fimd.c +++ b/drivers/gpu/drm/exynos/exynos_drm_fimd.c @@ -703,19 +703,6 @@ static void fimd_win_disable(struct exynos_drm_manager *mgr, int zpos) win_data->enabled = false; } -static void fimd_clear_win(struct fimd_context *ctx, int win) -{ - writel(0, ctx->regs + WINCON(win)); - writel(0, ctx->regs + VIDOSD_A(win)); - writel(0, ctx->regs + VIDOSD_B(win)); - writel(0, ctx->regs + VIDOSD_C(win)); - - if (win == 1 || win == 2) - writel(0, ctx->regs + VIDOSD_D(win)); - - fimd_shadow_protect_win(ctx, win, false); -} - static void fimd_window_suspend(struct exynos_drm_manager *mgr) { struct fimd_context *ctx = mgr->ctx; @@ -898,16 +885,12 @@ static int fimd_bind(struct device *dev, struct device *master, void *data) { struct fimd_context *ctx = fimd_manager.ctx; struct drm_device *drm_dev = data; - int win; fimd_mgr_initialize(&fimd_manager, drm_dev); exynos_drm_crtc_create(&fimd_manager); if (ctx->display) exynos_drm_create_enc_conn(drm_dev, ctx->display); - for (win = 0; win < WINDOWS_NR; win++) - fimd_clear_win(ctx, win); - return 0; }