The Linux Kernel Mailing List
 help / color / mirror / Atom feed
* [RFC patch 0/3] Support for irq chips on slow busses (i2c, spi) - V2
@ 2009-08-15 17:48 Thomas Gleixner
  2009-08-15 17:48 ` [RFC patch 1/3] genirq: Add oneshot support Thomas Gleixner
                   ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Thomas Gleixner @ 2009-08-15 17:48 UTC (permalink / raw)
  To: LKML
  Cc: Andrew Morton, Ingo Molnar, Peter Zijlstra, Mark Brown,
	Dmitry Torokhov, Trilok Soni, Pavel Machek, Brian Swetland,
	Joonyoung Shim, m.szyprowski, t.fujak, kyungmin.park,
	David Brownell, Daniel Ribeiro, arve, Barry Song

The support for irq chips on slow busses eg. i2c, spi has been
discussed to great length several times. Most of the details can be
found in this thread: http://lkml.org/lkml/2009/7/21/266

The following patch series is a round up of the various patch snippets
sent out during the discussion and the ideas we agreed on.

This is version 2 of the patch series. The main changes vs. V1
(http://lkml.org/lkml/2009/8/13/348)

 - patch 1/3: Provide a generic primary handler function which just
   	      returns IRQ_WAKE_THREAD as this is all what oneshot
   	      threaded handlers need to avoid useless copies of that
   	      all over the place.

 - patch 2/3: Reverted to the initial idea of conditional locking to
   	      allow drivers to be used for both slowbus and standard
   	      interrupts without any magic in the driver code

 - patch 3/3: To avoid different driver code for nested or separate
   	      thread handling a new function is provided which allows
   	      to mark the interrupt nested. request_threaded_irq()
   	      creates a separate thread only when the flag is not set.

Please have a thorough look and hopefully a test ride on your
favourite slowbus irq chip implementation so we can get this into .32

Thanks,

	tglx





^ permalink raw reply	[flat|nested] 9+ messages in thread
* [RFC patch 0/3] Support for irq chips on slow busses (i2c, spi)
@ 2009-08-13 19:40 Thomas Gleixner
  2009-08-13 19:40 ` [RFC patch 3/3] genirq: Support nested threaded irq handling Thomas Gleixner
  0 siblings, 1 reply; 9+ messages in thread
From: Thomas Gleixner @ 2009-08-13 19:40 UTC (permalink / raw)
  To: LKML
  Cc: Linus Torvalds, Andrew Morton, Ingo Molnar, Peter Zijlstra,
	Mark Brown, Dmitry Torokhov, Trilok Soni, Pavel Machek,
	Brian Swetland, Joonyoung Shim, m.szyprowski, t.fujak,
	kyungmin.park, David Brownell, Daniel Ribeiro, arve, Barry Song

The support for irq chips on slow busses eg. i2c, spi has been
discussed to great length several times. Most of the details can be
found in this thread: http://lkml.org/lkml/2009/7/21/266

The following patch series is a round up of the various patch snippets
sent out during the discussion and the ideas we agreed on.

There are some subtle differences to the initial test patches:

1) Instead of using a separate flow handler we allow to request the
one shot feature with a flag on request_irq and integrate the oneshot
feature into the existing level/edge handlers.

2) Instead of conditional locking which makes the patch smaller but
hides the already known fact that a device sits behind a slow irq chip
I implemented a set of separate management functions (see patch
2/3). The initial idea with the conditional locking can be found here:
http://lkml.org/lkml/2009/7/22/163

3) patch 3/3 implements a helper function which allows the
demultiplexing thread to call the demux handlers in its own thread
context with out creating a separate thread for each subdevice
interrupt. The device driver needs to request the interrupt via
request_nested_slowbus_irq() to prevent the creation of the extra
thread.

Please have a thorough look and hopefully a test ride on your
favourite slowbus irq chip implementation so we can get this into .32

Thanks,

	tglx


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2009-08-24 19:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-15 17:48 [RFC patch 0/3] Support for irq chips on slow busses (i2c, spi) - V2 Thomas Gleixner
2009-08-15 17:48 ` [RFC patch 1/3] genirq: Add oneshot support Thomas Gleixner
2009-08-15 19:42   ` Dmitry Torokhov
2009-08-15 20:00     ` Thomas Gleixner
2009-08-15 17:48 ` [RFC patch 2/3] genirq: Add buslock support Thomas Gleixner
2009-08-15 17:48 ` [RFC patch 3/3] genirq: Support nested threaded irq handling Thomas Gleixner
2009-08-15 22:19 ` [RFC patch 0/3] Support for irq chips on slow busses (i2c, spi) - V2 Pavel Machek
2009-08-24 19:38 ` Mark Brown
  -- strict thread matches above, loose matches on Subject: below --
2009-08-13 19:40 [RFC patch 0/3] Support for irq chips on slow busses (i2c, spi) Thomas Gleixner
2009-08-13 19:40 ` [RFC patch 3/3] genirq: Support nested threaded irq handling Thomas Gleixner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox