[U-Boot] [PATCH] ARM: imx6: Enable UMS and DFU on DHCOM i.MX6 PDK
Lukasz Majewski
lukma at denx.de
Sat Oct 21 22:38:10 UTC 2017
Hi Marek,
> Enable UMS and DFU, so that the eMMC can be accessed via the
> USB gadget port on the board.
>
> Signed-off-by: Marek Vasut <marex at denx.de>
> Cc: Stefano Babic <sbabic at denx.de>
> ---
> board/dhelectronics/dh_imx6/dh_imx6.c | 10 ++--------
> configs/dh_imx6_defconfig | 8 ++++++++
> include/configs/dh_imx6.h | 12 ++++++++++++
> 3 files changed, 22 insertions(+), 8 deletions(-)
>
> diff --git a/board/dhelectronics/dh_imx6/dh_imx6.c
> b/board/dhelectronics/dh_imx6/dh_imx6.c index e372fbad32..f730e5febd
> 100644 --- a/board/dhelectronics/dh_imx6/dh_imx6.c
> +++ b/board/dhelectronics/dh_imx6/dh_imx6.c
> @@ -253,16 +253,10 @@ static void setup_usb(void)
>
> int board_usb_phy_mode(int port)
> {
> - return USB_INIT_HOST;
> -}
> -
> -/* Use only Port 1 == DHCOM USB Host 1 */
> -int board_ehci_hcd_init(int port)
> -{
> if (port == 1)
> - return 0;
> + return USB_INIT_HOST;
> else
> - return -ENODEV;
> + return USB_INIT_DEVICE;
> }
>
> int board_ehci_power(int port, int on)
> diff --git a/configs/dh_imx6_defconfig b/configs/dh_imx6_defconfig
> index 5125260ee4..ef6dc564d1 100644
> --- a/configs/dh_imx6_defconfig
> +++ b/configs/dh_imx6_defconfig
> @@ -20,6 +20,7 @@ CONFIG_CMD_BOOTZ=y
> # CONFIG_CMD_IMLS is not set
> CONFIG_CMD_MEMTEST=y
> CONFIG_CMD_UNZIP=y
> +CONFIG_CMD_DFU=y
> # CONFIG_CMD_FLASH is not set
> CONFIG_CMD_GPIO=y
> CONFIG_CMD_I2C=y
> @@ -28,6 +29,7 @@ CONFIG_CMD_PART=y
> CONFIG_CMD_SATA=y
> CONFIG_CMD_SF=y
> CONFIG_CMD_USB=y
> +CONFIG_CMD_USB_MASS_STORAGE=y
> CONFIG_CMD_DHCP=y
> CONFIG_CMD_MII=y
> CONFIG_CMD_PING=y
> @@ -48,4 +50,10 @@ CONFIG_NETDEVICES=y
> CONFIG_FEC_MXC=y
> CONFIG_USB=y
> CONFIG_USB_STORAGE=y
> +CONFIG_USB_GADGET=y
> +CONFIG_CI_UDC=y
> +CONFIG_USB_GADGET_DOWNLOAD=y
> +CONFIG_G_DNL_MANUFACTURER="dh"
> +CONFIG_G_DNL_VENDOR_NUM=0x0525
> +CONFIG_G_DNL_PRODUCT_NUM=0xa4a5
Newest mainline has switched from G_DNL -> USB_GADGET
> CONFIG_OF_LIBFDT=y
> diff --git a/include/configs/dh_imx6.h b/include/configs/dh_imx6.h
> index 0595f60e32..11a01d476f 100644
> --- a/include/configs/dh_imx6.h
> +++ b/include/configs/dh_imx6.h
> @@ -115,6 +115,18 @@
> #define CONFIG_MXC_USB_PORTSC (PORT_PTS_UTMI |
> PORT_PTS_PTW) #define CONFIG_MXC_USB_FLAGS 0
> #define CONFIG_USB_MAX_CONTROLLER_COUNT 2 /* Enabled USB
> controller number */ +
> +/* USB Gadget (DFU, UMS) */
> +#if defined(CONFIG_CMD_DFU) || defined(CONFIG_CMD_USB_MASS_STORAGE)
> +#define CONFIG_USB_FUNCTION_MASS_STORAGE
> +
> +#define CONFIG_SYS_DFU_DATA_BUF_SIZE (16 * 1024 * 1024)
> +#define DFU_DEFAULT_POLL_TIMEOUT 300
> +
> +/* USB IDs */
> +#define CONFIG_G_DNL_UMS_VENDOR_NUM 0x0525
> +#define CONFIG_G_DNL_UMS_PRODUCT_NUM 0xA4A5
> +#endif
> #endif
>
> /* Watchdog */
Best regards,
Lukasz Majewski
--
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
More information about the U-Boot
mailing list