s390/qdio: restrict QAOB usage to IQD unicast queues
authorJulian Wiedmann <jwi@linux.ibm.com>
Mon, 1 Jul 2019 12:19:29 +0000 (14:19 +0200)
committerHeiko Carstens <heiko.carstens@de.ibm.com>
Tue, 23 Jul 2019 08:44:03 +0000 (10:44 +0200)
commit69e96207ebf90ff8d5bac457134b0d4569f6634e
treec5ea00973f5de96cd5cc5ed15684603b5ce86576
parenta6ec414a4dd529eeac5c3ea51c661daba3397108
s390/qdio: restrict QAOB usage to IQD unicast queues

The IQD mcast queue doesn't support QAOB mode, so skip the
qdio_enable_async_operation() setup call for this queue. This avoids
the allocation of an unneeded QAOB pointer array, and sets up q->use_cq
properly so that drivers are prohibited from using QAOBs for mcast
traffic.

Take this opportunity to streamline the q->use_cq and aob != 0 checks.
The path to qdio_siga_output() is straight-forward, we don't need to
worry about being called with bad operands.

Signed-off-by: Julian Wiedmann <jwi@linux.ibm.com>
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
drivers/s390/cio/qdio_main.c