]> git.ipfire.org Git - thirdparty/qemu.git/commitdiff
Merge remote-tracking branch 'mst/for_anthony' into staging
authorAnthony Liguori <aliguori@us.ibm.com>
Wed, 22 Jun 2011 12:11:09 +0000 (07:11 -0500)
committerAnthony Liguori <aliguori@us.ibm.com>
Wed, 22 Jun 2011 12:11:09 +0000 (07:11 -0500)
Conflicts:
hw/usb-uhci.c

1  2 
exec.c
hw/cirrus_vga.c
hw/lsi53c895a.c
hw/pc_piix.c
hw/piix_pci.c
hw/usb-ehci.c
hw/usb-ohci.c
hw/usb-uhci.c

diff --cc exec.c
Simple merge
diff --cc hw/cirrus_vga.c
Simple merge
diff --cc hw/lsi53c895a.c
Simple merge
diff --cc hw/pc_piix.c
Simple merge
diff --cc hw/piix_pci.c
index 3e2698d99871258491c08bdb23a71ef09f3c2c4a,e0da0bdf911993a7e0b57483e38d51b0e45f95c5..26ce90451afa50329e8b952a54f556864d2ce895
@@@ -465,6 -452,18 +453,10 @@@ static PCIDeviceInfo i440fx_info[] = 
          .no_hotplug   = 1,
          .init         = i440fx_initfn,
          .config_write = i440fx_write_config,
 -    },{
 -        .qdev.name    = "i440FX-xen",
 -        .qdev.desc    = "Host bridge",
 -        .qdev.size    = sizeof(PCII440FXState),
 -        .qdev.vmsd    = &vmstate_i440fx,
 -        .qdev.no_user = 1,
 -        .init         = i440fx_initfn,
 -        .config_write = i440fx_write_config_xen,
+         .vendor_id    = PCI_VENDOR_ID_INTEL,
+         .device_id    = PCI_DEVICE_ID_INTEL_82441,
+         .revision     = 0x02,
+         .class_id     = PCI_CLASS_BRIDGE_HOST,
      },{
          .qdev.name    = "PIIX3",
          .qdev.desc    = "ISA bridge",
          .no_hotplug   = 1,
          .init         = piix3_initfn,
          .config_write = piix3_write_config,
+         .vendor_id    = PCI_VENDOR_ID_INTEL,
+         .device_id    = PCI_DEVICE_ID_INTEL_82371SB_0, // 82371SB PIIX3 PCI-to-ISA bridge (Step A1)
+         .class_id     = PCI_CLASS_BRIDGE_ISA,
 +    },{
 +        .qdev.name    = "PIIX3-xen",
 +        .qdev.desc    = "ISA bridge",
 +        .qdev.size    = sizeof(PIIX3State),
 +        .qdev.vmsd    = &vmstate_piix3,
 +        .qdev.no_user = 1,
 +        .no_hotplug   = 1,
 +        .init         = piix3_initfn,
 +        .config_write = piix3_write_config_xen,
      },{
          /* end of list */
      }
diff --cc hw/usb-ehci.c
Simple merge
diff --cc hw/usb-ohci.c
Simple merge
diff --cc hw/usb-uhci.c
index 75cd231f81637f11350e88816c051f704d0ea837,872a995575a2368f5547762eae0b49244235eb87..405fa7b65ee695cbd260dcbfc01602dc65834ac3
@@@ -1110,23 -1088,18 +1110,22 @@@ static USBPortOps uhci_port_ops = 
      .complete = uhci_async_complete,
  };
  
- static int usb_uhci_common_initfn(UHCIState *s)
 +static USBBusOps uhci_bus_ops = {
 +    .device_destroy = uhci_device_destroy,
 +};
 +
+ static int usb_uhci_common_initfn(PCIDevice *dev)
  {
+     UHCIState *s = DO_UPCAST(UHCIState, dev, dev);
      uint8_t *pci_conf = s->dev.config;
      int i;
  
-     pci_conf[PCI_REVISION_ID] = 0x01; // revision number
      pci_conf[PCI_CLASS_PROG] = 0x00;
-     pci_config_set_class(pci_conf, PCI_CLASS_SERIAL_USB);
      /* TODO: reset value should be 0. */
      pci_conf[PCI_INTERRUPT_PIN] = 4; // interrupt pin 3
 -    pci_conf[0x60] = 0x10; // release number
 +    pci_conf[USB_SBRN] = USB_RELEASE_1; // release number
  
 -    usb_bus_new(&s->bus, &s->dev.qdev);
 +    usb_bus_new(&s->bus, &uhci_bus_ops, &s->dev.qdev);
      for(i = 0; i < NB_PORTS; i++) {
          usb_register_port(&s->bus, &s->ports[i].port, s, i, &uhci_port_ops,
                            USB_SPEED_MASK_LOW | USB_SPEED_MASK_FULL);