qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Hans de Goede <hdegoede@redhat.com>
To: Gerd Hoffmann <kraxel@redhat.com>
Cc: Hans de Goede <hdegoede@redhat.com>, qemu-devel@nongnu.org
Subject: [Qemu-devel] [PATCH 8/8] usb-hid: Allow connecting to a USB-2 device
Date: Tue,  6 Nov 2012 15:08:21 +0100	[thread overview]
Message-ID: <1352210901-1923-9-git-send-email-hdegoede@redhat.com> (raw)
In-Reply-To: <1352210901-1923-1-git-send-email-hdegoede@redhat.com>

Our ehci code has is capable of significantly lowering the wakeup rate
for the hcd emulation while the device is idle. It is possible to add
similar code ot the uhci emulation, but that simply is not there atm,
and there is no reason why a (virtual) usb device can not be a USB-2 device.

Making usb-hid devices connect to the emulated ehci controller instead
of the emulated uhci controller on vms which have both lowers the cpuload
for a fully idle vm from 20% to 2-3% (on my laptop).

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
 hw/usb/dev-hid.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/hw/usb/dev-hid.c b/hw/usb/dev-hid.c
index 69f89ff..96ba0c0 100644
--- a/hw/usb/dev-hid.c
+++ b/hw/usb/dev-hid.c
@@ -97,7 +97,7 @@ static const USBDescIface desc_iface_mouse = {
             .bEndpointAddress      = USB_DIR_IN | 0x01,
             .bmAttributes          = USB_ENDPOINT_XFER_INT,
             .wMaxPacketSize        = 4,
-            .bInterval             = 0x0a,
+            .bInterval             = 8,
         },
     },
 };
@@ -127,7 +127,7 @@ static const USBDescIface desc_iface_tablet = {
             .bEndpointAddress      = USB_DIR_IN | 0x01,
             .bmAttributes          = USB_ENDPOINT_XFER_INT,
             .wMaxPacketSize        = 8,
-            .bInterval             = 0x0a,
+            .bInterval             = 8,
         },
     },
 };
@@ -158,7 +158,7 @@ static const USBDescIface desc_iface_keyboard = {
             .bEndpointAddress      = USB_DIR_IN | 0x01,
             .bmAttributes          = USB_ENDPOINT_XFER_INT,
             .wMaxPacketSize        = 8,
-            .bInterval             = 0x0a,
+            .bInterval             = 8,
         },
     },
 };
@@ -224,6 +224,7 @@ static const USBDesc desc_mouse = {
         .iSerialNumber     = STR_SERIALNUMBER,
     },
     .full = &desc_device_mouse,
+    .high = &desc_device_mouse,
     .str  = desc_strings,
 };
 
@@ -237,6 +238,7 @@ static const USBDesc desc_tablet = {
         .iSerialNumber     = STR_SERIALNUMBER,
     },
     .full = &desc_device_tablet,
+    .high = &desc_device_tablet,
     .str  = desc_strings,
 };
 
@@ -250,6 +252,7 @@ static const USBDesc desc_keyboard = {
         .iSerialNumber     = STR_SERIALNUMBER,
     },
     .full = &desc_device_keyboard,
+    .high = &desc_device_keyboard,
     .str  = desc_strings,
 };
 
-- 
1.7.12.1

  parent reply	other threads:[~2012-11-06 14:07 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-06 14:08 [Qemu-devel] usb: Move interrupt handling from poll to async handling Hans de Goede
2012-11-06 14:08 ` [Qemu-devel] [PATCH 1/8] usb-redir: Split usb_handle_interrupt_data into separate in/out functions Hans de Goede
2012-11-06 14:08 ` [Qemu-devel] [PATCH 2/8] usb-redir: Store interrupt receiving status in the bufp-queue Hans de Goede
2012-11-07  9:51   ` Paolo Bonzini
2012-11-06 14:08 ` [Qemu-devel] [PATCH 3/8] usb-redir: Only add actually in flight packets to the in flight queue Hans de Goede
2012-11-06 14:08 ` [Qemu-devel] [PATCH 4/8] usb-redir: Handle interrupt packets async Hans de Goede
2012-11-06 14:08 ` [Qemu-devel] [PATCH 5/8] ehci: Lower timer freq when there are no iso packets in the periodic schedule Hans de Goede
2012-11-06 14:08 ` [Qemu-devel] [PATCH 6/8] hid: Change idle handling to use a timer Hans de Goede
2012-11-06 14:08 ` [Qemu-devel] [PATCH 7/8] usb-hid: Move from NAK/polling to async packet handling Hans de Goede
2012-11-08 15:35   ` Gerd Hoffmann
2012-11-06 14:08 ` Hans de Goede [this message]
2012-11-07  9:47   ` [Qemu-devel] [PATCH 8/8] usb-hid: Allow connecting to a USB-2 device Paolo Bonzini
2012-11-08 15:36   ` Gerd Hoffmann
2012-11-12 11:19     ` Hans de Goede
2012-11-06 22:05 ` [Qemu-devel] usb: Move interrupt handling from poll to async handling Gerd Hoffmann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1352210901-1923-9-git-send-email-hdegoede@redhat.com \
    --to=hdegoede@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).