From: Jonathan Cameron <Jonathan.Cameron@Huawei.com>
To: "Peng Fan (OSS)" <peng.fan@oss.nxp.com>
Cc: <linus.walleij@linaro.org>, <dan.carpenter@linaro.org>,
<linux-gpio@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>,
<linux-kernel@vger.kernel.org>, <aisheng.dong@nxp.com>,
<festevam@gmail.com>, <shawnguo@kernel.org>,
<kernel@pengutronix.de>, <u.kleine-koenig@pengutronix.de>,
Peng Fan <peng.fan@nxp.com>
Subject: Re: [PATCH V3 1/3] pinctrl: ti: iodelay: Use scope based of_node_put() cleanups
Date: Mon, 1 Jul 2024 13:54:40 +0100 [thread overview]
Message-ID: <20240701135440.00004d67@Huawei.com> (raw)
In-Reply-To: <20240627131721.678727-2-peng.fan@oss.nxp.com>
On Thu, 27 Jun 2024 21:17:19 +0800
"Peng Fan (OSS)" <peng.fan@oss.nxp.com> wrote:
> From: Peng Fan <peng.fan@nxp.com>
>
> Use scope based of_node_put() cleanup to simplify code.
>
> Signed-off-by: Peng Fan <peng.fan@nxp.com>
A couple of comments on additional cleanups - primarily
using return dev_err_probe() - enabled by using scope based
cleanup to avoid the goto dance.
Either way LGTM
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> ---
> drivers/pinctrl/ti/pinctrl-ti-iodelay.c | 43 +++++++++----------------
> 1 file changed, 15 insertions(+), 28 deletions(-)
>
> diff --git a/drivers/pinctrl/ti/pinctrl-ti-iodelay.c b/drivers/pinctrl/ti/pinctrl-ti-iodelay.c
> index ef9758638501..f5e5a23d2226 100644
> --- a/drivers/pinctrl/ti/pinctrl-ti-iodelay.c
> +++ b/drivers/pinctrl/ti/pinctrl-ti-iodelay.c
> @@ -822,53 +822,48 @@ MODULE_DEVICE_TABLE(of, ti_iodelay_of_match);
> static int ti_iodelay_probe(struct platform_device *pdev)
> {
> struct device *dev = &pdev->dev;
> - struct device_node *np = of_node_get(dev->of_node);
> + struct device_node *np __free(device_node) = of_node_get(dev->of_node);
> struct resource *res;
> struct ti_iodelay_device *iod;
> - int ret = 0;
> + int ret;
>
> if (!np) {
> - ret = -EINVAL;
> dev_err(dev, "No OF node\n");
> - goto exit_out;
> + return -EINVAL;
Whilst you are here can use more compact
return dev_err_probe(dev, -EINVAL, "No OF node\n");
for all error prints in a probe() function.
They do various nice things on deferred probe but are
useful more generally.
> }
>
> iod = devm_kzalloc(dev, sizeof(*iod), GFP_KERNEL);
> - if (!iod) {
> - ret = -ENOMEM;
> - goto exit_out;
> - }
> + if (!iod)
> + return -ENOMEM;
> +
> iod->dev = dev;
> iod->reg_data = device_get_match_data(dev);
> if (!iod->reg_data) {
> - ret = -EINVAL;
> dev_err(dev, "No DATA match\n");
> - goto exit_out;
> + return -EINVAL;
return dev_err_probe() works here as well and in
other cases below. It's an added bonus __free() magic often enables.
No idea why DATA is in capitals and to be honest it's not
a particularly useful error message. What data? :)
> }
> }
>
> /**
next prev parent reply other threads:[~2024-07-01 12:54 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-27 13:17 [PATCH V3 0/3] pinctrl: use scope based of_node_put Peng Fan (OSS)
2024-06-27 13:17 ` [PATCH V3 1/3] pinctrl: ti: iodelay: Use scope based of_node_put() cleanups Peng Fan (OSS)
2024-06-28 10:51 ` Uwe Kleine-König
2024-06-29 1:32 ` Peng Fan
2024-06-29 8:08 ` Uwe Kleine-König
2024-07-01 12:54 ` Jonathan Cameron [this message]
2024-06-27 13:17 ` [PATCH V3 2/3] pinctrl: equilibrium: " Peng Fan (OSS)
2024-07-01 12:56 ` Jonathan Cameron
2024-06-27 13:17 ` [PATCH V3 3/3] pinctrl: freescale: " Peng Fan (OSS)
2024-07-01 12:59 ` Jonathan Cameron
2024-07-03 12:42 ` [PATCH V3 0/3] pinctrl: use scope based of_node_put Linus Walleij
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240701135440.00004d67@Huawei.com \
--to=jonathan.cameron@huawei.com \
--cc=aisheng.dong@nxp.com \
--cc=dan.carpenter@linaro.org \
--cc=festevam@gmail.com \
--cc=kernel@pengutronix.de \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=peng.fan@nxp.com \
--cc=peng.fan@oss.nxp.com \
--cc=shawnguo@kernel.org \
--cc=u.kleine-koenig@pengutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.