[PATCH v2] cmd: mmc: allow use of hardware partition names for mmc partconf

Marek Vasut marex at denx.de
Fri Apr 26 19:42:00 CEST 2024


On 4/26/24 7:36 PM, Tim Harvey wrote:
> On Fri, Apr 26, 2024 at 10:25 AM Marek Vasut <marex at denx.de> wrote:
>>
>> On 4/26/24 7:12 PM, Tim Harvey wrote:
>>> eMMC devices have hardware partitions such as user, boot0, and boot1.
>>> Allow these names to be displayed when reading the mmc PARTITION_CONFIG
>>> field via 'mmc partconf'. Additionally allow a name to be specified when
>>> setting the PARTITION_CONFIG.
>>>
>>> Before:
>>> u-boot=> mmc partconf 2 1 1 0 && mmc partconf 2
>>> EXT_CSD[179], PARTITION_CONFIG:
>>> BOOT_ACK: 0x1
>>> BOOT_PARTITION_ENABLE: 0x2
>>> PARTITION_ACCESS: 0x0
>>>
>>> After:
>>> u-boot=> mmc partconf 2 1 1 0 && mmc partconf 2
>>> EXT_CSD[179], PARTITION_CONFIG:
>>> BOOT_ACK: 0x1
>>> BOOT_PARTITION_ENABLE: 0x1 (boot0)
>>> PARTITION_ACCESS: 0x0
>>> u-boot=> mmc partconf 2 1 boot1 0 && mmc partconf 2
>>> EXT_CSD[179], PARTITION_CONFIG:
>>> BOOT_ACK: 0x1
>>> BOOT_PARTITION_ENABLE: 0x2 (boot1)
>>> PARTITION_ACCESS: 0x0
>>>
>>> Signed-off-by: Tim Harvey <tharvey at gateworks.com>
>>> ---
>>> v2:
>>>    - fix typo in subject
>>>    - add names for gp1..gp4
>>> ---
>>>    cmd/mmc.c | 25 ++++++++++++++++++++++---
>>>    1 file changed, 22 insertions(+), 3 deletions(-)
>>>
>>> diff --git a/cmd/mmc.c b/cmd/mmc.c
>>> index 2d5430a53079..af9a66cc6df4 100644
>>> --- a/cmd/mmc.c
>>> +++ b/cmd/mmc.c
>>> @@ -14,6 +14,18 @@
>>>    #include <part.h>
>>>    #include <sparse_format.h>
>>>    #include <image-sparse.h>
>>> +#include <linux/ctype.h>
>>> +
>>> +static const char *mmc_partnames[] = {
>>> +     "user",
>>> +     "boot0",
>>> +     "boot1",
>>> +     "gp1",
>>> +     "gp2",
>>> +     "gp3",
>>> +     "gp4",
>>
>> Uh, maybe gp%d are indexed from zero too ?
>>
>> (sorry for the confusion)
> 
> but 'mmc hwpartition' does not list them 0 based:
> u-boot=> mmc hwpartition
> switch to partitions #0, OK
> mmc2(part 0) is current device
> Partition configuration:
>          No enhanced user data area
>          No GP1 partition
>          No GP2 partition
>          No GP3 partition
>          No GP4 partition
> 
> I'm ok with either, I'm just not sure what is more understandable and standard.

Then 1-based counting is OK, thanks for checking !


More information about the U-Boot mailing list