188fdfcd2SSekhar Nori /* 288fdfcd2SSekhar Nori * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com 388fdfcd2SSekhar Nori * 488fdfcd2SSekhar Nori * Environment variable definitions for MMC/SD on TI boards. 588fdfcd2SSekhar Nori * 688fdfcd2SSekhar Nori * SPDX-License-Identifier: GPL-2.0+ 788fdfcd2SSekhar Nori */ 888fdfcd2SSekhar Nori 9*19de2debSSemen Protsenko #ifndef __TI_MMC_H 10*19de2debSSemen Protsenko #define __TI_MMC_H 11*19de2debSSemen Protsenko 1288fdfcd2SSekhar Nori #define DEFAULT_MMC_TI_ARGS \ 1388fdfcd2SSekhar Nori "mmcdev=0\0" \ 1488fdfcd2SSekhar Nori "mmcrootfstype=ext4 rootwait\0" \ 1588fdfcd2SSekhar Nori "finduuid=part uuid mmc ${bootpart} uuid\0" \ 1688fdfcd2SSekhar Nori "args_mmc=run finduuid;setenv bootargs console=${console} " \ 1788fdfcd2SSekhar Nori "${optargs} " \ 1888fdfcd2SSekhar Nori "root=PARTUUID=${uuid} rw " \ 1988fdfcd2SSekhar Nori "rootfstype=${mmcrootfstype}\0" \ 2088fdfcd2SSekhar Nori "loadbootscript=load mmc ${mmcdev} ${loadaddr} boot.scr\0" \ 2188fdfcd2SSekhar Nori "bootscript=echo Running bootscript from mmc${mmcdev} ...; " \ 2288fdfcd2SSekhar Nori "source ${loadaddr}\0" \ 2388fdfcd2SSekhar Nori "bootenvfile=uEnv.txt\0" \ 2488fdfcd2SSekhar Nori "importbootenv=echo Importing environment from mmc${mmcdev} ...; " \ 2588fdfcd2SSekhar Nori "env import -t ${loadaddr} ${filesize}\0" \ 2688fdfcd2SSekhar Nori "loadbootenv=fatload mmc ${mmcdev} ${loadaddr} ${bootenvfile}\0" \ 2788fdfcd2SSekhar Nori "loadimage=load ${devtype} ${bootpart} ${loadaddr} ${bootdir}/${bootfile}\0" \ 2888fdfcd2SSekhar Nori "loadfdt=load ${devtype} ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile}\0" \ 2988fdfcd2SSekhar Nori "envboot=mmc dev ${mmcdev}; " \ 3088fdfcd2SSekhar Nori "if mmc rescan; then " \ 3188fdfcd2SSekhar Nori "echo SD/MMC found on device ${mmcdev};" \ 3288fdfcd2SSekhar Nori "if run loadbootscript; then " \ 3388fdfcd2SSekhar Nori "run bootscript;" \ 3488fdfcd2SSekhar Nori "else " \ 3588fdfcd2SSekhar Nori "if run loadbootenv; then " \ 3688fdfcd2SSekhar Nori "echo Loaded env from ${bootenvfile};" \ 3788fdfcd2SSekhar Nori "run importbootenv;" \ 3888fdfcd2SSekhar Nori "fi;" \ 3988fdfcd2SSekhar Nori "if test -n $uenvcmd; then " \ 4088fdfcd2SSekhar Nori "echo Running uenvcmd ...;" \ 4188fdfcd2SSekhar Nori "run uenvcmd;" \ 4288fdfcd2SSekhar Nori "fi;" \ 4388fdfcd2SSekhar Nori "fi;" \ 4488fdfcd2SSekhar Nori "fi;\0" \ 4588fdfcd2SSekhar Nori "mmcloados=run args_mmc; " \ 4688fdfcd2SSekhar Nori "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 4788fdfcd2SSekhar Nori "if run loadfdt; then " \ 4888fdfcd2SSekhar Nori "bootz ${loadaddr} - ${fdtaddr}; " \ 4988fdfcd2SSekhar Nori "else " \ 5088fdfcd2SSekhar Nori "if test ${boot_fdt} = try; then " \ 5188fdfcd2SSekhar Nori "bootz; " \ 5288fdfcd2SSekhar Nori "else " \ 5388fdfcd2SSekhar Nori "echo WARN: Cannot load the DT; " \ 5488fdfcd2SSekhar Nori "fi; " \ 5588fdfcd2SSekhar Nori "fi; " \ 5688fdfcd2SSekhar Nori "else " \ 5788fdfcd2SSekhar Nori "bootz; " \ 5888fdfcd2SSekhar Nori "fi;\0" \ 5988fdfcd2SSekhar Nori "mmcboot=mmc dev ${mmcdev}; " \ 6088fdfcd2SSekhar Nori "setenv devnum ${mmcdev}; " \ 6188fdfcd2SSekhar Nori "setenv devtype mmc; " \ 6288fdfcd2SSekhar Nori "if mmc rescan; then " \ 6388fdfcd2SSekhar Nori "echo SD/MMC found on device ${mmcdev};" \ 6488fdfcd2SSekhar Nori "if run loadimage; then " \ 6588fdfcd2SSekhar Nori "if test ${boot_fit} -eq 1; then " \ 6688fdfcd2SSekhar Nori "run loadfit; " \ 6788fdfcd2SSekhar Nori "else " \ 6888fdfcd2SSekhar Nori "run mmcloados;" \ 6988fdfcd2SSekhar Nori "fi;" \ 7088fdfcd2SSekhar Nori "fi;" \ 7188fdfcd2SSekhar Nori "fi;\0" 72*19de2debSSemen Protsenko 73*19de2debSSemen Protsenko #endif /* __TI_MMC_H */ 74