From: Dmitry Torokhov <dmitry.torokhov@gmail.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>,
Trilok Soni <soni.trilok@gmail.com>, Pavel Machek <pavel@ucw.cz>,
Arve Hj?nnev?g <arve@android.com>,
kernel list <linux-kernel@vger.kernel.org>,
Brian Swetland <swetland@google.com>,
linux-input@vger.kernel.org, Andrew Morton <akpm@osdl.org>,
linux-i2c@vger.kernel.org,
Joonyoung Shim <jy0922.shim@samsung.com>,
m.szyprowski@samsung.com, t.fujak@samsung.com,
kyungmin.park@samsung.com, David Brownell <david-b@pacbell.net>,
Peter Zijlstra <peterz@infradead.org>
Subject: Re: Threaded interrupts for synaptic touchscreen in HTC dream
Date: Tue, 21 Jul 2009 13:58:41 -0700 [thread overview]
Message-ID: <20090721205841.GA7755@dtor-d630.eng.vmware.com> (raw)
In-Reply-To: <alpine.LFD.2.00.0907212225030.2813@localhost.localdomain>
On Tue, Jul 21, 2009 at 10:30:26PM +0200, Thomas Gleixner wrote:
> On Tue, 21 Jul 2009, Dmitry Torokhov wrote:
>
> > On Tue, Jul 21, 2009 at 01:49:33PM +0100, Mark Brown wrote:
> > > On Tue, Jul 21, 2009 at 06:00:07PM +0530, Trilok Soni wrote:
> > >
> > > > Hopefully, this thread can give all details about threaded irq discussion.
> > >
> > > > http://lkml.org/lkml/2009/2/27/255
> > >
> > > Yes, I'm aware of that - I read it at the time. It seemed to peter out
> > > without any satisfactory solution, unfortunately. There's two separate
> > > issues here:
> > >
> > > - Ordinary devices on interrupt driven or slow buses like I2C. These
> > > need something along the lines of request_threaded_irq() that's allows
> > > them to schedule the main IRQ handler outside hardirq context so
> > > that they can interact with the device. They need to do something in
> > > hardirq context to disable the interrupt if it's level triggered but
> > > most of the time the only option they've got is to disable the IRQ
> > > and reenable it when the worker thread is done. This is the issue
> > > here.
>
> There is already a sane solution to the problem:
>
> See http://lkml.org/lkml/2009/7/17/174
>
> > > My immediate thought when I noticed this was that we should probably
> > > fix request_threaded_irq() so that it's useful for them; I'd been
> > > intending to do some digging and try to understand why it is
> > > currently implemented as it is.
>
> What's to fix there ?
>
duisable_irq_nosync() in the hard interrupt handler stops the thread
handler from running. Unfortunately there are devices where it is the
only thing we can do in the hard interrupt.
--
Dmitry
next prev parent reply other threads:[~2009-07-21 20:58 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20090714100634.GA4054@elf.ucw.cz>
2009-07-14 10:20 ` Support for synaptic touchscreen in HTC dream Trilok Soni
[not found] ` <5d5443650907140320w334864f4uc1ee13ed32fdb874-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-15 13:36 ` Pavel Machek
[not found] ` <20090715133627.GA2538-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2009-07-15 17:33 ` Trilok Soni
[not found] ` <5d5443650907151033w36008b71pe4b32bcea9489b75-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-21 10:21 ` Pavel Machek
2009-07-21 10:34 ` Trilok Soni
[not found] ` <5d5443650907210334k3f562cebsc665511a161c8639-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-08-08 13:40 ` Synaptics touchscreen for HTC Dream: check that smbus is available Pavel Machek
[not found] ` <20090808134049.GA13083-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2009-08-17 23:47 ` Andrew Morton
[not found] ` <20090817164759.43c39f2d.akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2009-08-21 14:23 ` Pavel Machek
2009-07-21 10:59 ` Threaded interrupts for synaptic touchscreen in HTC dream Pavel Machek
[not found] ` <20090721105924.GK4133-I/5MKhXcvmPrBKCeMvbIDA@public.gmane.org>
2009-07-21 11:36 ` Mark Brown
[not found] ` <20090721113642.GC13286-GFdadSzt00ze9xe1eoZjHA@public.gmane.org>
2009-07-21 12:18 ` Trilok Soni
2009-07-21 12:30 ` Trilok Soni
2009-07-21 12:49 ` Mark Brown
[not found] ` <20090721124933.GA5668-HF5t3jzXg/6ND3a5+9QAFujbO/Zr0HzV@public.gmane.org>
2009-07-21 16:04 ` Dmitry Torokhov
[not found] ` <20090721160436.GD4352-wUGeVx6es1+Q2O5dskk9LyLysJ1jNyTM@public.gmane.org>
2009-07-21 20:30 ` Thomas Gleixner
2009-07-21 20:58 ` Dmitry Torokhov [this message]
2009-07-21 21:48 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907212225030.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-21 22:25 ` Mark Brown
[not found] ` <20090721222547.GA1948-yzvPICuk2AATkU/dhu1WVueM+bqZidxxQQ4Iyu8u01E@public.gmane.org>
2009-07-22 10:44 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907221022190.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 12:18 ` Mark Brown
2009-07-22 12:58 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907221427380.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 13:30 ` Peter Zijlstra
2009-07-22 14:18 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907221615480.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 14:32 ` Mark Brown
[not found] ` <20090722143211.GB29404-HF5t3jzXg/6ND3a5+9QAFujbO/Zr0HzV@public.gmane.org>
2009-07-22 14:52 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907221645240.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 14:56 ` Mark Brown
2009-07-22 15:15 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907221715260.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 15:56 ` Mark Brown
2009-07-22 16:57 ` David Brownell
[not found] ` <200907220957.16499.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2009-07-22 21:04 ` Thomas Gleixner
[not found] ` <alpine.LFD.2.00.0907222226270.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 21:57 ` Arve Hjønnevåg
[not found] ` <d6200be20907221457r4e2f6d29g57146586fd13776a-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-07-22 22:15 ` David Brownell
2009-07-22 23:30 ` Arve Hjønnevåg
2009-07-22 22:09 ` David Brownell
2009-07-23 4:43 ` Dmitry Torokhov
2009-07-22 13:31 ` Mark Brown
2009-07-22 17:04 ` David Brownell
2009-07-22 17:08 ` Mark Brown
2009-07-22 16:04 ` Dmitry Torokhov
[not found] ` <20090722155811.GA2775-wUGeVx6es1+Q2O5dskk9LyLysJ1jNyTM@public.gmane.org>
2009-07-22 16:40 ` Thomas Gleixner
2009-07-22 16:57 ` Mark Brown
[not found] ` <alpine.LFD.2.00.0907221830410.2813-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2009-07-22 17:08 ` Dmitry Torokhov
2009-07-22 17:13 ` David Brownell
2009-07-22 16:51 ` David Brownell
2009-07-22 16:39 ` David Brownell
[not found] ` <200907220939.33399.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2009-07-22 16:43 ` Thomas Gleixner
2009-07-22 17:34 ` David Brownell
2009-07-22 16:50 ` Mark Brown
2009-07-22 17:41 ` David Brownell
2009-07-21 20:43 ` Daniel Ribeiro
2009-07-21 12:30 ` Mark Brown
2009-07-23 14:55 ` Pavel Machek
2009-07-15 21:33 ` Support " Arve Hjønnevåg
2009-07-21 10:40 ` Pavel Machek
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=20090721205841.GA7755@dtor-d630.eng.vmware.com \
--to=dmitry.torokhov@gmail.com \
--cc=akpm@osdl.org \
--cc=arve@android.com \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=david-b@pacbell.net \
--cc=jy0922.shim@samsung.com \
--cc=kyungmin.park@samsung.com \
--cc=linux-i2c@vger.kernel.org \
--cc=linux-input@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=m.szyprowski@samsung.com \
--cc=pavel@ucw.cz \
--cc=peterz@infradead.org \
--cc=soni.trilok@gmail.com \
--cc=swetland@google.com \
--cc=t.fujak@samsung.com \
--cc=tglx@linutronix.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;
as well as URLs for NNTP newsgroup(s).