[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH 21/26] usbredir: Add USBEP2I and I2USBEP helper macr
From: |
Hans de Goede |
Subject: |
[Qemu-devel] [PATCH 21/26] usbredir: Add USBEP2I and I2USBEP helper macros |
Date: |
Fri, 14 Dec 2012 14:35:42 +0100 |
Signed-off-by: Hans de Goede <address@hidden>
---
hw/usb/redirect.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/hw/usb/redirect.c b/hw/usb/redirect.c
index 4cf8780..7b2cd8c 100644
--- a/hw/usb/redirect.c
+++ b/hw/usb/redirect.c
@@ -43,6 +43,11 @@
#define NO_INTERFACE_INFO 255 /* Valid interface_count always <= 32 */
#define EP2I(ep_address) (((ep_address & 0x80) >> 3) | (ep_address & 0x0f))
#define I2EP(i) (((i & 0x10) << 3) | (i & 0x0f))
+#define USBEP2I(usb_ep) (((usb_ep)->pid == USB_TOKEN_IN) ? \
+ ((usb_ep)->nr | 0x10) : ((usb_ep)->nr))
+#define I2USBEP(d, i) (usb_ep_get(&(d)->dev, \
+ ((i) & 0x10) ? USB_TOKEN_IN : USB_TOKEN_OUT, \
+ (i) & 0x0f))
typedef struct USBRedirDevice USBRedirDevice;
@@ -1373,11 +1378,10 @@ static void usbredir_set_pipeline(USBRedirDevice *dev,
struct USBEndpoint *uep)
static void usbredir_setup_usb_eps(USBRedirDevice *dev)
{
struct USBEndpoint *usb_ep;
- int i, pid;
+ int i;
for (i = 0; i < MAX_ENDPOINTS; i++) {
- pid = (i & 0x10) ? USB_TOKEN_IN : USB_TOKEN_OUT;
- usb_ep = usb_ep_get(&dev->dev, pid, i & 0x0f);
+ usb_ep = I2USBEP(dev, i);
usb_ep->type = dev->endpoint[i].type;
usb_ep->ifnum = dev->endpoint[i].interface;
usb_ep->max_packet_size = dev->endpoint[i].max_packet_size;
--
1.8.0.1
- [Qemu-devel] [PATCH 12/26] uhci: Fix 1 ms delay in interrupt reporting to the guest, (continued)
- [Qemu-devel] [PATCH 12/26] uhci: Fix 1 ms delay in interrupt reporting to the guest, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 10/26] ehci: Further speedup rescanning if async schedule after raising an interrupt, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 11/26] ehci: Don't call commit_irq after raising PCD, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 13/26] uhci: Fix pending interrupts getting lost on migration, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 14/26] uhci: Add a QH_VALID define, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 17/26] hid: Change idle handling to use a timer, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 15/26] uhci: Limit amount of frames processed in one go, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 20/26] usbredir: Add an usbredir_stop_ep helper function, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 19/26] usb: Add an usb_device_ep_stopped USBDevice method, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 16/26] uhci: Maximize how many frames we catch up when behind, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 21/26] usbredir: Add USBEP2I and I2USBEP helper macros,
Hans de Goede <=
- [Qemu-devel] [PATCH 22/26] usbredir: Add ep_stopped USBDevice method, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 23/26] usbredir: Verify we have 32 bits bulk length cap when redirecting to xhci, Hans de Goede, 2012/12/14
- [Qemu-devel] [PATCH 26/26] usbredir: Add support for buffered bulk input, Hans de Goede, 2012/12/14
[Qemu-devel] [PATCH 24/26] usbredir: Add usbredir_init_endpoints() helper, Hans de Goede, 2012/12/14
[Qemu-devel] [PATCH 25/26] usb-redir: Add debugging to bufpq save / restore, Hans de Goede, 2012/12/14
[Qemu-devel] [PATCH 18/26] usb: Fix usb_ep_find_packet_by_id, Hans de Goede, 2012/12/14