mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-08 18:23:57 -06:00
s390x/css: realize css_create_sch
The S390 virtual css support already has a mechanism to create a virtual subchannel and provide it to the guest. However, to pass-through subchannels to a guest, we need to introduce a new mechanism to create the subchannel according to the real device information. Thus we reconstruct css_create_virtual_sch to a new css_create_sch function to handle all these cases and do allocation and initialization of the subchannel according to the device type and machine configuration. Reviewed-by: Pierre Morel <pmorel@linux.vnet.ibm.com> Signed-off-by: Dong Jia Shi <bjsdjshi@linux.vnet.ibm.com> Message-Id: <20170517004813.58227-6-bjsdjshi@linux.vnet.ibm.com> Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com>
This commit is contained in:
parent
8f3cf0128c
commit
817d4a6bc8
7 changed files with 76 additions and 20 deletions
|
@ -98,9 +98,13 @@ static void emulated_ccw_3270_realize(DeviceState *ds, Error **errp)
|
|||
EmulatedCcw3270Class *ck = EMULATED_CCW_3270_GET_CLASS(dev);
|
||||
CcwDevice *cdev = CCW_DEVICE(ds);
|
||||
CCWDeviceClass *cdk = CCW_DEVICE_GET_CLASS(cdev);
|
||||
SubchDev *sch = css_create_virtual_sch(cdev->devno, errp);
|
||||
DeviceState *parent = DEVICE(cdev);
|
||||
BusState *qbus = qdev_get_parent_bus(parent);
|
||||
VirtualCssBus *cbus = VIRTUAL_CSS_BUS(qbus);
|
||||
SubchDev *sch;
|
||||
Error *err = NULL;
|
||||
|
||||
sch = css_create_sch(cdev->devno, true, cbus->squash_mcss, errp);
|
||||
if (!sch) {
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue