| Embedded device command line partition parsing | 
 | ===================================================================== | 
 |  | 
 | Support for reading the block device partition table from the command line. | 
 | It is typically used for fixed block (eMMC) embedded devices. | 
 | It has no MBR, so saves storage space. Bootloader can be easily accessed | 
 | by absolute address of data on the block device. | 
 | Users can easily change the partition. | 
 |  | 
 | The format for the command line is just like mtdparts: | 
 |  | 
 | blkdevparts=<blkdev-def>[;<blkdev-def>] | 
 |   <blkdev-def> := <blkdev-id>:<partdef>[,<partdef>] | 
 |     <partdef> := <size>[@<offset>](part-name) | 
 |  | 
 | <blkdev-id> | 
 |     block device disk name, embedded device used fixed block device, | 
 |     it's disk name also fixed. such as: mmcblk0, mmcblk1, mmcblk0boot0. | 
 |  | 
 | <size> | 
 |     partition size, in bytes, such as: 512, 1m, 1G. | 
 |  | 
 | <offset> | 
 |     partition start address, in bytes. | 
 |  | 
 | (part-name) | 
 |     partition name, kernel send uevent with "PARTNAME". application can create | 
 |     a link to block device partition with the name "PARTNAME". | 
 |     user space application can access partition by partition name. | 
 |  | 
 | Example: | 
 |     eMMC disk name is "mmcblk0" and "mmcblk0boot0" | 
 |  | 
 |   bootargs: | 
 |     'blkdevparts=mmcblk0:1G(data0),1G(data1),-;mmcblk0boot0:1m(boot),-(kernel)' | 
 |  | 
 |   dmesg: | 
 |     mmcblk0: p1(data0) p2(data1) p3() | 
 |     mmcblk0boot0: p1(boot) p2(kernel) |