[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 3/7] xhci: Init a transfers xhci, slotid and epid me
|
From: |
Gerd Hoffmann |
|
Subject: |
[Qemu-devel] [PATCH 3/7] xhci: Init a transfers xhci, slotid and epid member on epctx alloc |
|
Date: |
Thu, 19 Sep 2013 11:34:54 +0200 |
From: Hans de Goede <address@hidden>
Transfers are part of an epctx, which is part of a slot, which is part of
a xhci. Transfers cannot dynamically be moved from one epctx to another,
so once created their xhci, slotid and epid are constant, so lets set these
up at creation time, rather then re-initializing them with the same
value each time a transfer gets submitted.
Signed-off-by: Hans de Goede <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>
---
hw/usb/hcd-xhci.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/hw/usb/hcd-xhci.c b/hw/usb/hcd-xhci.c
index 69d9144..7c0c0c4 100644
--- a/hw/usb/hcd-xhci.c
+++ b/hw/usb/hcd-xhci.c
@@ -1245,6 +1245,9 @@ static XHCIEPContext *xhci_alloc_epctx(XHCIState *xhci,
epctx->epid = epid;
for (i = 0; i < ARRAY_SIZE(epctx->transfers); i++) {
+ epctx->transfers[i].xhci = xhci;
+ epctx->transfers[i].slotid = slotid;
+ epctx->transfers[i].epid = epid;
usb_packet_init(&epctx->transfers[i].packet);
}
epctx->kick_timer = timer_new_ns(QEMU_CLOCK_VIRTUAL, xhci_ep_kick_timer,
epctx);
@@ -2060,9 +2063,6 @@ static void xhci_kick_ep(XHCIState *xhci, unsigned int
slotid,
for (i = 0; i < length; i++) {
assert(xhci_ring_fetch(xhci, ring, &xfer->trbs[i], NULL));
}
- xfer->xhci = xhci;
- xfer->epid = epid;
- xfer->slotid = slotid;
xfer->streamid = streamid;
if (epid == 1) {
--
1.8.3.1
- [Qemu-devel] [PULL 0/7] usb patch queue, Gerd Hoffmann, 2013/09/19
- [Qemu-devel] [PATCH 6/7] usb: Also reset max_packet_size on ep_reset, Gerd Hoffmann, 2013/09/19
- [Qemu-devel] [PATCH 2/7] xhci: Fix number of streams allocated when using streams, Gerd Hoffmann, 2013/09/19
- [Qemu-devel] [PATCH 3/7] xhci: Init a transfers xhci, slotid and epid member on epctx alloc,
Gerd Hoffmann <=
- [Qemu-devel] [PATCH 5/7] xhci: Fix memory leak on xhci_disable_ep, Gerd Hoffmann, 2013/09/19
- [Qemu-devel] [PATCH 4/7] xhci: Add xhci_epid_to_usbep helper function, Gerd Hoffmann, 2013/09/19
- [Qemu-devel] [PATCH 7/7] usb: Fix iovec memleak on combined-packet free, Gerd Hoffmann, 2013/09/19
- [Qemu-devel] [PATCH 1/7] usb: remove old usb-host code, Gerd Hoffmann, 2013/09/19