Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3ef35faf authored by Felipe Balbi's avatar Felipe Balbi
Browse files

usb: dwc3: define DWC3_EP0_BOUNCE_SIZE



to avoid sprinkling magic constants on the driver
we define a constant to be used when allocating
setup_buffer and ep0_bounce buffer.

Signed-off-by: default avatarFelipe Balbi <balbi@ti.com>
parent f898ae09
Loading
Loading
Loading
Loading
+1 −0
Original line number Original line Diff line number Diff line
@@ -51,6 +51,7 @@
#include <linux/usb/gadget.h>
#include <linux/usb/gadget.h>


/* Global constants */
/* Global constants */
#define DWC3_EP0_BOUNCE_SIZE	512
#define DWC3_ENDPOINTS_NUM	32
#define DWC3_ENDPOINTS_NUM	32
#define DWC3_XHCI_RESOURCES_NUM	2
#define DWC3_XHCI_RESOURCES_NUM	2


+7 −6
Original line number Original line Diff line number Diff line
@@ -2319,7 +2319,7 @@ int __devinit dwc3_gadget_init(struct dwc3 *dwc)
		goto err1;
		goto err1;
	}
	}


	dwc->setup_buf = kzalloc(512, GFP_KERNEL);
	dwc->setup_buf = kzalloc(DWC3_EP0_BOUNCE_SIZE, GFP_KERNEL);
	if (!dwc->setup_buf) {
	if (!dwc->setup_buf) {
		dev_err(dwc->dev, "failed to allocate setup buffer\n");
		dev_err(dwc->dev, "failed to allocate setup buffer\n");
		ret = -ENOMEM;
		ret = -ENOMEM;
@@ -2327,7 +2327,8 @@ int __devinit dwc3_gadget_init(struct dwc3 *dwc)
	}
	}


	dwc->ep0_bounce = dma_alloc_coherent(dwc->dev,
	dwc->ep0_bounce = dma_alloc_coherent(dwc->dev,
			512, &dwc->ep0_bounce_addr, GFP_KERNEL);
			DWC3_EP0_BOUNCE_SIZE, &dwc->ep0_bounce_addr,
			GFP_KERNEL);
	if (!dwc->ep0_bounce) {
	if (!dwc->ep0_bounce) {
		dev_err(dwc->dev, "failed to allocate ep0 bounce buffer\n");
		dev_err(dwc->dev, "failed to allocate ep0 bounce buffer\n");
		ret = -ENOMEM;
		ret = -ENOMEM;
@@ -2414,8 +2415,8 @@ err5:
	dwc3_gadget_free_endpoints(dwc);
	dwc3_gadget_free_endpoints(dwc);


err4:
err4:
	dma_free_coherent(dwc->dev, 512, dwc->ep0_bounce,
	dma_free_coherent(dwc->dev, DWC3_EP0_BOUNCE_SIZE,
			dwc->ep0_bounce_addr);
			dwc->ep0_bounce, dwc->ep0_bounce_addr);


err3:
err3:
	kfree(dwc->setup_buf);
	kfree(dwc->setup_buf);
@@ -2444,8 +2445,8 @@ void dwc3_gadget_exit(struct dwc3 *dwc)


	dwc3_gadget_free_endpoints(dwc);
	dwc3_gadget_free_endpoints(dwc);


	dma_free_coherent(dwc->dev, 512, dwc->ep0_bounce,
	dma_free_coherent(dwc->dev, DWC3_EP0_BOUNCE_SIZE,
			dwc->ep0_bounce_addr);
			dwc->ep0_bounce, dwc->ep0_bounce_addr);


	kfree(dwc->setup_buf);
	kfree(dwc->setup_buf);