From patchwork Mon May 19 10:54:04 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrzej Hajda X-Patchwork-Id: 4201101 Return-Path: X-Original-To: patchwork-dri-devel@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 00629BEEAB for ; Mon, 19 May 2014 10:54:37 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 418E32020A for ; Mon, 19 May 2014 10:54:36 +0000 (UTC) Received: from gabe.freedesktop.org (gabe.freedesktop.org [131.252.210.177]) by mail.kernel.org (Postfix) with ESMTP id 4E38D201FB for ; Mon, 19 May 2014 10:54:35 +0000 (UTC) Received: from gabe.freedesktop.org (localhost [127.0.0.1]) by gabe.freedesktop.org (Postfix) with ESMTP id 792116E6F0; Mon, 19 May 2014 03:54:34 -0700 (PDT) X-Original-To: dri-devel@lists.freedesktop.org Delivered-To: dri-devel@lists.freedesktop.org Received: from mailout2.w1.samsung.com (mailout2.w1.samsung.com [210.118.77.12]) by gabe.freedesktop.org (Postfix) with ESMTP id 7BE526E6EF for ; Mon, 19 May 2014 03:54:33 -0700 (PDT) Received: from eucpsbgm1.samsung.com (unknown [203.254.199.244]) by mailout2.w1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N5T004GLIAIMM00@mailout2.w1.samsung.com> for dri-devel@lists.freedesktop.org; Mon, 19 May 2014 11:54:18 +0100 (BST) X-AuditID: cbfec7f4-b7fac6d000006cfe-50-5379e2e63e28 Received: from eusync1.samsung.com ( [203.254.199.211]) by eucpsbgm1.samsung.com (EUCPMTA) with SMTP id 3D.49.27902.6E2E9735; Mon, 19 May 2014 11:54:30 +0100 (BST) Received: from AMDC1061.digital.local ([106.116.147.88]) by eusync1.samsung.com (Oracle Communications Messaging Server 7u4-23.01 (7.0.4.23.0) 64bit (built Aug 10 2011)) with ESMTPA id <0N5T00MF4IAJI400@eusync1.samsung.com>; Mon, 19 May 2014 11:54:30 +0100 (BST) From: Andrzej Hajda To: linux-kernel@vger.kernel.org (open list) Subject: [PATCH 2/8] drm/exynos/ipp: correct ipp_id field initialization Date: Mon, 19 May 2014 12:54:04 +0200 Message-id: <1400496850-23860-3-git-send-email-a.hajda@samsung.com> X-Mailer: git-send-email 1.9.1 In-reply-to: <1400496850-23860-1-git-send-email-a.hajda@samsung.com> References: <1400496850-23860-1-git-send-email-a.hajda@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrOJMWRmVeSWpSXmKPExsVy+t/xy7rPHlUGG0z+pG1xa905VosrX9+z WUy6P4HF4sW9iywWZ5vesFtc3jWHzWLG+X1MFmuP3GW3mDH5JZsDp8f97uNMHn1bVjF6fN4k F8AcxWWTkpqTWZZapG+XwJWxbcFkloJ/fBU9H2+yNTBu4eli5OSQEDCR2LP0JyOELSZx4d56 ti5GLg4hgaWMEi/PPGKCcPqYJLbd2MQOUsUmoCnxd/NNNhBbREBH4npPNzNIEbPAMyaJO3fX gRUJC3hIHNg6gRXEZhFQlbixeANYnFfAWeJQ9zlmiHVyEiePTQar4RRwkThxbDmYLQRU83jX UfYJjLwLGBlWMYqmliYXFCel5xrqFSfmFpfmpesl5+duYoQE1pcdjIuPWR1iFOBgVOLh/ZBQ GSzEmlhWXJl7iFGCg1lJhHfbDaAQb0piZVVqUX58UWlOavEhRiYOTqkGxkzT53eqjN8fC2Lh iZm50vpZ36HlLrJ5jW9/zO/03FvN67Jzmyn3/ZaHZfqXHRlkFp/YsTMmspjjyI6ortxF3+Y0 irs8536emb/6wY7+5Tb6U/5bOqq+Fvz/PNn5fnF9AWfWnqe/hP9Znbc/9D1rrm+M8prg60sD sxbujhbK3HnXXC0gvE4wTImlOCPRUIu5qDgRAOY+wUYKAgAA Cc: "moderated list:ARM/S5P EXYNOS AR..." , Seung-Woo Kim , dri-devel@lists.freedesktop.org, Andrzej Hajda , Kyungmin Park , Marek Szyprowski 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 prop_list.ipp_id field is not initialized properly. The patch fixes it, additionally it removes redundant field from ippdrv. Signed-off-by: Andrzej Hajda --- drivers/gpu/drm/exynos/exynos_drm_ipp.c | 14 ++++++-------- drivers/gpu/drm/exynos/exynos_drm_ipp.h | 1 - 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/drivers/gpu/drm/exynos/exynos_drm_ipp.c b/drivers/gpu/drm/exynos/exynos_drm_ipp.c index 5aaf21f..e6ef415 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_ipp.c +++ b/drivers/gpu/drm/exynos/exynos_drm_ipp.c @@ -1699,23 +1699,21 @@ static int ipp_subdrv_probe(struct drm_device *drm_dev, struct device *dev) /* get ipp driver entry */ list_for_each_entry(ippdrv, &exynos_drm_ippdrv_list, drv_list) { + u32 ipp_id; + ippdrv->drm_dev = drm_dev; ret = ipp_create_id(&ctx->ipp_idr, &ctx->ipp_lock, ippdrv, - &ippdrv->ipp_id); - if (ret) { + &ipp_id); + if (ret || ipp_id == 0) { DRM_ERROR("failed to create id.\n"); goto err_idr; } DRM_DEBUG_KMS("count[%d]ippdrv[0x%x]ipp_id[%d]\n", - count++, (int)ippdrv, ippdrv->ipp_id); + count++, (int)ippdrv, ipp_id); - if (ippdrv->ipp_id == 0) { - DRM_ERROR("failed to get ipp_id[%d]\n", - ippdrv->ipp_id); - goto err_idr; - } + ippdrv->prop_list->ipp_id = ipp_id; /* store parent device for node */ ippdrv->parent_dev = dev; diff --git a/drivers/gpu/drm/exynos/exynos_drm_ipp.h b/drivers/gpu/drm/exynos/exynos_drm_ipp.h index ab1634b..4aa71b2 100644 --- a/drivers/gpu/drm/exynos/exynos_drm_ipp.h +++ b/drivers/gpu/drm/exynos/exynos_drm_ipp.h @@ -160,7 +160,6 @@ struct exynos_drm_ippdrv { struct device *parent_dev; struct device *dev; struct drm_device *drm_dev; - u32 ipp_id; bool dedicated; struct exynos_drm_ipp_ops *ops[EXYNOS_DRM_OPS_MAX]; struct workqueue_struct *event_workq;