diff options
author | Cornelia Huck <cornelia.huck@de.ibm.com> | 2007-02-12 09:47:18 -0500 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-02-12 09:47:18 -0500 |
commit | 4dd3cc5caf41d55cd5e55f32902c8a2ad3296e19 (patch) | |
tree | 458be42776f00233f99fa270b8f249f6a1c95c5c /drivers/s390/cio/qdio.c | |
parent | 0ec67667ab414b18a0518d5b11c842fd342e9cb1 (diff) |
[S390] cio: Fixup interface for setting options on ccw devices.
The current ccw_device_set_options() sets a specified mask of options
and clears those not specified, but there is no way to find out which
options have already been set.
In order to fix this up, introduce the following interface changes:
ccw_device_set_options() now only sets the specified bits, but does
not clear those that are not specified.
ccw_device_clear_options() clears the specified bits.
ccw_device_set_options_mask() provides the old semantics (setting only
the specified bits and clearing the others).
Device drivers now work as expected. qdio has been adapted.
Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/cio/qdio.c')
-rw-r--r-- | drivers/s390/cio/qdio.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/s390/cio/qdio.c b/drivers/s390/cio/qdio.c index d726cd5777de..5b1e3ff26c0b 100644 --- a/drivers/s390/cio/qdio.c +++ b/drivers/s390/cio/qdio.c | |||
@@ -3194,7 +3194,7 @@ qdio_establish(struct qdio_initialize *init_data) | |||
3194 | 3194 | ||
3195 | spin_lock_irqsave(get_ccwdev_lock(cdev),saveflags); | 3195 | spin_lock_irqsave(get_ccwdev_lock(cdev),saveflags); |
3196 | 3196 | ||
3197 | ccw_device_set_options(cdev, 0); | 3197 | ccw_device_set_options_mask(cdev, 0); |
3198 | result=ccw_device_start_timeout(cdev,&irq_ptr->ccw, | 3198 | result=ccw_device_start_timeout(cdev,&irq_ptr->ccw, |
3199 | QDIO_DOING_ESTABLISH,0, 0, | 3199 | QDIO_DOING_ESTABLISH,0, 0, |
3200 | QDIO_ESTABLISH_TIMEOUT); | 3200 | QDIO_ESTABLISH_TIMEOUT); |