diff options
author | Dominik Dingel <dingel@linux.vnet.ibm.com> | 2013-06-17 14:29:42 +0200 |
---|---|---|
committer | Alexander Graf <agraf@suse.de> | 2013-07-29 12:02:00 +0200 |
commit | c8cda8748eceeeb06f1952e7e765a0919103644d (patch) | |
tree | 952bf455241b43d691f853fef6c5338e1130b709 /pc-bios/s390-ccw/main.c | |
parent | 461bdb3414c40d6806194bf68c91521496b1042d (diff) |
s390/IPL: Allow boot from other ssid than 0
We now take the subchannel set id also into account to find the boot device.
If we want to use a subchannel set other than the default set 0, we first
need to enable the mss facility.
Signed-off-by: Dominik Dingel <dingel@linux.vnet.ibm.com>
Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com>
Signed-off-by: Alexander Graf <agraf@suse.de>
Diffstat (limited to 'pc-bios/s390-ccw/main.c')
-rw-r--r-- | pc-bios/s390-ccw/main.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/pc-bios/s390-ccw/main.c b/pc-bios/s390-ccw/main.c index 1665c57225..c5d533231b 100644 --- a/pc-bios/s390-ccw/main.c +++ b/pc-bios/s390-ccw/main.c @@ -35,6 +35,13 @@ static void virtio_setup(uint64_t dev_info) check_devno = true; dev_no = dev_info & 0xffff; debug_print_int("device no. ", dev_no); + blk_schid.ssid = (dev_info >> 16) & 0x3; + if (blk_schid.ssid != 0) { + debug_print_int("ssid ", blk_schid.ssid); + if (enable_mss_facility() != 0) { + virtio_panic("Failed to enable mss facility\n"); + } + } } for (i = 0; i < 0x10000; i++) { |