[PATCH] usb: dwc3: add EXPORT_SYMBOL_GPL for role init functions

From: Ray Chi
Date: Tue Jan 26 2021 - 06:30:04 EST


Currently, role init functions are used in dwc3 driver but
can't be called from kernel modules.
dwc3_host_init
dwc3_host_exit
dwc3_gadget_init
dwc3_gadget_exit
dwc3_event_buffers_setup
dwc3_event_buffers_cleanup

If other kernel modules want to use these functions, it needs
EXPORT_SYMBOL_GPL() to get compile pass.

Signed-off-by: Ray Chi <raychi@xxxxxxxxxx>
---
drivers/usb/dwc3/core.c | 2 ++
drivers/usb/dwc3/gadget.c | 2 ++
drivers/usb/dwc3/host.c | 2 ++
3 files changed, 6 insertions(+)

diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
index 25c686a752b0..f34a7dd5323e 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -418,6 +418,7 @@ int dwc3_event_buffers_setup(struct dwc3 *dwc)

return 0;
}
+EXPORT_SYMBOL_GPL(dwc3_event_buffers_setup);

void dwc3_event_buffers_cleanup(struct dwc3 *dwc)
{
@@ -433,6 +434,7 @@ void dwc3_event_buffers_cleanup(struct dwc3 *dwc)
| DWC3_GEVNTSIZ_SIZE(0));
dwc3_writel(dwc->regs, DWC3_GEVNTCOUNT(0), 0);
}
+EXPORT_SYMBOL_GPL(dwc3_event_buffers_cleanup);

static int dwc3_alloc_scratch_buffers(struct dwc3 *dwc)
{
diff --git a/drivers/usb/dwc3/gadget.c b/drivers/usb/dwc3/gadget.c
index 80c3ef134e41..43110bfdc440 100644
--- a/drivers/usb/dwc3/gadget.c
+++ b/drivers/usb/dwc3/gadget.c
@@ -3699,6 +3699,7 @@ int dwc3_gadget_init(struct dwc3 *dwc)
err0:
return ret;
}
+EXPORT_SYMBOL_GPL(dwc3_gadget_init);

/* -------------------------------------------------------------------------- */

@@ -3712,6 +3713,7 @@ void dwc3_gadget_exit(struct dwc3 *dwc)
dma_free_coherent(dwc->sysdev, sizeof(*dwc->ep0_trb) * 2,
dwc->ep0_trb, dwc->ep0_trb_addr);
}
+EXPORT_SYMBOL_GPL(dwc3_gadget_exit);

int dwc3_gadget_suspend(struct dwc3 *dwc)
{
diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c
index bef1c1ac2067..30589e313a67 100644
--- a/drivers/usb/dwc3/host.c
+++ b/drivers/usb/dwc3/host.c
@@ -126,8 +126,10 @@ int dwc3_host_init(struct dwc3 *dwc)
platform_device_put(xhci);
return ret;
}
+EXPORT_SYMBOL_GPL(dwc3_host_init);

void dwc3_host_exit(struct dwc3 *dwc)
{
platform_device_unregister(dwc->xhci);
}
+EXPORT_SYMBOL_GPL(dwc3_host_exit);
--
2.30.0.280.ga3ce27912f-goog