[U-Boot] [PATCH v1 2/7] usb: introduce a separate config option for DM USB device

Michal Simek michal.simek at xilinx.com
Mon May 28 08:37:01 UTC 2018


On 25.5.2018 11:32, Jean-Jacques Hiblot wrote:
> Using CONFIG_DM_USB for this purpose prevents using DM_USB for host and not
> for device.
> 
> Signed-off-by: Jean-Jacques Hiblot <jjhiblot at ti.com>
> ---
> 
>  drivers/usb/Kconfig             | 6 ++++++
>  drivers/usb/dwc3/core.c         | 2 +-
>  drivers/usb/dwc3/dwc3-generic.c | 4 +++-
>  3 files changed, 10 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/Kconfig b/drivers/usb/Kconfig
> index 4fbe172..3587ba4 100644
> --- a/drivers/usb/Kconfig
> +++ b/drivers/usb/Kconfig
> @@ -47,6 +47,12 @@ config DM_USB
>  	  declared with the U_BOOT_USB_DEVICE() macro and will be
>  	  automatically probed when found on the bus.
>  
> +config DM_USB_DEV
> +	bool "Enable driver model for USB (Peripheral mode)"
> +	depends on DM_USB
> +	help
> +	  Enable driver model for USB (Peripheral mode).
> +
>  source "drivers/usb/host/Kconfig"
>  
>  source "drivers/usb/dwc3/Kconfig"
> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
> index 1ab5cee..d5ee6d9 100644
> --- a/drivers/usb/dwc3/core.c
> +++ b/drivers/usb/dwc3/core.c
> @@ -789,7 +789,7 @@ MODULE_AUTHOR("Felipe Balbi <balbi at ti.com>");
>  MODULE_LICENSE("GPL v2");
>  MODULE_DESCRIPTION("DesignWare USB3 DRD Controller Driver");
>  
> -#ifdef CONFIG_DM_USB
> +#ifdef CONFIG_DM_USB_DEV
>  
>  int dwc3_init(struct dwc3 *dwc)
>  {
> diff --git a/drivers/usb/dwc3/dwc3-generic.c b/drivers/usb/dwc3/dwc3-generic.c
> index ca63eac..2c1e696 100644
> --- a/drivers/usb/dwc3/dwc3-generic.c
> +++ b/drivers/usb/dwc3/dwc3-generic.c
> @@ -21,7 +21,7 @@
>  #include "gadget.h"
>  #include "linux-compat.h"
>  
> -DECLARE_GLOBAL_DATA_PTR;

Removing this looks weird. I would expect that there will be new
error/warning when you compile it because gd is used in bind function.

M

> +#ifdef CONFIG_DM_USB_DEV
>  
>  int usb_gadget_handle_interrupts(int index)
>  {
> @@ -98,6 +98,8 @@ U_BOOT_DRIVER(dwc3_generic_peripheral) = {
>  	.flags	= DM_FLAG_ALLOC_PRIV_DMA,
>  };
>  
> +#endif
> +
>  static int dwc3_generic_bind(struct udevice *parent)
>  {
>  	const void *fdt = gd->fdt_blob;
> 



More information about the U-Boot mailing list