This patch introduces the possibility to address SCSI devices by channel/target/LUN. New properties are introduced to define the address. The implementation is pretty trivial, and thanks to the ReqOps mechanism does not require introducing dummy devices representing channels and targets.
For QEMU 1.0 the only piece missing now is migration support. Next will be 1) scatter/gather, 2) hotplug, 3) asynchronous events, which will be added when there will be a user. Paolo Bonzini (6): scsi: move tcq/ndev to SCSIBusOps (now SCSIBusInfo) qdev: switch children device list to QTAILQ scsi: remove devs array from SCSIBus scsi: implement REPORT LUNS for arbitrary LUNs scsi: allow arbitrary LUNs scsi: add channel to addressing hw/acpi_piix4.c | 4 +- hw/esp.c | 13 +++- hw/i2c.c | 2 +- hw/intel-hda.c | 6 +- hw/lsi53c895a.c | 30 ++++------ hw/qdev.c | 24 ++++---- hw/qdev.h | 4 +- hw/s390-virtio-bus.c | 4 +- hw/scsi-bus.c | 153 ++++++++++++++++++++++++++++++++++---------------- hw/scsi-disk.c | 2 +- hw/scsi.h | 16 +++--- hw/spapr_vio.c | 6 +- hw/spapr_vscsi.c | 54 +++++++++++++---- hw/ssi.c | 6 +- hw/usb-msd.c | 8 ++- 15 files changed, 210 insertions(+), 122 deletions(-) -- 1.7.6