Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1311368 > unrolled thread

Re: [PATCH v3] i2c: imx: make bus recovery through pinctrl optional

Started byLi Yang <leoli@freescale.com>
First post2016-01-18 09:30 +0100
Last post2016-01-18 09:40 +0100
Articles 2 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [PATCH v3] i2c: imx: make bus recovery through pinctrl optional Li Yang <leoli@freescale.com> - 2016-01-18 09:30 +0100
    Re: [PATCH v3] i2c: imx: make bus recovery through pinctrl optional Uwe Kleine-König   <u.kleine-koenig@pengutronix.de> - 2016-01-18 09:40 +0100

#1311368 — Re: [PATCH v3] i2c: imx: make bus recovery through pinctrl optional

FromLi Yang <leoli@freescale.com>
Date2016-01-18 09:30 +0100
SubjectRe: [PATCH v3] i2c: imx: make bus recovery through pinctrl optional
Message-ID<qSdmi-6qu-5@gated-at.bofh.it>
On Fri, Jan 15, 2016 at 5:03 PM, Uwe Kleine-König
<u.kleine-koenig@pengutronix.de> wrote:
> Hello Li,
>
> On Fri, Jan 15, 2016 at 04:46:06PM +0800, Li Yang wrote:
>> On Fri, Jan 15, 2016 at 3:53 PM, Uwe Kleine-König
>> <u.kleine-koenig@pengutronix.de> wrote:
>> >> -     i2c_imx_init_recovery_info(i2c_imx, pdev);
>> >> +     if (IS_ERR_OR_NULL(i2c_imx->pinctrl))
>> >
>> > I'd prefer to set i2c_imx->pinctrl to NULL if it's not used and then use
>> >
>> >         if (!i2c_imx->pinctrl)
>> >
>> > here. (Or maybe make i2c_imx_init_recovery_info aware of this situation
>> > to keep the caller simple?)
>>
>> Setting not used pointer to NULL might be a good coding practice
>> generally.  But in this case neither the driver nor gpio framework
>> checks if the pinctrl is NULL before accessing it.  We still need the
>> driver to make sure pinctrl is not used in this situation.  The
>> benefit of the proposed change seems to be pretty limited.  :)
>
> At least it gets rid of IS_ERR_OR_NULL which is used wrongly more often
> than not.

It's true that this API is not used a lot.  Are you suggesting that it
is poorly designed and probably should be removed?  But I still don't
quite get the point why it tends to be wrongly used.  Do you consider
the use in this patch a wrongly used case?

Regards,
Leo

[toc] | [next] | [standalone]


#1311377

FromUwe Kleine-König <u.kleine-koenig@pengutronix.de>
Date2016-01-18 09:40 +0100
Message-ID<qSdvX-6ua-13@gated-at.bofh.it>
In reply to#1311368
Hello Leo,

On Mon, Jan 18, 2016 at 04:22:51PM +0800, Li Yang wrote:
> On Fri, Jan 15, 2016 at 5:03 PM, Uwe Kleine-König
> <u.kleine-koenig@pengutronix.de> wrote:
> > On Fri, Jan 15, 2016 at 04:46:06PM +0800, Li Yang wrote:
> >> On Fri, Jan 15, 2016 at 3:53 PM, Uwe Kleine-König
> >> <u.kleine-koenig@pengutronix.de> wrote:
> >> >> -     i2c_imx_init_recovery_info(i2c_imx, pdev);
> >> >> +     if (IS_ERR_OR_NULL(i2c_imx->pinctrl))
> >> >
> >> > I'd prefer to set i2c_imx->pinctrl to NULL if it's not used and then use
> >> >
> >> >         if (!i2c_imx->pinctrl)
> >> >
> >> > here. (Or maybe make i2c_imx_init_recovery_info aware of this situation
> >> > to keep the caller simple?)
> >>
> >> Setting not used pointer to NULL might be a good coding practice
> >> generally.  But in this case neither the driver nor gpio framework
> >> checks if the pinctrl is NULL before accessing it.  We still need the
> >> driver to make sure pinctrl is not used in this situation.  The
> >> benefit of the proposed change seems to be pretty limited.  :)
> >
> > At least it gets rid of IS_ERR_OR_NULL which is used wrongly more often
> > than not.
> 
> It's true that this API is not used a lot.  Are you suggesting that it
> is poorly designed and probably should be removed?  But I still don't
> quite get the point why it tends to be wrongly used.  Do you consider
> the use in this patch a wrongly used case?

See http://permalink.gmane.org/gmane.linux.ports.arm.omap/97874 for an
earlier discussion. Having said that, I think at the moment there is no
such bug in this case, still I agree with Russell that IS_ERR_OR_NULL
isn't nice and so would prefer not to add new instances.

Best regards
Uwe


-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web