12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- .. SPDX-License-Identifier: GPL-2.0+
- mbr command
- ===========
- Synopsis
- --------
- ::
- mbr verify [interface] [device no] [partition list]
- mbr write [interface] [device no] [partition list]
- Description
- -----------
- The mbr command lets users create or verify the MBR (Master Boot Record)
- partition layout based on the provided text description. The partition
- layout is alternatively read from the '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 partition 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)
- * id (MBR partition type)
- If one wants to create more than 4 partitions, an 'Extended' primary
- partition (with 0x05 ID) has to be explicitly provided as a one of the
- first 4 entries.
- Here is an 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
- To check if the layout on the MMC #0 storage device matches the provided
- text description one has to issue following command (assuming that
- mbr_parts environment variable is set):
- ::
- => mbr verify mmc 0
- The verify sub-command is especially useful in the system update scripts:
- ::
- => if mbr verify mmc 0; then
- echo MBR layout needs to be updated
- ...
- fi
- The 'mbr write' command returns 0 on success write or 1 on failure.
- The 'mbr verify' returns 0 if the layout matches the one on the storage
- device or 1 if not.
- Configuration
- -------------
- To use the mbr command you must specify CONFIG_CMD_MBR=y.
- Return value
- ------------
- The variable *$?* takes the following values
- +---+------------------------------+
- | 0 | mbr write was succesful |
- +---+------------------------------+
- | 1 | mbr write failed |
- +---+------------------------------+
- | 0 | mbr verify was succesful |
- +---+------------------------------+
- | 1 | mbr verify was not succesful |
- +---+------------------------------+
- |-1 | invalid arguments |
- +---+------------------------------+
|