summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/usb/gadget/mv_udc.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/usb/gadget/mv_udc.c b/drivers/usb/gadget/mv_udc.c
index bed5898..210373d 100644
--- a/drivers/usb/gadget/mv_udc.c
+++ b/drivers/usb/gadget/mv_udc.c
@@ -44,7 +44,7 @@ static const char *reqname(unsigned r)
#endif
#define PAGE_SIZE 4096
-#define QH_MAXNUM 32
+
static struct usb_endpoint_descriptor ep0_out_desc = {
.bLength = sizeof(struct usb_endpoint_descriptor),
.bDescriptorType = USB_DT_ENDPOINT,
@@ -425,10 +425,11 @@ static int mvudc_probe(void)
{
struct ept_queue_head *head;
int i;
+ const int num = 2 * NUM_ENDPOINTS;
controller.gadget.ops = &mv_udc_ops;
- epts = memalign(PAGE_SIZE, QH_MAXNUM * sizeof(struct ept_queue_head));
- memset(epts, 0, QH_MAXNUM * sizeof(struct ept_queue_head));
+ epts = memalign(PAGE_SIZE, num * sizeof(struct ept_queue_head));
+ memset(epts, 0, num * sizeof(struct ept_queue_head));
for (i = 0; i < 2 * NUM_ENDPOINTS; i++) {
/*
* For item0 and item1, they are served as ep0