[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-stable] [PATCH 12/38] Revert "usb-hub: report status changes only
From: |
Michael Roth |
Subject: |
[Qemu-stable] [PATCH 12/38] Revert "usb-hub: report status changes only once" |
Date: |
Wed, 25 Sep 2013 07:57:40 -0500 |
From: Gerd Hoffmann <address@hidden>
This reverts commit a309ee6e0a256f690760abfba44fceaa52a7c2f3.
This isn't in line with the usb specification and adds regressions,
win7 fails to drive the usb hub for example.
Was added because it "solved" the issue of hubs interacting badly
with the xhci host controller. Now with the root cause being fixed
in xhci (commit <FIXME>) we can revert this one.
Cc: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>
(cherry picked from commit bdebd6ee81f4d849aa8541c289203e3992450db0)
Signed-off-by: Michael Roth <address@hidden>
---
hw/usb/dev-hub.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/hw/usb/dev-hub.c b/hw/usb/dev-hub.c
index e865a98..4188a3c 100644
--- a/hw/usb/dev-hub.c
+++ b/hw/usb/dev-hub.c
@@ -33,7 +33,6 @@ typedef struct USBHubPort {
USBPort port;
uint16_t wPortStatus;
uint16_t wPortChange;
- uint16_t wPortChange_reported;
} USBHubPort;
typedef struct USBHubState {
@@ -468,11 +467,8 @@ static void usb_hub_handle_data(USBDevice *dev, USBPacket
*p)
status = 0;
for(i = 0; i < NUM_PORTS; i++) {
port = &s->ports[i];
- if (port->wPortChange &&
- port->wPortChange_reported != port->wPortChange) {
+ if (port->wPortChange)
status |= (1 << (i + 1));
- }
- port->wPortChange_reported = port->wPortChange;
}
if (status != 0) {
for(i = 0; i < n; i++) {
--
1.7.9.5
- [Qemu-stable] [PATCH 09/38] pseries: Fix stalls on hypervisor virtual console, (continued)
- [Qemu-stable] [PATCH 09/38] pseries: Fix stalls on hypervisor virtual console, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 10/38] virtio: virtqueue_get_avail_bytes: fix desc_pa when loop over the indirect descriptor table, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 08/38] pc: fix regression for 64 bit PCI memory, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 11/38] xhci: fix endpoint interval calculation, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 15/38] adlib: sort offsets in portio registration, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 14/38] target-i386: fix disassembly with PAE=1, PG=0, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 13/38] block: expect errors from bdrv_co_is_allocated, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 12/38] Revert "usb-hub: report status changes only once",
Michael Roth <=
- [Qemu-stable] [PATCH 16/38] exec: fix writing to MMIO area with non-power-of-two length, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 18/38] exec: always use MADV_DONTFORK, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 21/38] w32: Fix access to host devices (regression), Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 17/38] virtio_pci: fix level interrupts with irqfd, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 19/38] xhci: reset port when disabling slot, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 20/38] usb: parallelize usb3 streams, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 23/38] Revert "memory: Return -1 again on reads from unsigned regions", Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 24/38] exec: check offset_within_address_space for register subpage, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 22/38] memory: Provide separate handling of unassigned io ports accesses, Michael Roth, 2013/09/25
- [Qemu-stable] [PATCH 28/38] pc: Initializing ram_memory under Xen., Michael Roth, 2013/09/25