Commit 697e42de authored by Stefan Hajnoczi's avatar Stefan Hajnoczi
Browse files

Merge remote-tracking branch 'kraxel/tags/pull-usb-20170529-1' into staging



usb: depricate legacy options and hmp commands
usb: fixes for ehci and hub, split xhci variants

# gpg: Signature made Mon 29 May 2017 02:07:17 PM BST
# gpg:                using RSA key 0x4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
# gpg:                 aka "Gerd Hoffmann <gerd@kraxel.org>"
# gpg:                 aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* kraxel/tags/pull-usb-20170529-1:
  ehci: fix frame timer invocation.
  usb: don't wakeup during coldplug
  usb-hub: set PORT_STAT_C_SUSPEND on host-initiated wake-up
  xhci: add CONFIG_USB_XHCI_NEC option
  xhci: split into multiple files
  usb: Simplify the parameter parsing of the legacy usb serial device
  usb: Deprecate HMP commands usb_add and usb_del
  usb: Deprecate the legacy -usbdevice option
  ehci: fix overflow in frame timer code

Signed-off-by: default avatarStefan Hajnoczi <stefanha@redhat.com>
parents a3203e7d 3bfecee2
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -7,6 +7,7 @@ CONFIG_USB_UHCI=y
CONFIG_USB_OHCI=y
CONFIG_USB_EHCI=y
CONFIG_USB_XHCI=y
CONFIG_USB_XHCI_NEC=y
CONFIG_NE2000_PCI=y
CONFIG_EEPRO100_PCI=y
CONFIG_PCNET_PCI=y
+4 −2
Original line number Diff line number Diff line
@@ -676,7 +676,8 @@ ETEXI
STEXI
@item usb_add @var{devname}
@findex usb_add
Add the USB device @var{devname}.  For details of available devices see
Add the USB device @var{devname}. This command is deprecated, please
use @code{device_add} instead. For details of available devices see
@ref{usb_devices}
ETEXI

@@ -693,7 +694,8 @@ STEXI
@findex usb_del
Remove the USB device @var{devname} from the QEMU virtual USB
hub. @var{devname} has the syntax @code{bus.addr}. Use the monitor
command @code{info usb} to see the devices you can remove.
command @code{info usb} to see the devices you can remove. This
command is deprecated, please use @code{device_del} instead.
ETEXI

    {
+1 −0
Original line number Diff line number Diff line
@@ -8,6 +8,7 @@ common-obj-$(CONFIG_USB_OHCI) += hcd-ohci.o
common-obj-$(CONFIG_USB_EHCI) += hcd-ehci.o hcd-ehci-pci.o
common-obj-$(CONFIG_USB_EHCI_SYSBUS) += hcd-ehci-sysbus.o
common-obj-$(CONFIG_USB_XHCI) += hcd-xhci.o
common-obj-$(CONFIG_USB_XHCI_NEC) += hcd-xhci-nec.o
common-obj-$(CONFIG_USB_MUSB) += hcd-musb.o

obj-$(CONFIG_TUSB6010) += tusb6010.o
+8 −0
Original line number Diff line number Diff line
@@ -98,6 +98,14 @@ void usb_wakeup(USBEndpoint *ep, unsigned int stream)
    USBDevice *dev = ep->dev;
    USBBus *bus = usb_bus_from_device(dev);

    if (!qdev_hotplug) {
        /*
         * This is machine init cold plug.  No need to wakeup anyone,
         * all devices will be reset anyway.  And trying to wakeup can
         * cause problems due to hitting uninitialized devices.
         */
        return;
    }
    if (dev->remote_wakeup && dev->port && dev->port->ops->wakeup) {
        dev->port->ops->wakeup(dev->port);
    }
+14 −1
Original line number Diff line number Diff line
@@ -402,7 +402,20 @@ static void usb_hub_handle_control(USBDevice *dev, USBPacket *p,
                port->wPortChange &= ~PORT_STAT_C_ENABLE;
                break;
            case PORT_SUSPEND:
                if (port->wPortStatus & PORT_STAT_SUSPEND) {
                    port->wPortStatus &= ~PORT_STAT_SUSPEND;

                    /*
                     * USB Spec rev2.0 11.24.2.7.2.3 C_PORT_SUSPEND
                     * "This bit is set on the following transitions:
                     *  - On transition from the Resuming state to the
                     *    SendEOP [sic] state"
                     *
                     * Note that this includes both remote wake-up and
                     * explicit ClearPortFeature(PORT_SUSPEND).
                     */
                    port->wPortChange |= PORT_STAT_C_SUSPEND;
                }
                break;
            case PORT_C_SUSPEND:
                port->wPortChange &= ~PORT_STAT_C_SUSPEND;
Loading