From patchwork Mon Apr 1 09:48:58 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jingoo Han X-Patchwork-Id: 232712 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail-gg0-x239.google.com (mail-gg0-x239.google.com [IPv6:2607:f8b0:4002:c02::239]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority" (not verified)) by ozlabs.org (Postfix) with ESMTPS id C217F2C00C4 for ; Mon, 1 Apr 2013 20:49:02 +1100 (EST) Received: by mail-gg0-f185.google.com with SMTP id n2sf912952ggf.22 for ; Mon, 01 Apr 2013 02:49:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20120806; h=x-received:x-beenthere:x-received:received-spf:x-auditid:from:to:cc :references:in-reply-to:subject:date:message-id:mime-version :x-mailer:thread-index:x-brightmail-tracker:x-brightmail-tracker :dlp-filter:x-mtr:x-cfilter-loop:x-original-sender :x-original-authentication-results:reply-to:precedence:mailing-list :list-id:x-google-group-id:list-post:list-help:list-archive:sender :list-subscribe:list-unsubscribe:content-type:content-language; bh=KrYt5reVzDFb1QQgPnz4wY1siVHpQqGJtbbeyC3w5DU=; b=OgTWxGCkMN8vW/zMis9IGyNa8+MH0xINgLly5AJDxU6xRvfTO7lHGfwniDaKco0tpw vzw9qiwch3rLwviG5AVmFM9pg/ymM53irQdIKBx5hMVEkn8HTSkeWv/3Jf0G0J3vGJvf 76bLw5SBP29Jl1TfJWJdw2HWsP1SADAG/NgIfR+xLXyPtDiVwZiMescbgm1El93mKRYu E5/aqR39Cv9wmtubDyZAC0pMSp7ZrfHO8RXr/TpE5rr1sLJfhEukDFy5SaQDzbbzgiRZ VA/EldEr9Y+mc0cK4duxVHwYpJiLf5bHCdmZjO2Ry48DgejR/klwVag6vol7jMi62j8u GXyw== X-Received: by 10.50.161.225 with SMTP id xv1mr783226igb.15.1364809740358; Mon, 01 Apr 2013 02:49:00 -0700 (PDT) X-BeenThere: rtc-linux@googlegroups.com Received: by 10.50.57.134 with SMTP id i6ls889698igq.12.canary; Mon, 01 Apr 2013 02:49:00 -0700 (PDT) X-Received: by 10.66.184.99 with SMTP id et3mr2252119pac.1.1364809740169; Mon, 01 Apr 2013 02:49:00 -0700 (PDT) Received: from mailout3.samsung.com (mailout3.samsung.com. [203.254.224.33]) by gmr-mx.google.com with ESMTP id ty9si2154673pbc.0.2013.04.01.02.48.59; Mon, 01 Apr 2013 02:49:00 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of jg1.han@samsung.com designates 203.254.224.33 as permitted sender) client-ip=203.254.224.33; Received: from epcpsbgr3.samsung.com (u143.gpu120.samsung.co.kr [203.254.230.143]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MKK00D1CLXNVEX0@mailout3.samsung.com> for rtc-linux@googlegroups.com; Mon, 01 Apr 2013 18:48:59 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [203.254.230.49]) by epcpsbgr3.samsung.com (EPCPMTA) with SMTP id 62.62.05174.B0859515; Mon, 01 Apr 2013 18:48:59 +0900 (KST) X-AuditID: cbfee68f-b7f4a6d000001436-c1-5159580b21c6 Received: from epmmp2 ( [203.254.227.17]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id 02.F4.17838.B0859515; Mon, 01 Apr 2013 18:48:59 +0900 (KST) Received: from DOJG1HAN02 ([12.23.120.99]) by mmp2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MKK00G9DLXMY440@mmp2.samsung.com>; Mon, 01 Apr 2013 18:48:58 +0900 (KST) From: Jingoo Han To: 'Andrew Morton' Cc: linux-kernel@vger.kernel.org, 'Alessandro Zummo' , rtc-linux@googlegroups.com, 'Jingoo Han' References: <000c01ce2ebd$2a1307f0$7e3917d0$%han@samsung.com> In-reply-to: <000c01ce2ebd$2a1307f0$7e3917d0$%han@samsung.com> Subject: [rtc-linux] [PATCH 21/27] rtc: rtc-rp5c01: use devm_*() functions Date: Mon, 01 Apr 2013 18:48:58 +0900 Message-id: <002001ce2ebe$21f102b0$65d30810$%han@samsung.com> MIME-version: 1.0 X-Mailer: Microsoft Office Outlook 12.0 Thread-index: Ac4uvSmu8Ej3RSKpRZmzfFm2iz9KEwAAO58A X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrGIsWRmVeSWpSXmKPExsVy+t8zQ13uiMhAg5s/+CyWXLzKbjFn/Ro2 i8sLL7FaXN41h81if2cHowOrx56JJ9k8Tsz4zeLRt2UVo8f0eT+ZPD5vkgtgjeKySUnNySxL LdK3S+DKeHJhBXPBT/6KdQ+fsDUwTuDtYuTkkBAwkVjxqZsVwhaTuHBvPVsXIxeHkMAyRonO +V2sMEVrOtexgNhCAtMZJZ7uDIQo+sUosXVqFyNIgk1ATeLLl8PsXYwcHCIC+hJtLRogNcwC vYwSZ3p3s0M020r8OPudGcTmFLCTeLNwHlivMJA9//FZsGUsAqoSv9c/YwOZwwtU/2ZpKkiY V0BQ4sfke2A3MAtoSazfeZwJwpaX2LzmLTNIuYSAusSjv7ogYREBI4lVGx5ClYtI7HvxjhHk HAmBe+wSV6YsYYdYJSDxbfIhFoheWYlNB5gh3pWUOLjiBssERolZSDbPQrJ5FpLNs5CsWMDI sopRNLUguaA4Kb3IWK84Mbe4NC9dLzk/dxMjJE77dzDePWB9iDEZaP1EZinR5HxgnOeVxBsa mxlZmJqYGhuZW5qRJqwkzqvWYh0oJJCeWJKanZpakFoUX1Sak1p8iJGJg1OqgXHJJlGZ7zk/ uB1Mn9otEb20urDyA39AwYHbrldtvKqetaat3sbawu7XeOzqR90rOiI370+/IlQqZf1pgwv/ G75A16PNfz/eYDb7L7XNvXGx2JaUTXof7C1c2ZbaZN9QTurQXnH6YVYfz+GvfuIyvGffFOv4 KSjac375HCl5cfO10uZlYhM7vymxFGckGmoxFxUnAgCZHqmB6QIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrMKsWRmVeSWpSXmKPExsVy+t9jQV3uiMhAg1f7uCyWXLzKbjFn/Ro2 i8sLL7FaXN41h81if2cHowOrx56JJ9k8Tsz4zeLRt2UVo8f0eT+ZPD5vkgtgjWpgtMlITUxJ LVJIzUvOT8nMS7dV8g6Od443NTMw1DW0tDBXUshLzE21VXLxCdB1y8wB2q6kUJaYUwoUCkgs LlbSt8M0ITTETdcCpjFC1zckCK7HyAANJKxjzHhyYQVzwU/+inUPn7A1ME7g7WLk5JAQMJFY 07mOBcIWk7hwbz0biC0kMJ1R4unOwC5GLiD7F6PE1qldjCAJNgE1iS9fDrN3MXJwiAjoS7S1 aIDUMAv0Mkqc6d3NDtFsK/Hj7HdmEJtTwE7izcJ5YL3CQPb8x2dZQWwWAVWJ3+ufsYHM4QWq f7M0FSTMKyAo8WPyPbB7mAW0JNbvPM4EYctLbF7zlhmkXEJAXeLRX12QsIiAkcSqDQ+hykUk 9r14xziBUWgWkkmzkEyahWTSLCQtCxhZVjGKphYkFxQnpeca6hUn5haX5qXrJefnbmIEJ4Fn UjsYVzZYHGIU4GBU4uGNuBARKMSaWFZcmXuIUYKDWUmE1+cbUIg3JbGyKrUoP76oNCe1+BBj MtCfE5mlRJPzgQkqryTe0NjEzMjSyMzCyMTcnDRhJXHeA63WgUIC6YklqdmpqQWpRTBbmDg4 pRoYj79eevYYd+EZZ2WOsJbwqJilMb1ZMcvvxjxefiZ9RbHTkWW5e96s87Fu6qj2XXBlRkzU xCf8b1OkJi/82vFQtyzy6MZYw1O8Uz14/3Dw7+CzO//bs29955vrr6J+KZ+bmtgt+DhHyKj5 bdUaxuooheY1391PL7idyv+To1hvl9hF7v7oBaK6SizFGYmGWsxFxYkA7qiCgUYDAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected X-Original-Sender: jg1.han@samsung.com X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: best guess record for domain of jg1.han@samsung.com designates 203.254.224.33 as permitted sender) smtp.mail=jg1.han@samsung.com Reply-To: rtc-linux@googlegroups.com Precedence: list Mailing-list: list rtc-linux@googlegroups.com; contact rtc-linux+owners@googlegroups.com List-ID: X-Google-Group-Id: 712029733259 List-Post: , List-Help: , List-Archive: Sender: rtc-linux@googlegroups.com List-Subscribe: , List-Unsubscribe: , Content-type: text/plain; charset=ISO-8859-1 Content-language: ko Use devm_*() functions to make cleanup paths simpler. Signed-off-by: Jingoo Han --- drivers/rtc/rtc-rp5c01.c | 26 ++++++++------------------ 1 files changed, 8 insertions(+), 18 deletions(-) diff --git a/drivers/rtc/rtc-rp5c01.c b/drivers/rtc/rtc-rp5c01.c index d25d2f6..873c689 100644 --- a/drivers/rtc/rtc-rp5c01.c +++ b/drivers/rtc/rtc-rp5c01.c @@ -230,15 +230,13 @@ static int __init rp5c01_rtc_probe(struct platform_device *dev) if (!res) return -ENODEV; - priv = kzalloc(sizeof(*priv), GFP_KERNEL); + priv = devm_kzalloc(&dev->dev, sizeof(*priv), GFP_KERNEL); if (!priv) return -ENOMEM; - priv->regs = ioremap(res->start, resource_size(res)); - if (!priv->regs) { - error = -ENOMEM; - goto out_free_priv; - } + priv->regs = devm_ioremap(&dev->dev, res->start, resource_size(res)); + if (!priv->regs) + return -ENOMEM; sysfs_bin_attr_init(&priv->nvram_attr); priv->nvram_attr.attr.name = "nvram"; @@ -251,27 +249,22 @@ static int __init rp5c01_rtc_probe(struct platform_device *dev) platform_set_drvdata(dev, priv); - rtc = rtc_device_register("rtc-rp5c01", &dev->dev, &rp5c01_rtc_ops, + rtc = devm_rtc_device_register(&dev->dev, "rtc-rp5c01", &rp5c01_rtc_ops, THIS_MODULE); if (IS_ERR(rtc)) { error = PTR_ERR(rtc); - goto out_unmap; + goto out; } priv->rtc = rtc; error = sysfs_create_bin_file(&dev->dev.kobj, &priv->nvram_attr); if (error) - goto out_unregister; + goto out; return 0; -out_unregister: - rtc_device_unregister(rtc); -out_unmap: +out: platform_set_drvdata(dev, NULL); - iounmap(priv->regs); -out_free_priv: - kfree(priv); return error; } @@ -280,9 +273,6 @@ static int __exit rp5c01_rtc_remove(struct platform_device *dev) struct rp5c01_priv *priv = platform_get_drvdata(dev); sysfs_remove_bin_file(&dev->dev.kobj, &priv->nvram_attr); - rtc_device_unregister(priv->rtc); - iounmap(priv->regs); - kfree(priv); return 0; }