linux/drivers/s390/cio
Jan Glauber d36deae750 qdio: extend API to allow polling
Extend the qdio API to allow polling in the upper-layer driver. This
is needed by qeth to use NAPI.

To use the new interface the upper-layer driver must specify the
queue_start_poll(). This callback is used to signal the upper-layer
driver that is has initiative and must process the inbound queue by
calling qdio_get_next_buffers(). If the upper-layer driver wants to
stop polling it calls qdio_start_irq().

Since adapter interrupts are not completely stoppable qdio implements
a software bit QDIO_QUEUE_IRQS_DISABLED to safely disable interrupts for an
input queue.

The old interface is preserved and will be used as is by zfcp.

Signed-off-by: Jan Glauber <jang@linux.vnet.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2010-09-08 14:31:00 -07:00
..
airq.c
blacklist.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
blacklist.h
ccwgroup.c [S390] ccwgroup: add locking around drvdata access 2010-05-26 23:27:09 +02:00
ccwreq.c [S390] ccwreq: add ability to use all paths 2010-08-09 18:12:54 +02:00
chp.c sysfs: add struct file* to bin_attr callbacks 2010-05-21 09:37:31 -07:00
chp.h
chsc_sch.c [S390] avoid default_llseek in s390 drivers 2010-05-17 10:00:16 +02:00
chsc_sch.h
chsc.c [S390] cio: CHSC SIOSL Support 2010-08-09 18:12:53 +02:00
chsc.h [S390] cio: CHSC SIOSL Support 2010-08-09 18:12:53 +02:00
cio_debug.h
cio.c [S390] idle time accounting vs. machine checks 2010-05-17 10:00:15 +02:00
cio.h [S390] cio: introduce subchannel todos 2009-12-07 12:51:30 +01:00
cmf.c tree-wide: fix assorted typos all over the place 2009-12-04 15:39:55 +01:00
crw.c [S390] cio: wait for channel report 2010-02-26 22:37:29 +01:00
css.c [S390] avoid default_llseek in s390 drivers 2010-05-17 10:00:16 +02:00
css.h [S390] cio: trigger subchannel event at resume time 2010-02-26 22:37:30 +01:00
device_fsm.c [S390] cio: use exception-save stsch 2010-04-22 17:17:19 +02:00
device_id.c [S390] cio: use all available paths for some internal I/O 2010-08-09 18:12:54 +02:00
device_ops.c [S390] cio: make steal lock procedure more robust 2009-12-07 12:51:32 +01:00
device_pgid.c [S390] cio: use all available paths for some internal I/O 2010-08-09 18:12:54 +02:00
device_status.c [S390] cio: remove intretry flag 2009-12-07 12:51:31 +01:00
device.c [S390] cio: ccw_device_online_store return -EINVAL in case of missing driver 2010-08-09 18:12:53 +02:00
device.h [S390] ccw_device_notify: improve return codes 2010-02-26 22:37:29 +01:00
fcx.c [S390] drivers: Correct size given to memset 2009-12-18 17:43:32 +01:00
idset.c [S390] cio: introduce consistent subchannel scanning 2009-09-22 22:58:42 +02:00
idset.h [S390] cio: introduce consistent subchannel scanning 2009-09-22 22:58:42 +02:00
io_sch.h [S390] ccwreq: add ability to use all paths 2010-08-09 18:12:54 +02:00
ioasm.h [S390] cio: remove stsch 2010-05-26 23:27:09 +02:00
isc.c
itcw.c [S390] appldata/extmem/kvm: add missing GFP_KERNEL flag 2010-06-08 18:58:23 +02:00
Makefile [S390] qdio: convert global statistics to per-device stats 2010-01-04 09:05:58 +01:00
qdio_debug.c qdio: extend API to allow polling 2010-09-08 14:31:00 -07:00
qdio_debug.h
qdio_main.c qdio: extend API to allow polling 2010-09-08 14:31:00 -07:00
qdio_setup.c qdio: extend API to allow polling 2010-09-08 14:31:00 -07:00
qdio_thinint.c qdio: extend API to allow polling 2010-09-08 14:31:00 -07:00
qdio.h qdio: extend API to allow polling 2010-09-08 14:31:00 -07:00