linux-i2c.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: <Tharunkumar.Pasumarthi@microchip.com>
To: <andriy.shevchenko@linux.intel.com>
Cc: <rafal@milecki.pl>, <wsa@kernel.org>, <krzk@kernel.org>,
	<sven@svenpeter.dev>, <robh@kernel.org>,
	<jarkko.nikula@linux.intel.com>, <semen.protsenko@linaro.org>,
	<jsd@semihalf.com>, <linux-kernel@vger.kernel.org>,
	<UNGLinuxDriver@microchip.com>, <linux-i2c@vger.kernel.org>,
	<olof@lixom.net>, <arnd@arndb.de>
Subject: Re: [PATCH v2 i2c-master] i2c: microchip: pci1xxxx: Add driver for I2C host controller in multifunction endpoint of pci1xxxx switch
Date: Mon, 5 Sep 2022 03:43:59 +0000	[thread overview]
Message-ID: <ba61fb6349e8ca708b92cd869ccf3d1b33d4f39c.camel@microchip.com> (raw)
In-Reply-To: <YxIOWMqjP2+k7MPi@smile.fi.intel.com>

On Fri, 2022-09-02 at 17:08 +0300, Andy Shevchenko wrote:
> > > > +             if (buf)
> > > > +                     memcpy_toio((i2c->i2c_base + SMBUS_MST_BUF), buf,
> > > > transferlen);
> > > 
> > > Why do you need buf checks? Is your code can shoot itself in the foot?
> > 
> > Yes, buf will be passed as NULL in some cases. So, this check is required.
> 
> Can you show an excerpt of the caller which passes NULL?

During I2C read, for writing just the client address without passing any other
data, the buf pointer is set as NULL in pci1xxxx_i2c_buffer_write API in the
"pci1xxxx_i2c_read" function

> > > Each long sleep (20 ms is quite long) has to be explained. But this entire
> > > loop
> > > looks like a band-aid of lack of IRQ or so. Why do you need to poll?
> > 
> > This handling takes care of special case when system is put to suspend when
> > i2c
> > transfer is progress in driver. We will wait until transfer completes.
> 
> This should be at least a comment in the code.

Okay, I will add comment.
> > 

> > > You can't mix devm_ and non-devm_ in such manner. It's asking for troubles
> > > at
> > > ->remove() or unbind stages.
> > 
> > I am not getting this comment. Can you kindly explain more.
> > 
> > > > +             return ret;
> 
> Explanations [1] & [2]. Example how to workaround [3].
> 
> [1]: https://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1949091.html
> [2]: https://lore.kernel.org/all/YXktrG1LhK5tj2uF@smile.fi.intel.com/
> [3]: https://www.spinics.net/lists/kernel/msg4433985.html

Okay. I will update code as per this logic in the upcoming version of the patch.

> > > After fixing above, convert the error messages to use
> > > 
> > >         return dev_err_probe(...);
> > > 
> > > pattern.
> > 
> > Okay.
> 
> Will be result of above fix.

Okay

> > > 
> > > This will be gone.
> > 
> > I am not getting this comment also.
> 
> See above.

Okay




Thanks,
Tharun Kumar P

      reply	other threads:[~2022-09-05  3:44 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-09-01  1:36 [PATCH v2 i2c-master] i2c: microchip: pci1xxxx: Add driver for I2C host controller in multifunction endpoint of pci1xxxx switch Tharun Kumar P
2022-09-01 18:47 ` Andy Shevchenko
2022-09-02 11:31   ` Tharunkumar.Pasumarthi
2022-09-02 14:08     ` Andy Shevchenko
2022-09-05  3:43       ` Tharunkumar.Pasumarthi [this message]

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=ba61fb6349e8ca708b92cd869ccf3d1b33d4f39c.camel@microchip.com \
    --to=tharunkumar.pasumarthi@microchip.com \
    --cc=UNGLinuxDriver@microchip.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=arnd@arndb.de \
    --cc=jarkko.nikula@linux.intel.com \
    --cc=jsd@semihalf.com \
    --cc=krzk@kernel.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=olof@lixom.net \
    --cc=rafal@milecki.pl \
    --cc=robh@kernel.org \
    --cc=semen.protsenko@linaro.org \
    --cc=sven@svenpeter.dev \
    --cc=wsa@kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).