+# U-boot script for tizen VF2
+
+if test "${target}" = "mmc0"; then;
+ setenv bootdev mmc
+fi
+if test "${target}" = "usb0"; then;
+ setenv bootdev usb
+ setenv opts "${opts} rootdelay=2"
+fi
+
+if test -e $bootdev $mmcbootdev:$mmcinformpart $slotfile; then;
+ ext4load $bootdev $mmcbootdev:$mmcinformpart $slot_addr $slotfile;
+ if itest.b *${slot_addr} == 0x62; then;
+ setenv ramdiskpart 14
+ setenv partition_ab b
+ echo "boot from slot_b";
+ else
+ setenv ramdiskpart 9
+ setenv partition_ab a
+ echo "boot from slot_a";
+ fi
+else
+ setenv ramdiskpart 9
+ setenv partition_ab a
+ echo "boot from slot_a";
+fi
+
+if test -e $bootdev $mmcbootdev:$mmcinformpart $rebootparamfile; then;
+ ext4load $bootdev $mmcbootdev:$mmcinformpart $rebootparam_addr $rebootparamfile;
+ if itest.l *${rebootparam_addr} == ${upgrade_val}; then;
+ if test "${partition_ab}" = "b"; then
+ setenv ramdiskpart 15
+ else
+ setenv ramdiskpart 9
+ fi
+ setenv bootmode fota
+ elif itest.l *${rebootparam_addr} == ${recovery_val}; then;
+ if test "${partition_ab}" = "b"; then
+ setenv ramdiskpart 15
+ else
+ setenv ramdiskpart 9
+ fi
+ setenv bootmode recovery
+ elif itest.l *${rebootparam_addr} == ${download_val}; then;
+ if test "${partition_ab}" = "b"; then
+ setenv ramdiskpart 15
+ else
+ setenv ramdiskpart 9
+ fi
+ setenv bootmode flash
+ elif itest.l *${rebootparam_addr} == ${nodef_val}; then;
+ echo "This reboot parameter is not supported...";
+ fi
+fi
+
+# This is for jumping to flash mode on u-boot.
+if test "${bootmode}" = "download"; then;
+ if test "${partition_ab}" = "b"; then
+ setenv ramdiskpart 15
+ else
+ setenv ramdiskpart 9
+ fi
+ setenv bootmode flash
+fi
+
+if test "${bootmode}" = "flash"; then;
+ if test -n "${ipaddr}"; then;
+ ip_opt=\"ip=${ipaddr}::${gateway}:${netmask}\"
+ fi
+fi
+
+# boot from ramdisk if there is sbin
+if test -e $bootdev $mmcrootdev:$ramdiskpart sbin/init; then;
+ if test "${bootdev}" = "mmc"; then;
+ setenv rootdev mmcblk${mmcrootdev}p${ramdiskpart}
+ fi
+ if test "${bootdev}" = "usb"; then;
+ setenv rootdev sda${ramdiskpart}
+ fi
+else
+ if test "${bootdev}" = "mmc"; then;
+ setenv rootdev mmcblk${mmcrootdev}p${mmcrootpart}
+ fi
+ if test "${bootdev}" = "usb"; then;
+ setenv rootdev sda${mmcrootpart}
+ fi
+ setenv bootmode normal
+fi
+
+# setting console device if noting is set
+if test -z "${console}"; then;
+ setenv console "console=tty0 console=ttyS0,115200 earlycon"
+fi
+echo "console: ${console}"
+
+# DT image by model
+setenv boot_prefixes \"/\"
+
+# To use cmdline for using serial console. /* Normal mode */
+setenv bootargs \"${tizen_bootarg} root=/dev/${rootdev} rw bootmode=${bootmode} partition_ab=${partition_ab} rootwait ${console} ${opts} ${ip_opt} stmmaceth=chain_mode:1\"
+
+echo "Searching for kernel in"; for prefix in $boot_prefixes; do
+if load $bootdev $mmcbootdev:$mmcbootpart $kernel_addr_r $prefix$kernel; then;
+ echo ${bootmode} "boot from" ${rootdev};
+
+ load $bootdev $mmcrootdev:$mmcbootpart $fdt_addr_r $fdtfile
+ booti $kernel_addr_r - $fdt_addr_r;
+fi
+done