[U-Boot] [PATCH v2 1/3] arm: omap: Define command for booting Android from eMMC

Sam Protsenko semen.protsenko at linaro.org
Tue Aug 22 15:06:09 UTC 2017


On 18 August 2017 at 14:42, Jaehoon Chung <jh80.chung at samsung.com> wrote:
> On 08/16/2017 09:55 PM, Sam Protsenko wrote:
>> If SD card is present -- try to boot from it first. If no -- try to boot
>> Android from eMMC.
>
> Well, i didn't know exactly..but is it working?
>

Yes, I verified it on AM57x EVM, it's working just fine. All my
previous patches were meant exactly for this: booting Android from
eMMC. This patch series just finishes the job.

Do you see anything suspicious about this? If so, please tell.

>>
>> Signed-off-by: Sam Protsenko <semen.protsenko at linaro.org>
>> ---
>> Changes in v2:
>>  - Do not remove the attempt to boot regular Linux from eMMC
>>    (just add Android boot in the end of the cycle)
>>
>>  include/environment/ti/boot.h | 20 +++++++++++++++++++-
>>  1 file changed, 19 insertions(+), 1 deletion(-)
>>
>> diff --git a/include/environment/ti/boot.h b/include/environment/ti/boot.h
>> index 1c3ae40a99..a05f5ba9bd 100644
>> --- a/include/environment/ti/boot.h
>> +++ b/include/environment/ti/boot.h
>> @@ -28,7 +28,24 @@
>>       "vram=16M\0" \
>>       "partitions=" PARTS_DEFAULT "\0" \
>>       "optargs=\0" \
>> -     "dofastboot=0\0"
>> +     "dofastboot=0\0" \
>> +     "emmc_android_boot=" \
>> +             "setenv eval_bootargs setenv bootargs $bootargs; " \
>> +             "run eval_bootargs; " \
>> +             "setenv mmcdev 1; " \
>
> Need to do "setenv mmcdev 1"? Did it already set before doing "run emmc_android_boot;"?
>

Frankly, I want to keep "emmc_android_boot" command as explicit and
independent as I can. Say, if user changes "mmcdev" variable, I want
to be sure that "emmc_android_boot" will fix it.

>> +             "setenv fdt_part 3; " \
>> +             "setenv boot_part 9; " \
>> +             "setenv machid fe6; " \
>> +             "mmc dev $mmcdev; " \
>> +             "mmc rescan; " \
>
> Why do "mmc rescan"?
>

The same as above. I want to keep this command independent. So that if
user was using SD card, "emmc_android_boot" will switch to eMMC
anyway, before trying to boot.

>> +             "part start mmc ${mmcdev} ${fdt_part} fdt_start; " \
>> +             "part size mmc ${mmcdev} ${fdt_part} fdt_size; " \
>> +             "part start mmc ${mmcdev} ${boot_part} boot_start; " \
>> +             "part size mmc ${mmcdev} ${boot_part} boot_size; " \
>> +             "mmc read ${fdtaddr} ${fdt_start} ${fdt_size}; " \
>> +             "mmc read ${loadaddr} ${boot_start} ${boot_size}; " \
>> +             "echo Booting from eMMC ...; " \
>> +             "bootm $loadaddr $loadaddr $fdtaddr;\0"
>>
>>  #ifdef CONFIG_OMAP54XX
>>
>> @@ -76,6 +93,7 @@
>>       "setenv bootpart 1:2; " \
>>       "setenv mmcroot /dev/mmcblk0p2 rw; " \
>>       "run mmcboot;" \
>> +     "run emmc_android_boot; " \
>>       ""
>>
>>  #endif /* CONFIG_OMAP54XX */
>>
>


More information about the U-Boot mailing list