From: Stefan Agner Date: Fri, 8 Feb 2019 17:42:18 +0000 (+0100) Subject: colibri_imx6: add distroboot support X-Git-Url: http://git.dujemihanovic.xyz/login.html?a=commitdiff_plain;h=e85a536ca41f77b9d06e8a2eb703e63fb01b3f4c;p=u-boot.git colibri_imx6: add distroboot support Add support for distro boot. This is especially helpful for external devices. There is a global boot command which scans a predefined list of boot targets: run distro_bootcmd As well as direct boot commands such as: run bootcmd_mmc1 run bootcmd_usb run bootcmd_dhcp ... Refer to doc/README.distro fo details. While at it, remove the CONFIG_DRIVE_TYPES define which has not been used and was meant to be used for multi device boot support which is now provided by distroboot. Signed-off-by: Stefan Agner Acked-by: Max Krummenacher Acked-by: Marcel Ziswiler --- diff --git a/include/configs/colibri_imx6.h b/include/configs/colibri_imx6.h index c782b2924c..77f884f341 100644 --- a/include/configs/colibri_imx6.h +++ b/include/configs/colibri_imx6.h @@ -100,14 +100,18 @@ #define CONFIG_LOADADDR 0x12000000 -#ifdef CONFIG_CMD_MMC -#define CONFIG_DRIVE_MMC "mmc " +#ifndef CONFIG_SPL_BUILD +#define BOOT_TARGET_DEVICES(func) \ + func(MMC, mmc, 1) \ + func(USB, usb, 0) \ + func(DHCP, dhcp, na) +#include +#undef BOOTENV_RUN_NET_USB_START +#define BOOTENV_RUN_NET_USB_START "" #else -#define CONFIG_DRIVE_MMC +#define BOOTENV #endif -#define CONFIG_DRIVE_TYPES CONFIG_DRIVE_MMC - #define DFU_ALT_EMMC_INFO \ "u-boot.imx raw 0x2 0x3ff mmcpart 0;" \ "boot part 0 1;" \ @@ -134,7 +138,9 @@ "fdt_high=0xffffffff\0" \ "initrd_high=0xffffffff\0" \ "kernel_addr_r=0x11000000\0" \ - "ramdisk_addr_r=0x12100000\0" + "pxefile_addr_r=0x17100000\0" \ + "ramdisk_addr_r=0x12100000\0" \ + "scriptaddr=0x17000000\0" #define NFS_BOOTCMD \ "nfsargs=ip=:::::eth0:on root=/dev/nfs rw\0" \ @@ -171,9 +177,10 @@ #define FDT_FILE "imx6dl-colibri-eval-v3.dtb" #define CONFIG_EXTRA_ENV_SETTINGS \ + BOOTENV \ "bootcmd=run emmcboot ; echo ; echo emmcboot failed ; " \ - "run nfsboot ; echo ; echo nfsboot failed ; " \ - "usb start ;" \ + "run distro_bootcmd ; " \ + "usb start ; " \ "setenv stdout serial,vga ; setenv stdin serial,usbkbd\0" \ "boot_file=uImage\0" \ "console=ttymxc0\0" \