diff options
author | Cornelia Huck <cohuck@de.ibm.com> | 2006-01-06 03:19:25 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-01-06 11:33:52 -0500 |
commit | fb6958a594da49ece869793e6ec163b89fc5f79f (patch) | |
tree | 0746cc23ab13a059f9a34d7fc134aaf6410d07b8 /drivers/s390/cio/device_status.c | |
parent | 678a395b356a98368a93c3640252502b70c3676f (diff) |
[PATCH] s390: multiple subchannel sets support
Add support for multiple subchannel sets. Works with arbitrary devices in
subchannel set 1 and is transparent to device drivers. Although currently
only two subchannel sets are available, this will work with the architectured
maximum number of subchannel sets as well.
Signed-off-by: Cornelia Huck <cohuck@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/s390/cio/device_status.c')
-rw-r--r-- | drivers/s390/cio/device_status.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/s390/cio/device_status.c b/drivers/s390/cio/device_status.c index 929f8fb505f2..db09c209098b 100644 --- a/drivers/s390/cio/device_status.c +++ b/drivers/s390/cio/device_status.c | |||
@@ -36,9 +36,10 @@ ccw_device_msg_control_check(struct ccw_device *cdev, struct irb *irb) | |||
36 | 36 | ||
37 | CIO_MSG_EVENT(0, "Channel-Check or Interface-Control-Check " | 37 | CIO_MSG_EVENT(0, "Channel-Check or Interface-Control-Check " |
38 | "received" | 38 | "received" |
39 | " ... device %04X on subchannel %04X, dev_stat " | 39 | " ... device %04x on subchannel 0.%x.%04x, dev_stat " |
40 | ": %02X sch_stat : %02X\n", | 40 | ": %02X sch_stat : %02X\n", |
41 | cdev->private->devno, cdev->private->sch_no, | 41 | cdev->private->devno, cdev->private->ssid, |
42 | cdev->private->sch_no, | ||
42 | irb->scsw.dstat, irb->scsw.cstat); | 43 | irb->scsw.dstat, irb->scsw.cstat); |
43 | 44 | ||
44 | if (irb->scsw.cc != 3) { | 45 | if (irb->scsw.cc != 3) { |
@@ -61,8 +62,9 @@ ccw_device_path_notoper(struct ccw_device *cdev) | |||
61 | sch = to_subchannel(cdev->dev.parent); | 62 | sch = to_subchannel(cdev->dev.parent); |
62 | stsch (sch->schid, &sch->schib); | 63 | stsch (sch->schid, &sch->schib); |
63 | 64 | ||
64 | CIO_MSG_EVENT(0, "%s(%04x) - path(s) %02x are " | 65 | CIO_MSG_EVENT(0, "%s(0.%x.%04x) - path(s) %02x are " |
65 | "not operational \n", __FUNCTION__, sch->schid.sch_no, | 66 | "not operational \n", __FUNCTION__, |
67 | sch->schid.ssid, sch->schid.sch_no, | ||
66 | sch->schib.pmcw.pnom); | 68 | sch->schib.pmcw.pnom); |
67 | 69 | ||
68 | sch->lpm &= ~sch->schib.pmcw.pnom; | 70 | sch->lpm &= ~sch->schib.pmcw.pnom; |