1 /* SPDX-License-Identifier: GPL-2.0+ */ 2 /* 3 * Boot related environment variable definitions on TI boards. 4 * 5 * (C) Copyright 2017 Linaro Ltd. 6 * Sam Protsenko <semen.protsenko@linaro.org> 7 */ 8 9 #ifndef __TI_BOOT_H 10 #define __TI_BOOT_H 11 12 #ifndef CONSOLEDEV 13 #define CONSOLEDEV "ttyO2" 14 #endif 15 16 #ifndef PARTS_DEFAULT 17 #define PARTS_DEFAULT 18 #endif 19 20 #define DEFAULT_COMMON_BOOT_TI_ARGS \ 21 "console=" CONSOLEDEV ",115200n8\0" \ 22 "fdtfile=undefined\0" \ 23 "bootpart=0:2\0" \ 24 "bootdir=/boot\0" \ 25 "bootfile=zImage\0" \ 26 "usbtty=cdc_acm\0" \ 27 "vram=16M\0" \ 28 "partitions=" PARTS_DEFAULT "\0" \ 29 "optargs=\0" \ 30 "dofastboot=0\0" \ 31 "emmc_linux_boot=" \ 32 "echo Trying to boot Linux from eMMC ...; " \ 33 "setenv mmcdev 1; " \ 34 "setenv bootpart 1:2; " \ 35 "setenv mmcroot /dev/mmcblk0p2 rw; " \ 36 "run mmcboot;\0" \ 37 "emmc_android_boot=" \ 38 "echo Trying to boot Android from eMMC ...; " \ 39 "setenv eval_bootargs setenv bootargs $bootargs; " \ 40 "run eval_bootargs; " \ 41 "setenv mmcdev 1; " \ 42 "setenv machid fe6; " \ 43 "mmc dev $mmcdev; " \ 44 "mmc rescan; " \ 45 "part start mmc ${mmcdev} environment fdt_start; " \ 46 "part size mmc ${mmcdev} environment fdt_size; " \ 47 "part start mmc ${mmcdev} boot boot_start; " \ 48 "part size mmc ${mmcdev} boot boot_size; " \ 49 "mmc read ${fdtaddr} ${fdt_start} ${fdt_size}; " \ 50 "mmc read ${loadaddr} ${boot_start} ${boot_size}; " \ 51 "bootm $loadaddr $loadaddr $fdtaddr;\0" 52 53 #ifdef CONFIG_OMAP54XX 54 55 #define DEFAULT_FDT_TI_ARGS \ 56 "findfdt="\ 57 "if test $board_name = omap5_uevm; then " \ 58 "setenv fdtfile omap5-uevm.dtb; fi; " \ 59 "if test $board_name = dra7xx; then " \ 60 "setenv fdtfile dra7-evm.dtb; fi;" \ 61 "if test $board_name = dra72x-revc; then " \ 62 "setenv fdtfile dra72-evm-revc.dtb; fi;" \ 63 "if test $board_name = dra72x; then " \ 64 "setenv fdtfile dra72-evm.dtb; fi;" \ 65 "if test $board_name = dra71x; then " \ 66 "setenv fdtfile dra71-evm.dtb; fi;" \ 67 "if test $board_name = dra76x_acd; then " \ 68 "setenv fdtfile dra76-evm.dtb; fi;" \ 69 "if test $board_name = beagle_x15; then " \ 70 "setenv fdtfile am57xx-beagle-x15.dtb; fi;" \ 71 "if test $board_name = beagle_x15_revb1; then " \ 72 "setenv fdtfile am57xx-beagle-x15-revb1.dtb; fi;" \ 73 "if test $board_name = beagle_x15_revc; then " \ 74 "setenv fdtfile am57xx-beagle-x15-revc.dtb; fi;" \ 75 "if test $board_name = am572x_idk; then " \ 76 "setenv fdtfile am572x-idk.dtb; fi;" \ 77 "if test $board_name = am574x_idk; then " \ 78 "setenv fdtfile am574x-idk.dtb; fi;" \ 79 "if test $board_name = am57xx_evm; then " \ 80 "setenv fdtfile am57xx-beagle-x15.dtb; fi;" \ 81 "if test $board_name = am57xx_evm_reva3; then " \ 82 "setenv fdtfile am57xx-beagle-x15.dtb; fi;" \ 83 "if test $board_name = am571x_idk; then " \ 84 "setenv fdtfile am571x-idk.dtb; fi;" \ 85 "if test $fdtfile = undefined; then " \ 86 "echo WARNING: Could not determine device tree to use; fi; \0" 87 88 #define CONFIG_BOOTCOMMAND \ 89 "if test ${dofastboot} -eq 1; then " \ 90 "echo Boot fastboot requested, resetting dofastboot ...;" \ 91 "setenv dofastboot 0; saveenv;" \ 92 "echo Booting into fastboot ...; " \ 93 "fastboot " __stringify(CONFIG_FASTBOOT_USB_DEV) "; " \ 94 "fi;" \ 95 "if test ${boot_fit} -eq 1; then " \ 96 "run update_to_fit;" \ 97 "fi;" \ 98 "run findfdt; " \ 99 "run envboot; " \ 100 "run mmcboot;" \ 101 "run emmc_linux_boot; " \ 102 "run emmc_android_boot; " \ 103 "" 104 105 #endif /* CONFIG_OMAP54XX */ 106 107 #endif /* __TI_BOOT_H */ 108