pico-imx6ul: Add DFU support
authorVanessa Maegima <vanessa.maegima@nxp.com>
Wed, 15 Jun 2016 15:48:14 +0000 (12:48 -0300)
committerStefano Babic <sbabic@denx.de>
Tue, 12 Jul 2016 15:58:49 +0000 (17:58 +0200)
DFU is a convenient way to program U-boot binary into the eMMC.

Add support for it.

Signed-off-by: Vanessa Maegima <vanessa.maegima@nxp.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
configs/pico-imx6ul_defconfig
include/configs/pico-imx6ul.h

index ab9c9f1357dfce45b66fcd84fcda8e053f092714..e202159fe8d18f8ad21705ee2376fb176f425efe 100644 (file)
@@ -10,6 +10,7 @@ CONFIG_CMD_MEMTEST=y
 # CONFIG_CMD_FLASH is not set
 CONFIG_CMD_MMC=y
 CONFIG_CMD_USB=y
+CONFIG_CMD_DFU=y
 CONFIG_CMD_USB_MASS_STORAGE=y
 CONFIG_CMD_GPIO=y
 CONFIG_CMD_DHCP=y
@@ -21,4 +22,11 @@ CONFIG_CMD_EXT4=y
 CONFIG_CMD_EXT4_WRITE=y
 CONFIG_CMD_FAT=y
 CONFIG_CMD_FS_GENERIC=y
+CONFIG_USB=y
+CONFIG_USB_GADGET=y
+CONFIG_CI_UDC=y
+CONFIG_USB_GADGET_DOWNLOAD=y
+CONFIG_G_DNL_MANUFACTURER="FSL"
+CONFIG_G_DNL_VENDOR_NUM=0x0525
+CONFIG_G_DNL_PRODUCT_NUM=0xa4a5
 CONFIG_OF_LIBFDT=y
index 73e37e1bbd03c4198d6e247198023663c28e6b47..db78a543a88fc3c215d6ef4d8fee6b43f9398c67 100644 (file)
@@ -28,7 +28,7 @@
 #define CONFIG_PHY_MICREL
 
 /* Size of malloc() pool */
-#define CONFIG_SYS_MALLOC_LEN          (16 * SZ_1M)
+#define CONFIG_SYS_MALLOC_LEN          (35 * SZ_1M) /* Increase due to DFU */
 
 #define CONFIG_BOARD_EARLY_INIT_F
 
 #define CONFIG_USB_GADGET_DOWNLOAD
 #define CONFIG_USB_GADGET_VBUS_DRAW    2
 
+#define CONFIG_USB_FUNCTION_DFU
+#define CONFIG_DFU_MMC
+#define CONFIG_SYS_DFU_DATA_BUF_SIZE SZ_16M
+#define DFU_DEFAULT_POLL_TIMEOUT 300
+
 #define CONFIG_G_DNL_VENDOR_NUM                0x0525
 #define CONFIG_G_DNL_PRODUCT_NUM       0xa4a5
 #define CONFIG_G_DNL_MANUFACTURER      "FSL"
@@ -86,6 +91,7 @@
        "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
        "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
        "mmcautodetect=yes\0" \
+       "dfu_alt_info=boot raw 0x2 0x400 mmcpart 1\0" \
        "mmcargs=setenv bootargs console=${console},${baudrate} " \
                "root=${mmcroot}\0" \
        "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \