[U-Boot] [u-boot 17/40] usb: dwc3: ep0: make dwc3 ep0 build in uboot

Lukasz Majewski
2015-02-16T10:54:50Z

Hi Kishon,

> *) Changed the included header files to that used in u-boot.
> *) added dwc3_ep_event_string() used in ep0.c
> *) Fixed other misc warnings
>
> Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
> ---
> drivers/usb/dwc3/core.h | 24 ++++++++++++++++++++++++
> drivers/usb/dwc3/ep0.c | 14 ++------------
> drivers/usb/dwc3/linux-compat.h | 1 +
> 3 files changed, 27 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h
> index 97f71ad..0ffcb7d 100644
> --- a/drivers/usb/dwc3/core.h
> +++ b/drivers/usb/dwc3/core.h
> @@ -841,6 +841,30 @@ struct dwc3_event_type {
> #define DWC3_DEPEVT_EPCMDCMPLT 0x07
>
> /**
> + * dwc3_ep_event_string - returns event name
> + * @event: then event code
> + */
> +static inline const char *dwc3_ep_event_string(u8 event)
> +{
> + switch (event) {
> + case DWC3_DEPEVT_XFERCOMPLETE:
> + return "Transfer Complete";
> + case DWC3_DEPEVT_XFERINPROGRESS:
> + return "Transfer In-Progress";
> + case DWC3_DEPEVT_XFERNOTREADY:
> + return "Transfer Not Ready";
> + case DWC3_DEPEVT_RXTXFIFOEVT:
> + return "FIFO";
> + case DWC3_DEPEVT_STREAMEVT:
> + return "Stream";
> + case DWC3_DEPEVT_EPCMDCMPLT:
> + return "Endpoint Command Complete";
> + }
> +
> + return "UNKNOWN";
> +}
> +
> +/**
> * struct dwc3_event_depvt - Device Endpoint Events
> * @one_bit: indicates this is an endpoint event (not used)
> * @endpoint_number: number of the endpoint
> diff --git a/drivers/usb/dwc3/ep0.c b/drivers/usb/dwc3/ep0.c
> index 1751b1d..803ba51 100644
> --- a/drivers/usb/dwc3/ep0.c
> +++ b/drivers/usb/dwc3/ep0.c
> @@ -15,24 +15,18 @@
> */
>
> #include <linux/kernel.h>
> -#include <linux/slab.h>
> -#include <linux/spinlock.h>
> -#include <linux/platform_device.h>
> -#include <linux/pm_runtime.h>
> -#include <linux/interrupt.h>
> -#include <linux/io.h>
> #include <linux/list.h>
> -#include <linux/dma-mapping.h>
>
> #include <linux/usb/ch9.h>
> #include <linux/usb/gadget.h>
> #include <linux/usb/composite.h>
>
> #include "core.h"
> -#include "debug.h"
> #include "gadget.h"
> #include "io.h"
>
> +#include "linux-compat.h"
> +
> static void __dwc3_ep0_do_control_status(struct dwc3 *dwc, struct
> dwc3_ep *dep); static void __dwc3_ep0_do_control_data(struct dwc3
> *dwc, struct dwc3_ep *dep, struct dwc3_request *req);
> @@ -277,8 +271,6 @@ int __dwc3_gadget_ep0_set_halt(struct usb_ep *ep,
> int value)
> int dwc3_gadget_ep0_set_halt(struct usb_ep *ep, int value)
> {
> - struct dwc3_ep *dep = to_dwc3_ep(ep);
> - struct dwc3 *dwc = dep->dwc;
> unsigned long flags;
> int ret;
>
> @@ -632,12 +624,10 @@ static int dwc3_ep0_set_sel(struct dwc3 *dwc,
> struct usb_ctrlrequest *ctrl) struct dwc3_ep *dep;
> enum usb_device_state state = dwc->gadget.state;
> u16 wLength;
> - u16 wValue;
>
> if (state == USB_STATE_DEFAULT)
> return -EINVAL;
>
> - wValue = le16_to_cpu(ctrl->wValue);
> wLength = le16_to_cpu(ctrl->wLength);
>
> if (wLength != 6) {
> diff --git a/drivers/usb/dwc3/linux-compat.h
> b/drivers/usb/dwc3/linux-compat.h index 719e82e..cbfb946 100644
> --- a/drivers/usb/dwc3/linux-compat.h
> +++ b/drivers/usb/dwc3/linux-compat.h
> @@ -14,6 +14,7 @@
>
> #define pr_debug(format) debug(format)
> #define WARN(val, format, arg...) debug(format, ##arg)
> +#define dev_WARN(dev, format, arg...) debug(format, ##arg)
> #define WARN_ON_ONCE(val) debug("Error %d\n", val)
>
> #define BUILD_BUG_ON_NOT_POWER_OF_2(n)

Reviewed-by: Lukasz Majewski <l.majewski@samsung.com>

--
Best regards,

Lukasz Majewski

Samsung R&D Institute Poland (SRPOL) | Linux Platform Group