嵌入式裝置命令列分割槽解析¶
“blkdevparts” 命令列選項增加了從核心命令列讀取塊裝置分割槽表的支援。
它通常用於固定塊 (eMMC) 嵌入式裝置。它沒有 MBR,因此節省了儲存空間。引導載入程式可以很容易地透過塊裝置上資料的絕對地址訪問。使用者可以輕鬆更改分割槽。
命令列的格式就像 mtdparts
- blkdevparts=<blkdev-def>[;<blkdev-def>]
- <blkdev-def> := <blkdev-id>:<partdef>[,<partdef>]
<partdef> := <size>[@<offset>](part-name)
- <blkdev-id>
塊裝置磁碟名稱。 嵌入式裝置使用固定塊裝置。 它的磁碟名稱也是固定的,例如:mmcblk0、mmcblk1、mmcblk0boot0。
- <size>
分割槽大小,以位元組為單位,例如:512、1m、1G。 size 可能包含一個可選後綴(大寫或小寫)
K、M、G、T、P、E。
“-”用於表示所有剩餘空間。
- <offset>
分割槽起始地址,以位元組為單位。 offset 可能包含一個可選後綴(大寫或小寫)
K、M、G、T、P、E。
- (part-name)
分割槽名稱。 核心傳送帶有“PARTNAME”的 uevent。 應用程式可以建立一個連結到帶有名稱“PARTNAME”的塊裝置分割槽。 使用者空間應用程式可以透過分割槽名稱訪問分割槽。
- ro
只讀。 將分割槽標記為只讀。
例子
eMMC 磁碟名稱為“mmcblk0”和“mmcblk0boot0”。
bootargs
'blkdevparts=mmcblk0:1G(data0),1G(data1),-;mmcblk0boot0:1m(boot)ro,-(kernel)'dmesg
mmcblk0: p1(data0) p2(data1) p3() mmcblk0boot0: p1(boot) p2(kernel)