From patchwork Fri Aug 10 11:53:46 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sachin Kamat X-Patchwork-Id: 1305231 Return-Path: X-Original-To: patchwork-linux-media@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id 5E06F3FC66 for ; Fri, 10 Aug 2012 11:56:01 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753602Ab2HJLz6 (ORCPT ); Fri, 10 Aug 2012 07:55:58 -0400 Received: from mail-pb0-f46.google.com ([209.85.160.46]:38428 "EHLO mail-pb0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752588Ab2HJLzZ (ORCPT ); Fri, 10 Aug 2012 07:55:25 -0400 Received: by mail-pb0-f46.google.com with SMTP id rr13so2611852pbb.19 for ; Fri, 10 Aug 2012 04:55:25 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references :x-gm-message-state; bh=tmUZR+uRfLg90FEdKNTlMcU2uQIud0KE4yQ97ffQrMc=; b=FoJ/oUJhM60Y/phuzl9nMV6wKqn4ba6RzmlyDIAv+oKAuYaAwt0LP1uGU7WT6xBOOz H/kEIYz0n/NHj4tW+kOs0wDRuY2Hr+7YgiP/eAy2/7pESho54dtOyny7C08g4zF04bHl hUnc1C+uUJ3wYLmO9MHu5cM1dW0tWznzDSUFWVRZHyk2vVZXF3OzlHdYy5ng7zcs7Yo+ IR1e5XLkLGV8DJKyS5JEYgWU3maTV/SIOxKHt0q8pXj7yB2iovj9aUwJf+KJYbhrMX1i It8QskfPKLUy5FCUXwweGxb79wt6Sfr1oiC+S8YIsoNKxXRkZaXo2yMDtlRuiA1iMj25 SGnQ== Received: by 10.68.221.70 with SMTP id qc6mr12232219pbc.92.1344599724991; Fri, 10 Aug 2012 04:55:24 -0700 (PDT) Received: from localhost.localdomain ([115.113.119.130]) by mx.google.com with ESMTPS id tq4sm3228260pbc.11.2012.08.10.04.55.21 (version=TLSv1/SSLv3 cipher=OTHER); Fri, 10 Aug 2012 04:55:24 -0700 (PDT) From: Sachin Kamat To: linux-media@vger.kernel.org Cc: t.stanislaws@samsung.com, mchehab@infradead.org, sachin.kamat@linaro.org, patches@linaro.org Subject: [PATCH 2/2] [media] s5p-tv: Use devm_* functions in sii9234_drv.c file Date: Fri, 10 Aug 2012 17:23:46 +0530 Message-Id: <1344599626-21881-2-git-send-email-sachin.kamat@linaro.org> X-Mailer: git-send-email 1.7.4.1 In-Reply-To: <1344599626-21881-1-git-send-email-sachin.kamat@linaro.org> References: <1344599626-21881-1-git-send-email-sachin.kamat@linaro.org> X-Gm-Message-State: ALoCoQm+nJhiuDVG0/b0GFJPkKnW9ubT57u2vTiGN8FbC6Lc5qmhyMkWU9D91nech+8Bu2bYar1+ Sender: linux-media-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-media@vger.kernel.org devm_* functions are device managed functions and make error handling and cleanup cleaner and simpler. Signed-off-by: Sachin Kamat --- drivers/media/video/s5p-tv/sii9234_drv.c | 17 ++++------------- 1 files changed, 4 insertions(+), 13 deletions(-) diff --git a/drivers/media/video/s5p-tv/sii9234_drv.c b/drivers/media/video/s5p-tv/sii9234_drv.c index 6d348f9..716d484 100644 --- a/drivers/media/video/s5p-tv/sii9234_drv.c +++ b/drivers/media/video/s5p-tv/sii9234_drv.c @@ -323,7 +323,7 @@ static int __devinit sii9234_probe(struct i2c_client *client, struct sii9234_context *ctx; int ret; - ctx = kzalloc(sizeof(*ctx), GFP_KERNEL); + ctx = devm_kzalloc(&client->dev, sizeof(*ctx), GFP_KERNEL); if (!ctx) { dev_err(dev, "out of memory\n"); ret = -ENOMEM; @@ -331,18 +331,17 @@ static int __devinit sii9234_probe(struct i2c_client *client, } ctx->client = client; - ctx->power = regulator_get(dev, "hdmi-en"); + ctx->power = devm_regulator_get(dev, "hdmi-en"); if (IS_ERR(ctx->power)) { dev_err(dev, "failed to acquire regulator hdmi-en\n"); - ret = PTR_ERR(ctx->power); - goto fail_ctx; + return PTR_ERR(ctx->power); } ctx->gpio_n_reset = pdata->gpio_n_reset; ret = gpio_request(ctx->gpio_n_reset, "MHL_RST"); if (ret) { dev_err(dev, "failed to acquire MHL_RST gpio\n"); - goto fail_power; + return ret; } v4l2_i2c_subdev_init(&ctx->sd, client, &sii9234_ops); @@ -373,12 +372,6 @@ fail_pm: pm_runtime_disable(dev); gpio_free(ctx->gpio_n_reset); -fail_power: - regulator_put(ctx->power); - -fail_ctx: - kfree(ctx); - fail: dev_err(dev, "probe failed\n"); @@ -393,8 +386,6 @@ static int __devexit sii9234_remove(struct i2c_client *client) pm_runtime_disable(dev); gpio_free(ctx->gpio_n_reset); - regulator_put(ctx->power); - kfree(ctx); dev_info(dev, "remove successful\n");