This does nothing more than adding the new device and capability.
The device is present since QEMU 1.2.0.
Signed-off-by: Paolo Bonzini pbonz...@redhat.com
---
docs/formatdomain.html.in | 6 ++--
docs/schemas/domaincommon.rng | 1 +
src/conf/domain_conf.c | 3 +-
src/conf/domain_conf.h | 1 +
src/qemu/qemu_capabilities.c | 2 ++
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c| 13 -
src/vmx/vmx.c | 3 +-
tests/qemuhelptest.c | 6 ++--
.../qemuxml2argv-disk-scsi-megasas.args| 9 ++
.../qemuxml2argv-disk-scsi-megasas.xml | 32 ++
tests/qemuxml2argvtest.c | 3 ++
tests/qemuxml2xmltest.c| 1 +
13 files changed, 73 insertions(+), 8 deletions(-)
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-megasas.args
create mode 100644 tests/qemuxml2argvdata/qemuxml2argv-disk-scsi-megasas.xml
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index c2cf75f..8bf0736 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -2091,9 +2091,9 @@
control how many devices can be connected through the
controller. A scsi controller has an optional
attribute codemodel/code, which is one of auto, buslogic,
- ibmvscsi, lsilogic, lsias1068, virtio-scsi or vmpvscsi.
- A usb controller has an optional attribute codemodel/code,
- which is one of piix3-uhci, piix4-uhci, ehci,
+ ibmvscsi, lsilogic, lsisas1068, lsisas1078, virtio-scsi or
+ vmpvscsi. A usb controller has an optional attribute
+ codemodel/code, which is one of piix3-uhci, piix4-uhci, ehci,
ich9-ehci1, ich9-uhci1, ich9-uhci2, ich9-uhci3,
vt82c686b-uhci, pci-ohci or nec-xhci. Additionally,
span class=sincesince 0.10.0/span, if the USB bus needs to be
diff --git a/docs/schemas/domaincommon.rng b/docs/schemas/domaincommon.rng
index fae5c0d..a136ae8 100644
--- a/docs/schemas/domaincommon.rng
+++ b/docs/schemas/domaincommon.rng
@@ -1391,6 +1391,7 @@
valuevmpvscsi/value
valueibmvscsi/value
valuevirtio-scsi/value
+valuelsisas1078/value
valuepiix3-uhci/value
valuepiix4-uhci/value
valueehci/value
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 159a23d..0ef67be 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -304,7 +304,8 @@ VIR_ENUM_IMPL(virDomainControllerModelSCSI,
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LAS
lsisas1068,
vmpvscsi,
ibmvscsi,
- virtio-scsi);
+ virtio-scsi,
+ lsisas1078);
VIR_ENUM_IMPL(virDomainControllerModelUSB,
VIR_DOMAIN_CONTROLLER_MODEL_USB_LAST,
piix3-uhci,
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index a750a1f..c3b2608 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -695,6 +695,7 @@ enum virDomainControllerModelSCSI {
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VMPVSCSI,
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_IBMVSCSI,
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_VIRTIO_SCSI,
+VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LSISAS1078,
VIR_DOMAIN_CONTROLLER_MODEL_SCSI_LAST
};
diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
index 50f8084..3840b41 100644
--- a/src/qemu/qemu_capabilities.c
+++ b/src/qemu/qemu_capabilities.c
@@ -212,6 +212,7 @@ VIR_ENUM_IMPL(virQEMUCaps, QEMU_CAPS_LAST,
rng-egd,
virtio-ccw,
dtb,
+ megasas,
);
struct _virQEMUCaps {
@@ -1329,6 +1330,7 @@ struct virQEMUCapsStringFlags virQEMUCapsObjectTypes[] = {
{ virtio-scsi-pci, QEMU_CAPS_VIRTIO_SCSI },
{ virtio-scsi-s390, QEMU_CAPS_VIRTIO_SCSI },
{ virtio-scsi-ccw, QEMU_CAPS_VIRTIO_SCSI },
+{ megasas, QEMU_CAPS_SCSI_MEGASAS },
{ spicevmc, QEMU_CAPS_DEVICE_SPICEVMC },
{ qxl-vga, QEMU_CAPS_DEVICE_QXL_VGA },
{ qxl, QEMU_CAPS_DEVICE_QXL },
diff --git a/src/qemu/qemu_capabilities.h b/src/qemu/qemu_capabilities.h
index b0f8c5b..7101f67 100644
--- a/src/qemu/qemu_capabilities.h
+++ b/src/qemu/qemu_capabilities.h
@@ -173,6 +173,7 @@ enum virQEMUCapsFlags {
QEMU_CAPS_OBJECT_RNG_EGD = 131, /* EGD protocol daemon for rng */
QEMU_CAPS_VIRTIO_CCW = 132, /* -device virtio-*-ccw */
QEMU_CAPS_DTB= 133, /* -dtb file */
+QEMU_CAPS_SCSI_MEGASAS = 134, /* -device megasas */
QEMU_CAPS_LAST, /* this must always be the last item */
};
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 006f83d..a0c278f 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@