This behavior is seen in omap5_uevm and dra7xx evm boards respectively. The u-boot is built from meta-ti-glsdk layer. The branch used here is p-ti-u-boot-2013.04. And the source is fetched from git://git.omapzoom.org/repo/u-boot.git. Its found that when user tries to print mmcboot, using pri mmcboot the u-boot gets reset. After setting the variables using saveenv command its also observed that 'mmc part' doesn't work and user can see an infinite loop of prints of prefetch abort.
Below mentioned is the activity done in the u-boot which shows pri mmcboot leads to resetting and hanging of u-boot:
DRA752 EVM # pri
arch=arm
baudrate=115200
board=dra7xx
board_name=dra7xx
bootcmd=run findfdt; run mmcboot;setenv mmcdev 1; setenv bootpart 1:2; run mmcboot;
bootdelay=3
bootdir=/boot
bootfile=zImage
bootpart=0:2
bootscript=echo Running bootscript from mmc${mmcdev} ...; source ${loadaddr}
console=ttyO2,115200n8
cpu=armv7
eth1addr=7c:66:9d:ea:56:29
ethact=cpsw
ethaddr=7c:66:9d:ea:56:28
fdt_high=0xffffffff
fdtaddr=0x80f80000
findfdt=if test $board_name = omap5_uevm; then setenv fdtfile omap5-uevm.dtb; fi;
importbootenv=echo Importing environment from mmc${mmcdev} ...; env import -t ${loadaddr} ${filesize}
loadaddr=0x82000000
loadbootenv=fatload mmc ${mmcdev} ${loadaddr} uEnv.txt
loadbootscript=fatload mmc ${mmcdev} ${loadaddr} boot.scr
loadfdt=load mmc ${bootpart} ${fdtaddr} ${bootdir}/${fdtfile};
loadimage=load mmc ${bootpart} ${loadaddr} ${bootdir}/${bootfile}
mmcargs=setenv bootargs console=${console} ${optargs} vram=${vram} root=${mmcroot} rootfstype=${mmcrootfstype}
mmcboot=mmc dev ${mmcdev}; if mmc rescan; then echo SD/MMC found on device ${mmcdev};if run loadbootscript; then run bootscript; else if run loadbootenv; then run importbootenv; fi;if test -n ${uenvcmd}; ;
mmcdev=0
mmcroot=/dev/mmcblk0p2 rw
mmcrootfstype=ext4 rootwait
soc=omap5
usbtty=cdc_acm
vendor=ti
vram=16M
Environment size: 1480/131068 bytes
DRA752 EVM # pri bootcmd
bootcmd=run findfdt; run mmcboot;setenv mmcdev 1; setenv bootpart 1:2; run mmcboot;
DRA752 EVM # pri mmcboot
mmcboot=mmc dev ${mmcdev}; if mmc rescan; then echo SD/MMC found on device ${mmcdev};if run loadbootscript; then run bootscript; else if run loadbootenv; then run importbootenv; fi;if test -n ${uenvcmd}; ;
prefetch abort
pc : [<61636d70>] lr : [<61636d6d>]
sp : def13dc0 ip : 00000000 fp : def142d0
r10: defcc414 r9 : 00000002 r8 : def13f38
r7 : def144d0 r6 : 00000001 r5 : 00000000 r4 : 206e7572
r3 : 00000000 r2 : 00000001 r1 : 0000000a r0 : 00000154
Flags: nZCv IRQs off FIQs off Mode SVC_32
Resetting CPU ...
resetting ...