Add USB host controller support to arm-virt

Allow a generic USB host controller to be instantiated on the PCIe bus
of the generic ARM virt platform.  May be enabled by saying "-machine
usb:on" somewhere in the arguments.

Change-Id: I11da1e6eab82e73afe3c74eb60d5d26919a9ca41
diff --git a/hw/arm/virt.c b/hw/arm/virt.c
index 94dcb12..48bdff5 100644
--- a/hw/arm/virt.c
+++ b/hw/arm/virt.c
@@ -1382,6 +1382,14 @@
 
     create_pcie(vms, pic);
 
+    if (machine_usb(machine)) {
+        PCIBus *pci_bus = (PCIBus*)object_resolve_path_type("", TYPE_PCI_BUS, NULL);
+        if (!pci_bus)
+            error_report("No PCI bus available to add USB OHCI controller to.");
+        else
+            pci_create_simple(pci_bus, -1, "pci-ohci");
+    }
+
     create_gpio(vms, pic);
 
     /* Create mmio transports, so the user can create virtio backends