summaryrefslogtreecommitdiff
path: root/nuttx/arch/arm/src/dm320/dm320_usbdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/arch/arm/src/dm320/dm320_usbdev.c')
-rw-r--r--nuttx/arch/arm/src/dm320/dm320_usbdev.c20
1 files changed, 15 insertions, 5 deletions
diff --git a/nuttx/arch/arm/src/dm320/dm320_usbdev.c b/nuttx/arch/arm/src/dm320/dm320_usbdev.c
index abc89e31d..c924db197 100644
--- a/nuttx/arch/arm/src/dm320/dm320_usbdev.c
+++ b/nuttx/arch/arm/src/dm320/dm320_usbdev.c
@@ -324,7 +324,7 @@ static int dm320_epconfigure(FAR struct usbdev_ep_s *ep,
static int dm320_epdisable(FAR struct usbdev_ep_s *ep);
static FAR struct usbdev_req_s *dm320_epallocreq(FAR struct usbdev_ep_s *ep);
static void dm320_epfreereq(FAR struct usbdev_ep_s *ep, FAR struct usbdev_req_s *req);
-#ifdef CONFIG_DM320_USBDEV_DMA
+#ifdef CONFIG_USBDEV_DMA
static FAR void *dm320_epallocbuffer(FAR struct usbdev_ep_s *ep, uint16_t nbytes);
static void dm320_epfreebuffer(FAR struct usbdev_ep_s *ep, void *buf);
#endif
@@ -353,7 +353,7 @@ static const struct usbdev_epops_s g_epops =
.disable = dm320_epdisable,
.allocreq = dm320_epallocreq,
.freereq = dm320_epfreereq,
-#ifdef CONFIG_DM320_USBDEV_DMA
+#ifdef CONFIG_USBDEV_DMA
.allocbuffer = dm320_epallocbuffer,
.freebuffer = dm320_epfreebuffer,
#endif
@@ -1979,11 +1979,16 @@ static void dm320_epfreereq(FAR struct usbdev_ep_s *ep, FAR struct usbdev_req_s
*
*******************************************************************************/
-#ifdef CONFIG_DM320_USBDEV_DMA
+#ifdef CONFIG_USBDEV_DMA
static void *dm320_epallocbuffer(FAR struct usbdev_ep_s *ep, unsigned bytes)
{
usbtrace(TRACE_EPALLOCBUFFER, privep->epphy);
- return malloc(bytes)
+
+#ifdef CONFIG_USBDEV_DMAMEMORY
+ return usbdev_dma_alloc(bytes);
+#else
+ return malloc(bytes);
+#endif
}
#endif
@@ -1995,11 +2000,16 @@ static void *dm320_epallocbuffer(FAR struct usbdev_ep_s *ep, unsigned bytes)
*
*******************************************************************************/
-#ifdef CONFIG_DM320_USBDEV_DMA
+#ifdef CONFIG_USBDEV_DMA
static void dm320_epfreebuffer(FAR struct usbdev_ep_s *ep, FAR void *buf)
{
usbtrace(TRACE_EPFREEBUFFER, privep->epphy);
+
+#ifdef CONFIG_USBDEV_DMAMEMORY
+ usbdev_dma_free(buf);
+#else
free(buf);
+#endif
}
#endif