All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thierry Reding <thierry.reding@gmail.com>
To: Dmitry Osipenko <digetx@gmail.com>
Cc: Lee Jones <lee.jones@linaro.org>,
	Jonathan Hunter <jonathanh@nvidia.com>,
	linux-tegra@vger.kernel.org, linux-i2c@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1] mfd: tps6586x: Move interrupt handling into workqueue
Date: Mon, 14 May 2018 14:39:33 +0200	[thread overview]
Message-ID: <20180514123933.GI18312@ulmo> (raw)
In-Reply-To: <af2393f6-f4cd-13c8-01ef-760e90a660a0@gmail.com>

[-- Attachment #1: Type: text/plain, Size: 1525 bytes --]

On Mon, May 14, 2018 at 03:20:55PM +0300, Dmitry Osipenko wrote:
> On 14.05.2018 15:01, Dmitry Osipenko wrote:
> > On 14.05.2018 14:51, Thierry Reding wrote:
> >> On Mon, May 14, 2018 at 12:18:42AM +0300, Dmitry Osipenko wrote:
> >>> Reading of status register within the interrupt handler fails with -EAGAIN
> >>> if I2C is busy with handling some other request at the same time. Move the
> >>> actual interrupt handling into a workqueue to avoid the unfortunate I2C
> >>> failure and to avoid hanging CPU in interrupt up to 1 second (transfer
> >>> timeout in the Tegra I2C driver).
> >>>
> >>> Signed-off-by: Dmitry Osipenko <digetx@gmail.com>
> >>> ---
> >>>  drivers/mfd/tps6586x.c | 40 +++++++++++++++++++++++++++++-----------
> >>>  1 file changed, 29 insertions(+), 11 deletions(-)
> >>
> >> Could this not be achieved with a threaded interrupt handler?
> >>
> >> Thierry
> >>
> > 
> > Seems yes. I completely forgot about the threaded interrupt handlers existence.
> > Thank you very much for the suggestion, I'll try with the threaded IRQ and send
> > v2 if it will be fine.
> > 
> 
> Oh wait! TPS6586x driver already uses threaded interrupt handler, so everything
> should be fine in regards to the interrupt handling and this patch is obsolete.
> Thank you again for the good suggestion, then it's only the Tegra's I2C driver
> that causes trouble for the TPS6586x right now.

Heh... indeed. Sounds like the discussion that Wolfram pointed out is
the right way forward.

Thierry

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

      reply	other threads:[~2018-05-14 12:39 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-13 21:18 [PATCH v1] mfd: tps6586x: Move interrupt handling into workqueue Dmitry Osipenko
2018-05-14 11:51 ` Thierry Reding
2018-05-14 12:01   ` Dmitry Osipenko
2018-05-14 12:20     ` Dmitry Osipenko
2018-05-14 12:39       ` Thierry Reding [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=20180514123933.GI18312@ulmo \
    --to=thierry.reding@gmail.com \
    --cc=digetx@gmail.com \
    --cc=jonathanh@nvidia.com \
    --cc=lee.jones@linaro.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tegra@vger.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 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.