public inbox for linux-i2c@vger.kernel.org
 help / color / mirror / Atom feed
From: Stephen Warren <swarren@wwwdotorg.org>
To: Peter Rosin <peda@axentia.se>
Cc: linux-kernel@vger.kernel.org, Wolfram Sang <wsa@the-dreams.de>,
	Stephen Warren <swarren@nvidia.com>,
	linux-i2c@vger.kernel.org
Subject: Re: [PATCH 1/2] i2c: mux: pinctrl: remove platform_data
Date: Wed, 2 Aug 2017 13:05:09 -0600	[thread overview]
Message-ID: <bcf82834-7bdd-8a55-2746-389144d68e64@wwwdotorg.org> (raw)
In-Reply-To: <20170802072728.24586-2-peda@axentia.se>

On 08/02/2017 01:27 AM, Peter Rosin wrote:
> No platform (at least no upstreamed platform) has ever used this
> platform_data. Just drop it and simplify the code.

> diff --git a/drivers/i2c/muxes/i2c-mux-pinctrl.c b/drivers/i2c/muxes/i2c-mux-pinctrl.c

>   static int i2c_mux_pinctrl_probe(struct platform_device *pdev)

(eliding some - lines for brevity in the following):

> +	for (i = 0; i < num_names; i++) {
> +		ret = of_property_read_string_index(np, "pinctrl-names", i,
> +						    &name);
> +		if (ret < 0) {
> +			dev_err(dev, "Cannot parse pinctrl-names: %d\n", ret);
> +			goto err_put_parent;
> +		}
> +
> +		mux->states[i] = pinctrl_lookup_state(mux->pinctrl, name);
>   		if (IS_ERR(mux->states[i])) {
>   			ret = PTR_ERR(mux->states[i]);
> +			dev_err(dev, "Cannot look up pinctrl state %s: %d\n",
> +				name, ret);
> +			goto err_put_parent;

This error path doesn't undo pinctrl_lookup_state. Is that OK? I think 
so, but wanted to check.

> +	muxc = i2c_mux_alloc(parent, dev, num_names,
> +			     sizeof(*mux) + num_names * sizeof(*mux->states),
> +			     0, i2c_mux_pinctrl_select, NULL);
...
> +	/* Do not add any adapter for the idle state (if it's there at all). */
> +	for (i = 0; i < num_names - !!mux->state_idle; i++) {
> +		ret = i2c_mux_add_adapter(muxc, 0, i, 0);

Is it OK to potentially add one fewer adapter here than the child bus 
count passed to i2c_mux_alloc() earlier? The old code specifically 
excluded the idle state (if present) from the child bus count passed to 
i2c_mux_alloc(), which was aided by the fact that it parsed the DT 
before calling i2c_mux_alloc().

If those two things are OK, then:
Reviewed-by: Stephen Warren <swarren@nvidia.com>

  reply	other threads:[~2017-08-02 19:05 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-02  7:27 [PATCH 0/2] i2c: mux: pinctrl: remove platform_data and cleanup Peter Rosin
2017-08-02  7:27 ` [PATCH 1/2] i2c: mux: pinctrl: remove platform_data Peter Rosin
2017-08-02 19:05   ` Stephen Warren [this message]
2017-08-02 21:19     ` Peter Rosin
2017-08-12 14:12   ` Wolfram Sang
2017-08-02  7:27 ` [PATCH 2/2] i2c: mux: pinctrl: drop the idle_state member Peter Rosin
2017-08-02 19:06   ` Stephen Warren
2017-08-02 21:25     ` Peter Rosin
2017-08-02 22:50       ` Stephen Warren
2017-08-03  5:19         ` Peter Rosin
2017-08-03 21:41           ` Stephen Warren
2017-08-15  7:00 ` [PATCH 0/2] i2c: mux: pinctrl: remove platform_data and cleanup Peter Rosin

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=bcf82834-7bdd-8a55-2746-389144d68e64@wwwdotorg.org \
    --to=swarren@wwwdotorg.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peda@axentia.se \
    --cc=swarren@nvidia.com \
    --cc=wsa@the-dreams.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox