1898bd37aSMauro Carvalho Chehab============================================== 2898bd37aSMauro Carvalho ChehabEmbedded device command line partition parsing 3898bd37aSMauro Carvalho Chehab============================================== 4898bd37aSMauro Carvalho Chehab 5898bd37aSMauro Carvalho ChehabThe "blkdevparts" command line option adds support for reading the 6898bd37aSMauro Carvalho Chehabblock device partition table from the kernel command line. 7898bd37aSMauro Carvalho Chehab 8898bd37aSMauro Carvalho ChehabIt is typically used for fixed block (eMMC) embedded devices. 9898bd37aSMauro Carvalho ChehabIt has no MBR, so saves storage space. Bootloader can be easily accessed 10898bd37aSMauro Carvalho Chehabby absolute address of data on the block device. 11898bd37aSMauro Carvalho ChehabUsers can easily change the partition. 12898bd37aSMauro Carvalho Chehab 13898bd37aSMauro Carvalho ChehabThe format for the command line is just like mtdparts: 14898bd37aSMauro Carvalho Chehab 15898bd37aSMauro Carvalho Chehabblkdevparts=<blkdev-def>[;<blkdev-def>] 16898bd37aSMauro Carvalho Chehab <blkdev-def> := <blkdev-id>:<partdef>[,<partdef>] 17898bd37aSMauro Carvalho Chehab <partdef> := <size>[@<offset>](part-name) 18898bd37aSMauro Carvalho Chehab 19898bd37aSMauro Carvalho Chehab<blkdev-id> 20898bd37aSMauro Carvalho Chehab block device disk name. Embedded device uses fixed block device. 21898bd37aSMauro Carvalho Chehab Its disk name is also fixed, such as: mmcblk0, mmcblk1, mmcblk0boot0. 22898bd37aSMauro Carvalho Chehab 23898bd37aSMauro Carvalho Chehab<size> 24898bd37aSMauro Carvalho Chehab partition size, in bytes, such as: 512, 1m, 1G. 25898bd37aSMauro Carvalho Chehab size may contain an optional suffix of (upper or lower case): 26898bd37aSMauro Carvalho Chehab 27898bd37aSMauro Carvalho Chehab K, M, G, T, P, E. 28898bd37aSMauro Carvalho Chehab 29898bd37aSMauro Carvalho Chehab "-" is used to denote all remaining space. 30898bd37aSMauro Carvalho Chehab 31898bd37aSMauro Carvalho Chehab<offset> 32898bd37aSMauro Carvalho Chehab partition start address, in bytes. 33898bd37aSMauro Carvalho Chehab offset may contain an optional suffix of (upper or lower case): 34898bd37aSMauro Carvalho Chehab 35898bd37aSMauro Carvalho Chehab K, M, G, T, P, E. 36898bd37aSMauro Carvalho Chehab 37898bd37aSMauro Carvalho Chehab(part-name) 38898bd37aSMauro Carvalho Chehab partition name. Kernel sends uevent with "PARTNAME". Application can 39898bd37aSMauro Carvalho Chehab create a link to block device partition with the name "PARTNAME". 40898bd37aSMauro Carvalho Chehab User space application can access partition by partition name. 41898bd37aSMauro Carvalho Chehab 42898bd37aSMauro Carvalho ChehabExample: 43898bd37aSMauro Carvalho Chehab 44898bd37aSMauro Carvalho Chehab eMMC disk names are "mmcblk0" and "mmcblk0boot0". 45898bd37aSMauro Carvalho Chehab 46898bd37aSMauro Carvalho Chehab bootargs:: 47898bd37aSMauro Carvalho Chehab 48898bd37aSMauro Carvalho Chehab 'blkdevparts=mmcblk0:1G(data0),1G(data1),-;mmcblk0boot0:1m(boot),-(kernel)' 49898bd37aSMauro Carvalho Chehab 50898bd37aSMauro Carvalho Chehab dmesg:: 51898bd37aSMauro Carvalho Chehab 52898bd37aSMauro Carvalho Chehab mmcblk0: p1(data0) p2(data1) p3() 53898bd37aSMauro Carvalho Chehab mmcblk0boot0: p1(boot) p2(kernel) 54