1. 17 4月, 2013 28 次提交
  2. 16 4月, 2013 12 次提交
    • A
      Merge remote-tracking branch 'kraxel/usb.80' into staging · 86c7dba0
      Anthony Liguori 提交于
      # By Gerd Hoffmann (6) and Hans de Goede (1)
      # Via Gerd Hoffmann
      * kraxel/usb.80:
        use libusb for usb-host
        xhci: fix address device
        xhci: use slotid as device address
        xhci: fix portsc writes
        xhci: add xhci_cap_write
        xhci: remove leftover debug printf
        usb-serial: Remove double call to qemu_chr_add_handlers( NULL )
      
      Message-id: 1366107190-30853-1-git-send-email-kraxel@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      86c7dba0
    • A
      Merge remote-tracking branch 'spice/spice.v69' into staging · 6f8111a1
      Anthony Liguori 提交于
      # By Hans de Goede (5) and others
      # Via Gerd Hoffmann
      * spice/spice.v69:
        spice-qemu-char: vmc_write: Don't write more bytes then we're asked too
        spice-qemu-char: Remove intermediate buffer
        spice-qemu-char: Add watch support
        spice-qemu-char: Remove #ifdef-ed code for old spice-server compat
        virtio-console: Remove any pending watches on close
        virtio-console: Also throttle when less was written then requested
        spice: (32 bit only) fix surface cmd tracking destruction
        qxl: add 2000x2000 and 2048x2048 video modes
        qxl: add 4k + 8k resolutions
      
      Message-id: 1366106194-28826-1-git-send-email-kraxel@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      6f8111a1
    • A
      Merge remote-tracking branch 'kraxel/pixman.v11' into staging · 100c5332
      Anthony Liguori 提交于
      # By Gerd Hoffmann (22) and Igor Mitsyanko (2)
      # Via Gerd Hoffmann
      * kraxel/pixman.v11: (24 commits)
        qxl: register QemuConsole for secondary cards
        gtk: custom cursor support
        console: allow pinning displaychangelisteners to consoles
        console: add qemu_console_is_*
        xen: re-enable refresh interval reporting for xenfb
        console: gui timer fixes
        console: add GraphicHwOps
        console: make DisplayState private to console.c
        console: move gui_update+gui_setup_refresh from vl.c into console.c
        console: zap g_width + g_height
        console: simplify screendump
        console: give each QemuConsole its own DisplaySurface
        console: rename vga_hw_*, add QemuConsole param
        console: displaystate init revamp
        console: add trace events
        console: switch color_table_rgb to pixman_color_t
        console: use pixman for font rendering
        console: use pixman for fill+blit
        pixman: render vgafont glyphs into pixman images
        pixman: add qemu_pixman_color()
        ...
      
      Message-id: 1366105178-26744-1-git-send-email-kraxel@redhat.com
      Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
      100c5332
    • A
      Merge remote-tracking branch 'afaerber/qom-cpu' into staging · 398973fe
      Anthony Liguori 提交于
      # By Igor Mammedov (8) and others
      # Via Andreas Färber
      * afaerber/qom-cpu:
        target-cris: Override do_interrupt for pre-v32 CPU cores
        qdev: Set device's parent before calling realize() down inheritance chain
        cpu: Pass CPUState to *cpu_synchronize_post*()
        target-i386: Split out CPU creation and features parsing
        target-i386/cpu.c: Coding style fixes
        ioapic: Replace FROM_SYSBUS() with QOM type cast
        kvmvapic: Replace FROM_SYSBUS() with QOM type cast
        target-i386: Split APIC creation from initialization in x86_cpu_realizefn()
        target-i386: Consolidate error propagation in x86_cpu_realizefn()
        qdev: Add qdev property for bool type
        target-i386: Improve -cpu ? features output
        target-i386: Fix including "host" in -cpu ? output
      398973fe
    • G
      use libusb for usb-host · 2b2325ff
      Gerd Hoffmann 提交于
      Reimplement usb-host on top of libusb.
      Reasons to do this:
      
       (1) Largely rewritten from scratch, nice opportunity to kill historical
           cruft.
       (2) Offload usbfs handling to libusb.
       (3) Have a single portable code base instead of bsd + linux variants.
       (4) Bring usb-host support to any platform supported by libusbx.
      
      For now this goes side-by-side to the existing code.  That is only to
      simplify regression testing though, at the end of the day I want remove
      the old code and support libusb exclusively.  Merge early in 1.5 cycle,
      remove the old code after 1.5 release or something like this.
      
      Thanks to qdev the old and new code can coexist nicely on linux.  Just
      use "-device usb-host-linux" to use the old linux driver instead of the
      libusb one (which takes over the "usb-host" name).
      
      The bsd driver isn't qdev'ified so it isn't that easy for bsd.
      I didn't bother making it runtime switchable, so you have to rebuild
      qemu with --disable-libusb to get back the old code.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      2b2325ff
    • G
      xhci: fix address device · a6718874
      Gerd Hoffmann 提交于
      Zero-initialize the set-address dummy USBPacket,
      also add buffer to avoid sanity checks triggering.
      
      https://bugzilla.redhat.com/show_bug.cgi?id=929019Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      a6718874
    • G
      xhci: use slotid as device address · af203be3
      Gerd Hoffmann 提交于
      Is good enougth for unique device addresses and avoids the need for any
      state for device addressing.  Makes live migration support easier.  Also
      makes device->slot lookups trivial.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      af203be3
    • G
      xhci: fix portsc writes · bdfce20d
      Gerd Hoffmann 提交于
      Check for port reset first and skip everything else then.
      Add sanity checks for PLS updates.
      Add PLC notification when entering PLS_U0 state.
      
      This gets host-initiated port resume going on win8.
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      bdfce20d
    • G
      xhci: add xhci_cap_write · 6d3bc22e
      Gerd Hoffmann 提交于
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      6d3bc22e
    • G
      xhci: remove leftover debug printf · 94ae9eec
      Gerd Hoffmann 提交于
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      94ae9eec
    • H
      usb-serial: Remove double call to qemu_chr_add_handlers( NULL ) · 7598b41c
      Hans de Goede 提交于
      usb-serial has a qdev chardev property, and hw/qdev-properties-system.c
      already contains:
      
      static void release_chr(Object *obj, const char *name, void *opaque)
      {
          DeviceState *dev = DEVICE(obj);
          Property *prop = opaque;
          CharDriverState **ptr = qdev_get_prop_ptr(dev, prop);
          CharDriverState *chr = *ptr;
      
          if (chr) {
              qemu_chr_add_handlers(chr, NULL, NULL, NULL, NULL);
              qemu_chr_fe_release(chr);
          }
      }
      
      So doing the qemu_chr_add_handlers(s->cs, NULL, NULL, NULL, NULL); from
      the usb handle_destroy function too will lead to it being done twice.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      7598b41c
    • H
      spice-qemu-char: vmc_write: Don't write more bytes then we're asked too · 75c439bc
      Hans de Goede 提交于
      This one took me eons to debug, but I've finally found it now, oh well.
      
      The usage of the MIN macro in this line:
          last_out = MIN(len, qemu_chr_be_can_write(scd->chr));
      
      Causes qemu_chr_be_can_write to be called *twice*, since the MIN macro
      evaluates its arguments twice (bad MIN macro, bad!). And the result of
      the call can change between the 2 calls since the guest may have consumed
      some data from the virtio ringbuffer between the calls!
      
      When this happens it is possible for qemu_chr_be_can_write to return less
      then len in the call made for the comparision, and then to return more then
      len in the actual call for the return-value of MIN, after which we will end
      up writing len data + some extra garbage, not good.
      
      This patch fixes this by only calling qemu_chr_be_can_write once.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
      75c439bc