pico-imx7d: Add default DFU targets
[oweals/u-boot.git] / include / configs / pico-imx7d.h
index d128eded05416f076235815ff866b26a36e855c3..23ac103f13066e82ad1160aef4b1e56fe6f5abd0 100644 (file)
@@ -1,9 +1,8 @@
+/* SPDX-License-Identifier: GPL-2.0+ */
 /*
  * Copyright (C) 2017 NXP Semiconductors
  *
  * Configuration settings for the i.MX7D Pico board.
- *
- * SPDX-License-Identifier:    GPL-2.0+
  */
 
 #ifndef __PICO_IMX7D_CONFIG_H
@@ -25,7 +24,6 @@
 #define CONFIG_ETHPRIME                        "FEC"
 #define CONFIG_FEC_MXC_PHYADDR         1
 
-#define CONFIG_PHYLIB
 #define CONFIG_PHY_ATHEROS
 
 /* ENET1 */
 /* MMC Config */
 #define CONFIG_SYS_FSL_ESDHC_ADDR      0
 
+#define CONFIG_DFU_ENV_SETTINGS \
+       "dfu_alt_info=u-boot raw 0x2 0x400 mmcpart 1;" \
+               "/boot/zImage ext4 0 1;" \
+               "/boot/imx7d-pico-pi.dtb ext4 0 1;" \
+               "rootfs part 0 1\0" \
+
 #define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */
 #define CONFIG_SYS_MMC_IMG_LOAD_PART   1
 
        "console=ttymxc4\0" \
        "fdt_high=0xffffffff\0" \
        "initrd_high=0xffffffff\0" \
-       "fdt_file=imx7d-pico.dtb\0" \
+       "fdtfile=imx7d-pico-pi.dtb\0" \
        "fdt_addr=0x83000000\0" \
-       "ip_dyn=yes\0" \
-       "mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \
-       "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \
-       "finduuid=part uuid mmc 0:2 uuid\0" \
-       "mmcargs=setenv bootargs console=${console},${baudrate} " \
-               "root=PARTUUID=${uuid} rootwait rw\0" \
-       "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \
-       "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
-       "mmcboot=echo Booting from mmc ...; " \
-               "run finduuid; " \
-               "run mmcargs; " \
-               "if run loadfdt; then " \
-                       "bootz ${loadaddr} - ${fdt_addr}; " \
-               "else " \
-                       "echo WARN: Cannot load the DT; " \
-               "fi;\0" \
-       "netargs=setenv bootargs console=${console},${baudrate} " \
-               "root=/dev/nfs " \
-       "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
-               "netboot=echo Booting from net ...; " \
-               "run netargs; " \
-               "if test ${ip_dyn} = yes; then " \
-                       "setenv get_cmd dhcp; " \
-               "else " \
-                       "setenv get_cmd tftp; " \
-               "fi; " \
-               "${get_cmd} ${image}; " \
-               "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
-                       "bootz ${loadaddr} - ${fdt_addr}; " \
-               "else " \
-                       "echo WARN: Cannot load the DT; " \
-               "fi;\0"
-
-#define CONFIG_BOOTCOMMAND \
-       "if mmc rescan; then " \
-               "if run loadimage; then " \
-                       "run mmcboot; " \
-               "else run netboot; " \
-               "fi; " \
-       "else run netboot; fi"
+       "fdt_addr_r=0x83000000\0" \
+       "kernel_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
+       "pxefile_addr_r=" __stringify(CONFIG_LOADADDR) "\0" \
+       "ramdisk_addr_r=0x83000000\0" \
+       "ramdiskaddr=0x83000000\0" \
+       "scriptaddr=" __stringify(CONFIG_LOADADDR) "\0" \
+       CONFIG_DFU_ENV_SETTINGS \
+       "finduuid=part uuid mmc 0:1 uuid\0" \
+       "partitions=" \
+               "uuid_disk=${uuid_gpt_disk};" \
+               "name=rootfs,size=0,uuid=${uuid_gpt_rootfs}\0" \
+       "setup_emmc=mmc dev 0; gpt write mmc 0 $partitions; reset;\0" \
+       BOOTENV
+
+#define BOOT_TARGET_DEVICES(func) \
+       func(MMC, mmc, 0) \
+       func(DHCP, dhcp, na)
+
+#include <config_distro_bootcmd.h>
 
 #define CONFIG_SYS_MEMTEST_START       0x80000000
 #define CONFIG_SYS_MEMTEST_END         (CONFIG_SYS_MEMTEST_START + 0x20000000)
 
 /* FLASH and environment organization */
 #define CONFIG_ENV_SIZE                        SZ_8K
-#define CONFIG_ENV_IS_IN_MMC
 
 #define CONFIG_ENV_OFFSET                      (8 * SZ_64K)
 #define CONFIG_SYS_FSL_USDHC_NUM               2
 
 #define CONFIG_IMX_THERMAL
 
-#define CONFIG_USB_FUNCTION_MASS_STORAGE
-
 #endif