[PATCH v2 6/6] cmd: Add MBR partition layout control utility
Simon Glass
sjg at chromium.org
Tue Dec 29 04:31:49 CET 2020
Hi Marek,
On Tue, 22 Dec 2020 at 07:09, Marek Szyprowski <m.szyprowski at samsung.com> wrote:
>
> Add a 'mbr' command to let user create or verify MBR partition layout
> based on the provided text description. The partition layout is
> altearnatively read from 'mbr_parts' environment variable. This can be
> used in scripts to help system image flashing tools to ensure proper
> partition layout.
>
> The syntax of the text description of the partition list is similar to
> the one used by the 'gpt' command. Supported parameters are: name
> (currently ignored), start (partition start offset in bytes), size (in
> bytes or '-' to expand it to the whole free area), bootable (boolean
> flag) and id (MBR partition system ID). If one wants to create more than
> 4 partitions, an 'Extended' primary partition (with 0x05 ID) has to be
> explicitely provided as a one of the first 4 entries.
>
> Here is the example how to create a 6 partitions (3 on the 'extended
> volume'), some of the predefined sizes:
>
> > setenv mbr_parts 'name=boot,start=4M,size=128M,bootable,id=0x0e;
> name=rootfs,size=3072M,id=0x83;
> name=system-data,size=512M,id=0x83;
> name=[ext],size=-,id=0x05;
> name=user,size=-,id=0x83;
> name=modules,size=100M,id=0x83;
> name=ramdisk,size=8M,id=0x83'
> > mbr write mmc 0
>
> Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
> ---
> cmd/Kconfig | 8 ++
> cmd/Makefile | 1 +
> cmd/mbr.c | 314 ++++++++++++++++++++++++++++++++++++++++++++
> doc/usage/index.rst | 1 +
> doc/usage/mbr.rst | 93 +++++++++++++
> 5 files changed, 417 insertions(+)
> create mode 100644 cmd/mbr.c
> create mode 100644 doc/usage/mbr.rst
This looks good - is it possible to write a test for it?
Perhaps a test for str_to_partitions() and the other functions there
would be a good start?
Regards,
Simon
More information about the U-Boot
mailing list