mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-10-05 19:10:53 +09:00
colibri_vf: 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_mmc0 run bootcmd_usb run bootcmd_dhcp ... Refer to doc/README.distro fo details. While at it also re-order boot command macros as well as the CONFIG_EXTRA_ENV_SETTINGS. Signed-off-by: Stefan Agner <stefan.agner@toradex.com> Acked-by: Max Krummenacher <max.krummenacher@toradex.com> Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Igor Opaniuk <igor.opaniuk@toradex.com>
This commit is contained in:
parent
c12e415c87
commit
06487fd188
@ -48,13 +48,15 @@
|
|||||||
/* We boot from the gfxRAM area of the OCRAM. */
|
/* We boot from the gfxRAM area of the OCRAM. */
|
||||||
#define CONFIG_BOARD_SIZE_LIMIT 520192
|
#define CONFIG_BOARD_SIZE_LIMIT 520192
|
||||||
|
|
||||||
#define SD_BOOTCMD \
|
#define MEM_LAYOUT_ENV_SETTINGS \
|
||||||
"sdargs=root=/dev/mmcblk0p2 rw rootwait\0" \
|
"bootm_size=0x10000000\0" \
|
||||||
"sdboot=run setup; setenv bootargs ${defargs} ${sdargs} ${mtdparts} " \
|
"fdt_addr_r=0x82000000\0" \
|
||||||
"${setupargs} ${vidargs}; echo Booting from MMC/SD card...; " \
|
"fdt_high=0xffffffff\0" \
|
||||||
"load mmc 0:2 ${kernel_addr_r} /boot/${kernel_file} && " \
|
"initrd_high=0xffffffff\0" \
|
||||||
"load mmc 0:2 ${fdt_addr_r} /boot/${soc}-colibri-${fdt_board}.dtb && " \
|
"kernel_addr_r=0x81000000\0" \
|
||||||
"run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \
|
"pxefile_addr_r=0x87100000\0" \
|
||||||
|
"ramdisk_addr_r=0x82100000\0" \
|
||||||
|
"scriptaddr=0x87000000\0"
|
||||||
|
|
||||||
#define NFS_BOOTCMD \
|
#define NFS_BOOTCMD \
|
||||||
"nfsargs=ip=:::::eth0: root=/dev/nfs\0" \
|
"nfsargs=ip=:::::eth0: root=/dev/nfs\0" \
|
||||||
@ -65,7 +67,15 @@
|
|||||||
"tftp ${fdt_addr_r} ${soc}-colibri-${fdt_board}.dtb && " \
|
"tftp ${fdt_addr_r} ${soc}-colibri-${fdt_board}.dtb && " \
|
||||||
"run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \
|
"run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \
|
||||||
|
|
||||||
#define UBI_BOOTCMD \
|
#define SD_BOOTCMD \
|
||||||
|
"sdargs=root=/dev/mmcblk0p2 rw rootwait\0" \
|
||||||
|
"sdboot=run setup; setenv bootargs ${defargs} ${sdargs} ${mtdparts} " \
|
||||||
|
"${setupargs} ${vidargs}; echo Booting from MMC/SD card...; " \
|
||||||
|
"load mmc 0:2 ${kernel_addr_r} /boot/${kernel_file} && " \
|
||||||
|
"load mmc 0:2 ${fdt_addr_r} /boot/${soc}-colibri-${fdt_board}.dtb && " \
|
||||||
|
"run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \
|
||||||
|
|
||||||
|
#define UBI_BOOTCMD \
|
||||||
"ubiargs=ubi.mtd=ubi root=ubi0:rootfs rootfstype=ubifs " \
|
"ubiargs=ubi.mtd=ubi root=ubi0:rootfs rootfstype=ubifs " \
|
||||||
"ubi.fm_autoconvert=1\0" \
|
"ubi.fm_autoconvert=1\0" \
|
||||||
"ubiboot=run setup; " \
|
"ubiboot=run setup; " \
|
||||||
@ -76,36 +86,43 @@
|
|||||||
"ubi read ${fdt_addr_r} dtb && " \
|
"ubi read ${fdt_addr_r} dtb && " \
|
||||||
"run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \
|
"run fdt_fixup && bootz ${kernel_addr_r} - ${fdt_addr_r}\0" \
|
||||||
|
|
||||||
#define CONFIG_BOOTCOMMAND "run ubiboot; run sdboot; run nfsboot"
|
#define CONFIG_BOOTCOMMAND "run ubiboot; run distro_bootcmd;"
|
||||||
|
|
||||||
|
#define BOOT_TARGET_DEVICES(func) \
|
||||||
|
func(MMC, mmc, 0) \
|
||||||
|
func(USB, usb, 0) \
|
||||||
|
func(DHCP, dhcp, na)
|
||||||
|
#include <config_distro_bootcmd.h>
|
||||||
|
#undef BOOTENV_RUN_NET_USB_START
|
||||||
|
#define BOOTENV_RUN_NET_USB_START ""
|
||||||
|
|
||||||
#define DFU_ALT_NAND_INFO "vf-bcb part 0,1;u-boot part 0,2;ubi part 0,4"
|
#define DFU_ALT_NAND_INFO "vf-bcb part 0,1;u-boot part 0,2;ubi part 0,4"
|
||||||
|
|
||||||
#define CONFIG_EXTRA_ENV_SETTINGS \
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
||||||
"kernel_addr_r=0x82000000\0" \
|
BOOTENV \
|
||||||
"fdt_addr_r=0x84000000\0" \
|
MEM_LAYOUT_ENV_SETTINGS \
|
||||||
"kernel_file=zImage\0" \
|
|
||||||
"fdt_file=${soc}-colibri-${fdt_board}.dtb\0" \
|
|
||||||
"fdt_board=eval-v3\0" \
|
|
||||||
"fdt_fixup=;\0" \
|
|
||||||
"defargs=\0" \
|
|
||||||
"console=ttyLP0\0" \
|
|
||||||
"setup=setenv setupargs " \
|
|
||||||
"console=tty1 console=${console}" \
|
|
||||||
",${baudrate}n8 ${memargs}\0" \
|
|
||||||
"setsdupdate=mmc rescan && set interface mmc && " \
|
|
||||||
"fatload ${interface} 0:1 ${loadaddr} flash_blk.img && " \
|
|
||||||
"source ${loadaddr}\0" \
|
|
||||||
"setusbupdate=usb start && set interface usb && " \
|
|
||||||
"fatload ${interface} 0:1 ${loadaddr} flash_blk.img && " \
|
|
||||||
"source ${loadaddr}\0" \
|
|
||||||
"setupdate=run setsdupdate || run setusbupdate\0" \
|
|
||||||
"mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \
|
|
||||||
"dfu_alt_info=" DFU_ALT_NAND_INFO "\0" \
|
|
||||||
"video-mode=dcufb:640x480-16@60,monitor=lcd\0" \
|
|
||||||
"splashpos=m,m\0" \
|
|
||||||
SD_BOOTCMD \
|
|
||||||
NFS_BOOTCMD \
|
NFS_BOOTCMD \
|
||||||
UBI_BOOTCMD
|
SD_BOOTCMD \
|
||||||
|
UBI_BOOTCMD \
|
||||||
|
"console=ttyLP0\0" \
|
||||||
|
"defargs=\0" \
|
||||||
|
"dfu_alt_info=" DFU_ALT_NAND_INFO "\0" \
|
||||||
|
"fdt_board=eval-v3\0" \
|
||||||
|
"fdt_file=${soc}-colibri-${fdt_board}.dtb\0" \
|
||||||
|
"fdt_fixup=;\0" \
|
||||||
|
"kernel_file=zImage\0" \
|
||||||
|
"mtdparts=" CONFIG_MTDPARTS_DEFAULT "\0" \
|
||||||
|
"setsdupdate=mmc rescan && set interface mmc && " \
|
||||||
|
"fatload ${interface} 0:1 ${loadaddr} flash_blk.img && " \
|
||||||
|
"source ${loadaddr}\0" \
|
||||||
|
"setup=setenv setupargs console=tty1 console=${console}" \
|
||||||
|
",${baudrate}n8 ${memargs}\0" \
|
||||||
|
"setupdate=run setsdupdate || run setusbupdate\0" \
|
||||||
|
"setusbupdate=usb start && set interface usb && " \
|
||||||
|
"fatload ${interface} 0:1 ${loadaddr} flash_blk.img && " \
|
||||||
|
"source ${loadaddr}\0" \
|
||||||
|
"splashpos=m,m\0" \
|
||||||
|
"video-mode=dcufb:640x480-16@60,monitor=lcd\0"
|
||||||
|
|
||||||
/* Miscellaneous configurable options */
|
/* Miscellaneous configurable options */
|
||||||
#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
|
#define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */
|
||||||
|
Loading…
Reference in New Issue
Block a user