From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.2 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id F0880C433E0 for ; Wed, 3 Jun 2020 14:01:02 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id AA1F8206A2 for ; Wed, 3 Jun 2020 14:01:02 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org AA1F8206A2 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=bootlin.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 49cVth1nZtzDqRj for ; Thu, 4 Jun 2020 00:01:00 +1000 (AEST) Authentication-Results: lists.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=bootlin.com (client-ip=217.70.183.198; helo=relay6-d.mail.gandi.net; envelope-from=miquel.raynal@bootlin.com; receiver=) Authentication-Results: lists.ozlabs.org; dmarc=none (p=none dis=none) header.from=bootlin.com X-Greylist: delayed 101 seconds by postgrey-1.36 at bilbo; Wed, 03 Jun 2020 23:52:45 AEST Received: from relay6-d.mail.gandi.net (relay6-d.mail.gandi.net [217.70.183.198]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 49cVj90HzWzDqRS for ; Wed, 3 Jun 2020 23:52:42 +1000 (AEST) X-Originating-IP: 91.224.148.103 Received: from xps13 (unknown [91.224.148.103]) (Authenticated sender: miquel.raynal@bootlin.com) by relay6-d.mail.gandi.net (Postfix) with ESMTPSA id 3A7D9C0012; Wed, 3 Jun 2020 13:52:35 +0000 (UTC) Date: Wed, 3 Jun 2020 15:52:34 +0200 From: Miquel Raynal To: Boris Brezillon Subject: Re: [PATCH 03/10] mtd: rawnand: fsl_upm: Allocate the fsl_upm_nand object using devm_kzalloc() Message-ID: <20200603155234.4594f501@xps13> In-Reply-To: <20200603134922.1352340-4-boris.brezillon@collabora.com> References: <20200603134922.1352340-1-boris.brezillon@collabora.com> <20200603134922.1352340-4-boris.brezillon@collabora.com> Organization: Bootlin X-Mailer: Claws Mail 3.17.4 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Vignesh Raghavendra , Tudor Ambarus , Anton Vorontsov , Richard Weinberger , linux-mtd@lists.infradead.org, Paul Mackerras , linuxppc-dev@lists.ozlabs.org Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" Boris Brezillon wrote on Wed, 3 Jun 2020 15:49:15 +0200: > This simplifies the init error patch and remove function. path? Otherwise: Reviewed-by: Miquel Raynal > > Signed-off-by: Boris Brezillon > --- > drivers/mtd/nand/raw/fsl_upm.c | 18 ++++++------------ > 1 file changed, 6 insertions(+), 12 deletions(-) > > diff --git a/drivers/mtd/nand/raw/fsl_upm.c b/drivers/mtd/nand/raw/fsl_upm.c > index 6eba2f4a2f5a..9cf79c62ef22 100644 > --- a/drivers/mtd/nand/raw/fsl_upm.c > +++ b/drivers/mtd/nand/raw/fsl_upm.c > @@ -205,36 +205,34 @@ static int fun_probe(struct platform_device *ofdev) > int size; > int i; > > - fun = kzalloc(sizeof(*fun), GFP_KERNEL); > + fun = devm_kzalloc(&ofdev->dev, sizeof(*fun), GFP_KERNEL); > if (!fun) > return -ENOMEM; > > ret = of_address_to_resource(ofdev->dev.of_node, 0, &io_res); > if (ret) { > dev_err(&ofdev->dev, "can't get IO base\n"); > - goto err1; > + return ret; > } > > ret = fsl_upm_find(io_res.start, &fun->upm); > if (ret) { > dev_err(&ofdev->dev, "can't find UPM\n"); > - goto err1; > + return ret; > } > > prop = of_get_property(ofdev->dev.of_node, "fsl,upm-addr-offset", > &size); > if (!prop || size != sizeof(uint32_t)) { > dev_err(&ofdev->dev, "can't get UPM address offset\n"); > - ret = -EINVAL; > - goto err1; > + return -EINVAL; > } > fun->upm_addr_offset = *prop; > > prop = of_get_property(ofdev->dev.of_node, "fsl,upm-cmd-offset", &size); > if (!prop || size != sizeof(uint32_t)) { > dev_err(&ofdev->dev, "can't get UPM command offset\n"); > - ret = -EINVAL; > - goto err1; > + return -EINVAL; > } > fun->upm_cmd_offset = *prop; > > @@ -244,7 +242,7 @@ static int fun_probe(struct platform_device *ofdev) > fun->mchip_count = size / sizeof(uint32_t); > if (fun->mchip_count >= NAND_MAX_CHIPS) { > dev_err(&ofdev->dev, "too much multiple chips\n"); > - goto err1; > + return -EINVAL; > } > for (i = 0; i < fun->mchip_count; i++) > fun->mchip_offsets[i] = be32_to_cpu(prop[i]); > @@ -306,8 +304,6 @@ static int fun_probe(struct platform_device *ofdev) > break; > gpio_free(fun->rnb_gpio[i]); > } > -err1: > - kfree(fun); > > return ret; > } > @@ -330,8 +326,6 @@ static int fun_remove(struct platform_device *ofdev) > gpio_free(fun->rnb_gpio[i]); > } > > - kfree(fun); > - > return 0; > } >