Commit f590f4c4 authored by Anthony Liguori's avatar Anthony Liguori
Browse files

Merge remote-tracking branch 'kraxel/usb.14.pull' into staging

parents 2eb9f241 94527ead
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -193,6 +193,7 @@ hw-obj-$(CONFIG_PCSPK) += pcspk.o
hw-obj-$(CONFIG_PCKBD) += pckbd.o
hw-obj-$(CONFIG_USB_UHCI) += usb-uhci.o
hw-obj-$(CONFIG_USB_OHCI) += usb-ohci.o
hw-obj-$(CONFIG_USB_EHCI) += usb-ehci.o
hw-obj-$(CONFIG_FDC) += fdc.o
hw-obj-$(CONFIG_ACPI) += acpi.o acpi_piix4.o
hw-obj-$(CONFIG_APM) += pm_smbus.o apm.o
+1 −0
Original line number Diff line number Diff line
@@ -3,6 +3,7 @@ CONFIG_VIRTIO_PCI=y
CONFIG_VIRTIO=y
CONFIG_USB_UHCI=y
CONFIG_USB_OHCI=y
CONFIG_USB_EHCI=y
CONFIG_NE2000_PCI=y
CONFIG_EEPRO100_PCI=y
CONFIG_PCNET_PCI=y

docs/usb2.txt

0 → 100644
+38 −0
Original line number Diff line number Diff line

USB 2.0 Quick Start
===================

The QEMU EHCI Adapter does *not* support companion controllers.  That
implies there are two completely separate USB busses: One USB 1.1 bus
driven by the UHCI controller and one USB 2.0 bus driven by the EHCI
controller.  Devices must be attached to the correct controller
manually.

The '-usb' switch will make qemu create the UHCI controller as part of
the PIIX3 chipset.  The USB 1.1 bus will carry the name "usb.0".

You can use the standard -device switch to add a EHCI controller to
your virtual machine.  It is strongly recommended to specify an ID for
the controller so the USB 2.0 bus gets a individual name, for example
'-device usb-ehci,id=ehci".  This will give you a USB 2.0 bus named
"ehci.0".

I strongly recomment to also use -device to attach usb devices because
you can specify the bus they should be attached to this way.  Here is
a complete example:

    qemu -M pc ${otheroptions}                           \
        -drive if=none,id=usbstick,file=/path/to/image   \
        -usb                                             \
        -device usb-ehci,id=ehci                         \
        -device usb-tablet,bus=usb.0                     \
        -device usb-storage,bus=ehci.0,drive=usbstick

This attaches a usb tablet to the UHCI adapter and a usb mass storage
device to the EHCI adapter.

enjoy,
  Gerd

--
Gerd Hoffmann <kraxel@redhat.com>
+3 −3
Original line number Diff line number Diff line
@@ -323,7 +323,7 @@ static void bt_hid_control_transaction(struct bt_hid_device_s *s,
            break;
        }
        s->proto = parameter;
        s->usbdev->info->handle_control(s->usbdev, SET_PROTOCOL, s->proto, 0, 0,
        s->usbdev->info->handle_control(s->usbdev, NULL, SET_PROTOCOL, s->proto, 0, 0,
                                        NULL);
        ret = BT_HS_SUCCESSFUL;
        break;
@@ -333,7 +333,7 @@ static void bt_hid_control_transaction(struct bt_hid_device_s *s,
            ret = BT_HS_ERR_INVALID_PARAMETER;
            break;
        }
        s->usbdev->info->handle_control(s->usbdev, GET_IDLE, 0, 0, 1,
        s->usbdev->info->handle_control(s->usbdev, NULL, GET_IDLE, 0, 0, 1,
                        s->control->sdu_out(s->control, 1));
        s->control->sdu_submit(s->control);
        break;
@@ -346,7 +346,7 @@ static void bt_hid_control_transaction(struct bt_hid_device_s *s,

        /* We don't need to know about the Idle Rate here really,
         * so just pass it on to the device.  */
        ret = s->usbdev->info->handle_control(s->usbdev,
        ret = s->usbdev->info->handle_control(s->usbdev, NULL,
                        SET_IDLE, data[1], 0, 0, NULL) ?
                BT_HS_SUCCESSFUL : BT_HS_ERR_INVALID_PARAMETER;
        /* XXX: Does this generate a handshake? */
+1 −0
Original line number Diff line number Diff line
@@ -100,6 +100,7 @@
#define PCI_VENDOR_ID_INTEL              0x8086
#define PCI_DEVICE_ID_INTEL_82441        0x1237
#define PCI_DEVICE_ID_INTEL_82801AA_5    0x2415
#define PCI_DEVICE_ID_INTEL_82801D       0x24CD
#define PCI_DEVICE_ID_INTEL_ESB_9        0x25ab
#define PCI_DEVICE_ID_INTEL_82371SB_0    0x7000
#define PCI_DEVICE_ID_INTEL_82371SB_1    0x7010
Loading