From patchwork Tue Apr 2 06:24:48 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sachin Kamat X-Patchwork-Id: 232891 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from mail-ye0-f192.google.com (mail-ye0-f192.google.com [209.85.213.192]) (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 56FB32C00E1 for ; Tue, 2 Apr 2013 17:37:01 +1100 (EST) Received: by mail-ye0-f192.google.com with SMTP id r11sf35803yen.19 for ; Mon, 01 Apr 2013 23:36:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20120806; h=x-received:mime-version:x-beenthere:x-received:received-spf :x-received:from:to:cc:subject:date:message-id:x-mailer :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; bh=dKpwCCiT3kfOIJ1kl085AMrDPYpnLtQkyNPzmZeFPTc=; b=HOuGItF4Xi39SohBQ+SzivmllS+6Sfu7KOryUnoT5zmaeKe1Trf2kUWZ8AHAEXBybL FTPouPKetry/gOlbfz9yDcUT5SLKT82GCP3WDchYu+V19wlLDHZoEurSfQttnnNe1rsC e6IIQzbQcp14P+dPzwhAXLf2PzAgNwrCAZ/45ENX5n4nbMxSXbGaL33rQ8TJ/qEPWpJk +9wp4dUbM5T163wRYYlyS7psTCpU4iX9JhPuiGUjb3VKwULGzXAKf0Jzn5RVu0mNdpXr F0aTy6WT1bYkk/17sr30lpNpxbk0RnGQq1s4APjowIiOFbLIpwOj/3eW7lhhqKnSJM80 Fu6w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:x-beenthere:x-received:received-spf :x-received:from:to:cc:subject:date:message-id:x-mailer :x-gm-message-state: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; bh=dKpwCCiT3kfOIJ1kl085AMrDPYpnLtQkyNPzmZeFPTc=; b=TGvvPO02WXdQZKFCyXTJ6dPNYxWW8ieEIM0LwlMv0Tfv3K8Be8eC/vkowy0tnl5BBX E6+BTqrfdgJ8o1VQVxj6kuSkM4+/HcFzG5JS26pnVaTlhn0YNCvarQOgXF20YpHZj+Gc WrxHsV3E+ABOPZQybqeU7NtYscBnMR4pzNXKKVeEqNleRjZ16Wm2OHWLYUyo/4F6riB3 AeqbR0PlrBbKj6yJJQjn0tJl6zvqk2C9IRRw1q9o/bn6NTaV3N5ZAAEi+5jL+YP0cPCq RTd3rsv3He/BhtTcTgJ6WzIMuf73WKwS16LXfKOuNDDC9K7QBIc1/8gD6fTs3h/bVdod G9sA== X-Received: by 10.50.170.68 with SMTP id ak4mr1493812igc.1.1364884617827; Mon, 01 Apr 2013 23:36:57 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: rtc-linux@googlegroups.com Received: by 10.50.203.70 with SMTP id ko6ls1540930igc.36.canary; Mon, 01 Apr 2013 23:36:56 -0700 (PDT) X-Received: by 10.66.227.72 with SMTP id ry8mr2753254pac.30.1364884616914; Mon, 01 Apr 2013 23:36:56 -0700 (PDT) Received: from mail-pd0-f179.google.com (mail-pd0-f179.google.com [209.85.192.179]) by gmr-mx.google.com with ESMTPS id ty9si76835pbc.0.2013.04.01.23.36.56 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 01 Apr 2013 23:36:56 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.192.179 is neither permitted nor denied by best guess record for domain of sachin.kamat@linaro.org) client-ip=209.85.192.179; Received: by mail-pd0-f179.google.com with SMTP id x11so66296pdj.10 for ; Mon, 01 Apr 2013 23:36:56 -0700 (PDT) X-Received: by 10.68.34.230 with SMTP id c6mr22192288pbj.211.1364884616616; Mon, 01 Apr 2013 23:36:56 -0700 (PDT) Received: from linaro.sisodomain.com ([115.113.119.130]) by mx.google.com with ESMTPS id fc8sm1020265pad.21.2013.04.01.23.36.50 (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Mon, 01 Apr 2013 23:36:55 -0700 (PDT) From: Sachin Kamat To: rtc-linux@googlegroups.com Cc: a.zummo@towertech.it, akpm@linux-foundation.org, sachin.kamat@linaro.org, Haojian Zhuang Subject: [rtc-linux] [PATCH 1/8] drivers/rtc/rtc-88pm860x.c: Use devm_* APIs Date: Tue, 2 Apr 2013 11:54:48 +0530 Message-Id: <1364883895-20865-1-git-send-email-sachin.kamat@linaro.org> X-Mailer: git-send-email 1.7.9.5 X-Gm-Message-State: ALoCoQloFdFQerMoSQ1dOzlhLLpOSZbvg/jbp9CAbztieatQXbge6ShfScdCBeoj/gy3/WLbTZ5w X-Original-Sender: sachin.kamat@linaro.org X-Original-Authentication-Results: gmr-mx.google.com; spf=neutral (google.com: 209.85.192.179 is neither permitted nor denied by best guess record for domain of sachin.kamat@linaro.org) smtp.mail=sachin.kamat@linaro.org 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: , devm_* functions are device managed and make cleanup code simpler. Signed-off-by: Sachin Kamat Cc: Haojian Zhuang Acked-by: Haojian Zhuang --- drivers/rtc/rtc-88pm860x.c | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/drivers/rtc/rtc-88pm860x.c b/drivers/rtc/rtc-88pm860x.c index f663746..0f2b91b 100644 --- a/drivers/rtc/rtc-88pm860x.c +++ b/drivers/rtc/rtc-88pm860x.c @@ -318,14 +318,14 @@ static int pm860x_rtc_probe(struct platform_device *pdev) pdata = pdev->dev.platform_data; - info = kzalloc(sizeof(struct pm860x_rtc_info), GFP_KERNEL); + info = devm_kzalloc(&pdev->dev, sizeof(struct pm860x_rtc_info), + GFP_KERNEL); if (!info) return -ENOMEM; info->irq = platform_get_irq(pdev, 0); if (info->irq < 0) { dev_err(&pdev->dev, "No IRQ resource!\n"); - ret = -EINVAL; - goto out; + return info->irq; } info->chip = chip; @@ -333,12 +333,13 @@ static int pm860x_rtc_probe(struct platform_device *pdev) info->dev = &pdev->dev; dev_set_drvdata(&pdev->dev, info); - ret = request_threaded_irq(info->irq, NULL, rtc_update_handler, - IRQF_ONESHOT, "rtc", info); + ret = devm_request_threaded_irq(&pdev->dev, info->irq, NULL, + rtc_update_handler, IRQF_ONESHOT, "rtc", + info); if (ret < 0) { dev_err(chip->dev, "Failed to request IRQ: #%d: %d\n", info->irq, ret); - goto out; + return ret; } /* set addresses of 32-bit base value for RTC time */ @@ -350,7 +351,7 @@ static int pm860x_rtc_probe(struct platform_device *pdev) ret = pm860x_rtc_read_time(&pdev->dev, &tm); if (ret < 0) { dev_err(&pdev->dev, "Failed to read initial time.\n"); - goto out_rtc; + return ret; } if ((tm.tm_year < 70) || (tm.tm_year > 138)) { tm.tm_year = 70; @@ -362,7 +363,7 @@ static int pm860x_rtc_probe(struct platform_device *pdev) ret = pm860x_rtc_set_time(&pdev->dev, &tm); if (ret < 0) { dev_err(&pdev->dev, "Failed to set initial time.\n"); - goto out_rtc; + return ret; } } rtc_tm_to_time(&tm, &ticks); @@ -373,12 +374,12 @@ static int pm860x_rtc_probe(struct platform_device *pdev) } } - info->rtc_dev = rtc_device_register("88pm860x-rtc", &pdev->dev, + info->rtc_dev = devm_rtc_device_register(&pdev->dev, "88pm860x-rtc", &pm860x_rtc_ops, THIS_MODULE); ret = PTR_ERR(info->rtc_dev); if (IS_ERR(info->rtc_dev)) { dev_err(&pdev->dev, "Failed to register RTC device: %d\n", ret); - goto out_rtc; + return ret; } /* @@ -405,11 +406,6 @@ static int pm860x_rtc_probe(struct platform_device *pdev) device_init_wakeup(&pdev->dev, 1); return 0; -out_rtc: - free_irq(info->irq, info); -out: - kfree(info); - return ret; } static int pm860x_rtc_remove(struct platform_device *pdev) @@ -423,9 +419,6 @@ static int pm860x_rtc_remove(struct platform_device *pdev) #endif /* VRTC_CALIBRATION */ platform_set_drvdata(pdev, NULL); - rtc_device_unregister(info->rtc_dev); - free_irq(info->irq, info); - kfree(info); return 0; }