linux/drivers/s390/cio
Martin Schwidefsky 1f44a22577 s390: convert interrupt handling to use generic hardirq
With the introduction of PCI it became apparent that s390 should
convert to generic hardirqs as too many drivers do not have the
correct dependency for GENERIC_HARDIRQS. On the architecture
level s390 does not have irq lines. It has external interrupts,
I/O interrupts and adapter interrupts. This patch hard-codes all
external interrupts as irq #1, all I/O interrupts as irq #2 and
all adapter interrupts as irq #3. The additional information from
the lowcore associated with the interrupt is stored in the
pt_regs of the interrupt frame, where the interrupt handler can
pick it up. For PCI/MSI interrupts the adapter interrupt handler
scans the relevant bit fields and calls generic_handle_irq with
the virtual irq number for the MSI interrupt.

Reviewed-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
2013-08-22 12:20:04 +02:00
..
airq.c s390: convert interrupt handling to use generic hardirq 2013-08-22 12:20:04 +02:00
blacklist.c s390/cio: add condev keyword to cio_ignore 2013-05-02 15:50:20 +02:00
blacklist.h
ccwgroup.c s390: replace strict_strtoul() with kstrtoul() 2013-08-22 12:20:00 +02:00
ccwreq.c [S390] cio: add message for timeouts on internal I/O 2011-10-30 15:16:41 +01:00
chp.c s390/cio: add channel ID sysfs attribute 2013-05-15 16:47:39 +02:00
chp.h s390/cio: collect format 1 channel-path description data 2013-04-17 14:07:26 +02:00
chsc_sch.c s390/chsc: Use snprintf instead of sprintf 2013-06-26 21:10:16 +02:00
chsc_sch.h
chsc.c s390/qdio: cleanup chsc SADC usage 2013-06-26 21:10:15 +02:00
chsc.h s390/qdio: cleanup chsc SADC usage 2013-06-26 21:10:15 +02:00
cio_debug.h
cio.c s390: convert interrupt handling to use generic hardirq 2013-08-22 12:20:04 +02:00
cio.h s390: convert interrupt handling to use generic hardirq 2013-08-22 12:20:04 +02:00
cmf.c s390: replace strict_strtoul() with kstrtoul() 2013-08-22 12:20:00 +02:00
crw.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
css.c s390: replace strict_strtoul() with kstrtoul() 2013-08-22 12:20:00 +02:00
css.h s390/css: remove unused function definitions 2013-04-17 14:07:33 +02:00
device_fsm.c s390/time: rename tod clock access functions 2013-02-14 15:55:10 +01:00
device_id.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device_ops.c s390/cio: make use of newly added format 1 channel-path data 2013-04-17 14:07:26 +02:00
device_pgid.c s390/cio: handle unknown pgroup state 2013-02-14 15:55:09 +01:00
device_status.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
device.c s390: replace strict_strtoul() with kstrtoul() 2013-08-22 12:20:00 +02:00
device.h s390/cio: fix early init counter usage 2013-04-17 14:07:33 +02:00
eadm_sch.c s390/irq: remove split irq fields from /proc/stat 2013-01-08 10:57:07 +01:00
eadm_sch.h s390/cio: add eadm subchannel driver 2012-09-26 15:45:00 +02:00
fcx.c [S390] drivers: Correct size given to memset 2009-12-18 17:43:32 +01:00
idset.c s390/cio: Use BITS_TO_LONGS() instead of __BITOPS_WORDS() 2013-04-17 14:07:29 +02:00
idset.h s390/css: stop stsch loop after cc 3 2012-10-18 17:50:08 +02:00
io_sch.h s390/cio: dont abort verification after missing irq 2013-02-14 15:55:07 +01:00
ioasm.h [S390] cio: move asms to generic header 2011-03-15 17:08:23 +01:00
isc.c
itcw.c [S390] cio: reduce memory consumption of itcw structures 2011-01-05 12:47:29 +01:00
Makefile s390/cio: add eadm subchannel driver 2012-09-26 15:45:00 +02:00
orb.h s390: add eadm related structures 2012-09-26 15:44:57 +02:00
qdio_debug.c constify a bunch of struct file_operations instances 2013-04-09 14:16:20 -04:00
qdio_debug.h qdio: remove unused parameters 2013-02-28 09:37:12 +01:00
qdio_main.c s390/qdio: remove unused variable 2013-07-16 12:21:57 +02:00
qdio_setup.c s390/qdio: cleanup chsc SSQD usage 2013-06-26 21:10:14 +02:00
qdio_thinint.c s390/airq: simplify adapter interrupt code 2013-06-26 21:10:28 +02:00
qdio.h s390/qdio: cleanup chsc SADC usage 2013-06-26 21:10:15 +02:00
scm.c s390/scm: process availability 2013-03-07 09:52:24 +01:00