[U-Boot] accessing eMMC boot partitions from U-Boot

Stephen Warren swarren at wwwdotorg.org
Tue Mar 14 04:41:18 UTC 2017


On 03/13/2017 06:54 PM, Ziyuan wrote:
> hi Stephen,
>
> On 03/14/2017 05:49 AM, Stephen Warren wrote:
>> On 03/13/2017 03:34 PM, Tim Harvey wrote:
>>> Greetings,
>>>
>>> I'm working with some boards with eMMC FLASH and understand that I can
>>> set the fields of the PARTITION_CONFIG with the 'mmc partconf' command
>>> to specify what partition is used for boot. Once I do that to set the
>>> boot0 partition for example, how can I access that  partition from
>>> within u-boot via mmc read/write? In Linux the kernel provides access
>>> to user/boot0/boot1/rpmb via different devices, but I don't see u-boot
>>> doing that.
>>
>> The "mmc dev" command can be used to select which MMC device to
>> operate on. The "typical" command "mmc dev 0" selects the main
>> partition on MMC device 0 for later MMC-specific commands such as "mmc
>> read". You can add an extra parameter to that command to request a
>> specific HW partition, e.g. "mmc dev 0 1" selects boo0 of MMC device 0
>> and "mmc dev 0 2" selects boot1.
>
> The 4th of "mmc dev 0 1" is the *software* partition index, not the hw
> partition index. AKA eMMC has four partitions: user
> data/boot0/boot1/rpmb, I think Tim wanna to boot from other partition,
> like boot0, right?

The fourth parameter is the HW partition number. See how cmd/mmc.c's 
do_mmc_dev() passes this value to blk_select_hwpart_devnum(), then to 
blk_select_hwpart().


More information about the U-Boot mailing list