From 63095ab54c1ce554b1fc825fc678394ccb129e5b Mon Sep 17 00:00:00 2001 From: Gerd Hoffmann Date: Thu, 12 Jan 2012 13:24:22 +0100 Subject: [PATCH] usb: add USBEndpoint->{nr,pid} Add a "nr" and "pid" fields to USBEndpoint so you can easily figure the endpoint number and direction of any given endpoint. Signed-off-by: Gerd Hoffmann --- hw/usb.c | 5 +++++ hw/usb.h | 2 ++ 2 files changed, 7 insertions(+) diff --git a/hw/usb.c b/hw/usb.c index 8584db0dec..8bd1222ccd 100644 --- a/hw/usb.c +++ b/hw/usb.c @@ -402,10 +402,15 @@ void usb_ep_init(USBDevice *dev) { int ep; + dev->ep_ctl.nr = 0; dev->ep_ctl.type = USB_ENDPOINT_XFER_CONTROL; dev->ep_ctl.ifnum = 0; dev->ep_ctl.dev = dev; for (ep = 0; ep < USB_MAX_ENDPOINTS; ep++) { + dev->ep_in[ep].nr = ep + 1; + dev->ep_out[ep].nr = ep + 1; + dev->ep_in[ep].pid = USB_TOKEN_IN; + dev->ep_out[ep].pid = USB_TOKEN_OUT; dev->ep_in[ep].type = USB_ENDPOINT_XFER_INVALID; dev->ep_out[ep].type = USB_ENDPOINT_XFER_INVALID; dev->ep_in[ep].ifnum = 0; diff --git a/hw/usb.h b/hw/usb.h index 4e878d350a..1e629af682 100644 --- a/hw/usb.h +++ b/hw/usb.h @@ -171,6 +171,8 @@ struct USBDescString { #define USB_MAX_INTERFACES 16 struct USBEndpoint { + uint8_t nr; + uint8_t pid; uint8_t type; uint8_t ifnum; int max_packet_size;