summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVanessa Maegima <vanessa.maegima@nxp.com>2016-06-15 15:48:14 (GMT)
committerStefano Babic <sbabic@denx.de>2016-07-12 15:58:49 (GMT)
commitaf07d1544e3e61cb311432dc20b24053dc1318aa (patch)
tree826c415edebf8a074ab3fb3fbcb24e8cc3d9bd49
parent6d7aa51accd3ae19ad25259f46a6043ef3f02ce2 (diff)
downloadu-boot-af07d1544e3e61cb311432dc20b24053dc1318aa.tar.xz
pico-imx6ul: Add DFU support
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>
-rw-r--r--configs/pico-imx6ul_defconfig8
-rw-r--r--include/configs/pico-imx6ul.h8
2 files changed, 15 insertions, 1 deletions
diff --git a/configs/pico-imx6ul_defconfig b/configs/pico-imx6ul_defconfig
index ab9c9f1..e202159 100644
--- a/configs/pico-imx6ul_defconfig
+++ b/configs/pico-imx6ul_defconfig
@@ -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
diff --git a/include/configs/pico-imx6ul.h b/include/configs/pico-imx6ul.h
index 73e37e1..db78a54 100644
--- a/include/configs/pico-imx6ul.h
+++ b/include/configs/pico-imx6ul.h
@@ -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
@@ -63,6 +63,11 @@
#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" \