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

Lukasz Majewski l.majewski at samsung.com
Mon Feb 16 11:54:50 CET 2015


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 at 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 at samsung.com>

-- 
Best regards,

Lukasz Majewski

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


More information about the U-Boot mailing list