2006-05-25 07:22:07

by Milan Svoboda

[permalink] [raw]
Subject: [PATCH 3/5] usb gadget: update pxa2xx_udc.c driver to fully support IXP4xx platform

--- orig/drivers/usb/gadget/pxa2xx_udc.c 2006-05-15 16:08:27.000000000 +0000
+++ new_gadget/drivers/usb/gadget/pxa2xx_udc.c 2006-05-15 15:59:13.000000000 +0000
@@ -548,6 +548,7 @@ write_ep0_fifo (struct pxa2xx_ep *ep, st
count = req->req.length;
done (ep, req, 0);
ep0_idle(ep->dev);
+#ifndef CONFIG_ARCH_IXP4XX
#if 1
/* This seems to get rid of lost status irqs in some cases:
* host responds quickly, or next request involves config
@@ -568,6 +569,7 @@ write_ep0_fifo (struct pxa2xx_ep *ep, st
} while (count);
}
#endif
+#endif
} else if (ep->dev->req_pending)
ep0start(ep->dev, 0, "IN");
return is_short;
@@ -2430,6 +2432,7 @@ static struct pxa2xx_udc memory = {
#define PXA210_B1 0x00000123
#define PXA210_B0 0x00000122
#define IXP425_A0 0x000001c1
+#define IXP465_AD 0x00000200

/*
* probe - binds to the platform device
@@ -2465,6 +2468,9 @@ static int pxa2xx_udc_probe(struct platf
case PXA250_C0: case PXA210_C0:
break;
#elif defined(CONFIG_ARCH_IXP4XX)
+ case IXP465_AD:
+ dev->has_cfr = 1;
+ /* fall through */
case IXP425_A0:
out_dma = 0;
break;





Attachments:
work_with_ixp465.patch (1.09 kB)