<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/kernel/irq/Kconfig, branch v3.2.18</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/kernel/irq/Kconfig?h=v3.2.18</id>
<link rel='self' href='https://git.amat.us/linux/atom/kernel/irq/Kconfig?h=v3.2.18'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2011-07-28T07:32:04Z</updated>
<entry>
<title>irq: add irq_domain translation infrastructure</title>
<updated>2011-07-28T07:32:04Z</updated>
<author>
<name>Grant Likely</name>
<email>grant.likely@secretlab.ca</email>
</author>
<published>2011-07-26T09:19:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=08a543ad33fc188650801bd36eed4ffe272643e1'/>
<id>urn:sha1:08a543ad33fc188650801bd36eed4ffe272643e1</id>
<content type='text'>
This patch adds irq_domain infrastructure for translating from
hardware irq numbers to linux irqs.  This is particularly important
for architectures adding device tree support because the current
implementation (excluding PowerPC and SPARC) cannot handle
translation for more than a single interrupt controller.  irq_domain
supports device tree translation for any number of interrupt
controllers.

This patch converts x86, Microblaze, ARM and MIPS to use irq_domain
for device tree irq translation.  x86 is untested beyond compiling it,
irq_domain is enabled for MIPS and Microblaze, but the old behaviour is
preserved until the core code is modified to actually register an
irq_domain yet.  On ARM it works and is required for much of the new
ARM device tree board support.

PowerPC has /not/ been converted to use this new infrastructure.  It
is still missing some features before it can replace the virq
infrastructure already in powerpc (see documentation on
irq_domain_map/unmap for details).  Followup patches will add the
missing pieces and migrate PowerPC to use irq_domain.

SPARC has its own method of managing interrupts from the device tree
and is unaffected by this change.

Acked-by: Ralf Baechle &lt;ralf@linux-mips.org&gt;
Signed-off-by: Grant Likely &lt;grant.likely@secretlab.ca&gt;
</content>
</entry>
<entry>
<title>genirq: Make generic irq chip depend on CONFIG_GENERIC_IRQ_CHIP</title>
<updated>2011-05-02T16:16:22Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-05-02T16:16:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c42321c76b0ef472e3bae4bfcb0f46ab19e038ef'/>
<id>urn:sha1:c42321c76b0ef472e3bae4bfcb0f46ab19e038ef</id>
<content type='text'>
Only compile it in when there are users.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: linux-arm-kernel@lists.infradead.org
</content>
</entry>
<entry>
<title>genirq: Remove the now obsolete config options and select statements</title>
<updated>2011-03-30T12:13:23Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-03-30T12:13:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=78c89825649a9a5ed526c507603196f467d781a5'/>
<id>urn:sha1:78c89825649a9a5ed526c507603196f467d781a5</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>genirq: Remove compat code</title>
<updated>2011-03-29T12:48:19Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-03-28T11:32:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0c6f8a8b917ad361319c8ace3e9f28e69bfdb4c1'/>
<id>urn:sha1:0c6f8a8b917ad361319c8ace3e9f28e69bfdb4c1</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>genirq: Provide edge_eoi flow handler</title>
<updated>2011-03-28T14:55:11Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-03-28T14:13:24Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0521c8fbb3da45c2a58cd551ca6e9644983f6028'/>
<id>urn:sha1:0521c8fbb3da45c2a58cd551ca6e9644983f6028</id>
<content type='text'>
This is a replacment for the cell flow handler which is in the way of
cleanups. Must be selected to avoid general bloat.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>genirq: Expand generic show_interrupts()</title>
<updated>2011-03-25T16:04:20Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-03-25T15:48:50Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ab7798ffcf98b11a9525cf65bacdae3fd58d357f'/>
<id>urn:sha1:ab7798ffcf98b11a9525cf65bacdae3fd58d357f</id>
<content type='text'>
Some archs want to print extra information for certain irq_chips which
is per irq and not per chip. Allow them to provide a chip callback to
print the chip name and the extra information.

PowerPC wants to print the LEVEL/EDGE type information. Make it configurable.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>genirq: Add comments to Kconfig switches</title>
<updated>2011-03-08T18:52:55Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-03-08T18:52:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c68fd4f3ca90de7d18c567e70b2c164078aefadf'/>
<id>urn:sha1:c68fd4f3ca90de7d18c567e70b2c164078aefadf</id>
<content type='text'>
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Sam Ravnborg &lt;sam@ravnborg.org&gt;
</content>
</entry>
<entry>
<title>genirq: Provide forced interrupt threading</title>
<updated>2011-02-26T10:57:18Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-02-23T23:52:23Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3'/>
<id>urn:sha1:8d32a307e4faa8b123dc8a9cd56d1a7525f69ad3</id>
<content type='text'>
Add a commandline parameter "threadirqs" which forces all interrupts except
those marked IRQF_NO_THREAD to run threaded. That's mostly a debug option to
allow retrieving better debug data from crashing interrupt handlers. If
"threadirqs" is not enabled on the kernel command line, then there is no
impact in the interrupt hotpath.

Architecture code needs to select CONFIG_IRQ_FORCED_THREADING after
marking the interrupts which cant be threaded IRQF_NO_THREAD. All
interrupts which have IRQF_TIMER set are implict marked
IRQF_NO_THREAD. Also all PER_CPU interrupts are excluded.

Forced threading hard interrupts also forces all soft interrupt
handling into thread context.

When enabled it might slow down things a bit, but for debugging problems in
interrupt code it's a reasonable penalty as it does not immediately
crash and burn the machine when an interrupt handler is buggy.

Some test results on a Core2Duo machine:

Cache cold run of:
 # time git grep irq_desc

      non-threaded       threaded
 real 1m18.741s          1m19.061s
 user 0m1.874s           0m1.757s
 sys  0m5.843s           0m5.427s

 # iperf -c server
non-threaded
[  3]  0.0-10.0 sec  1.09 GBytes   933 Mbits/sec
[  3]  0.0-10.0 sec  1.09 GBytes   934 Mbits/sec
[  3]  0.0-10.0 sec  1.09 GBytes   933 Mbits/sec
threaded
[  3]  0.0-10.0 sec  1.09 GBytes   939 Mbits/sec
[  3]  0.0-10.0 sec  1.09 GBytes   934 Mbits/sec
[  3]  0.0-10.0 sec  1.09 GBytes   937 Mbits/sec

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Peter Zijlstra &lt;peterz@infradead.org&gt;
LKML-Reference: &lt;20110223234956.772668648@linutronix.de&gt;
</content>
</entry>
<entry>
<title>genirq: Streamline kernel/irq/Kconfig</title>
<updated>2011-02-22T21:33:10Z</updated>
<author>
<name>Jan Beulich</name>
<email>JBeulich@novell.com</email>
</author>
<published>2011-02-17T13:39:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=fd4afaf33313d94f548cb09129ecba3dbab62931'/>
<id>urn:sha1:fd4afaf33313d94f548cb09129ecba3dbab62931</id>
<content type='text'>
"def_bool n" without prompt is pointless, these should be just "bool".

[ tglx: Adapted to latest changes ]

Signed-off-by: Jan Beulich &lt;jbeulich@novell.com&gt;
LKML-Reference: &lt;4D5D3309020000780003264A@vpn.id2.novell.com&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;

</content>
</entry>
<entry>
<title>genirq: Add preflow handler support</title>
<updated>2011-02-19T11:58:24Z</updated>
<author>
<name>Thomas Gleixner</name>
<email>tglx@linutronix.de</email>
</author>
<published>2011-02-10T14:14:20Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=781295762defc709a609efc01d8bb065276cd9a2'/>
<id>urn:sha1:781295762defc709a609efc01d8bb065276cd9a2</id>
<content type='text'>
sparc64 needs to call a preflow handler on certain interrupts befor
calling the action chain. Integrate it into handle_fasteoi_irq. Must
be enabled via CONFIG_IRQ_FASTEOI_PREFLOW. No impact when disabled.

Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
