uboot命令(1):mmc命令
版權聲明
更新:2017-06-07
博主:LuckyAlan
聯系:[email protected]
聲明:吃水不忘挖井人,轉載請註明出處!
1 文章介紹
今天在進行Android分區修改的時候發現擦除後無法進入kernel,查了一下是因為bootargs_Hi3798MV200-emmc.txt文件中的bootcmd沒有修改。這個參數與內核啟動有關,需要用到mmc命令,因此多mmc相關的命令做一個學習總結。
2 開發平臺
軟件平臺:Android系統。
硬件平臺:hisi3798MV200
3 閱讀須知
無
4 文章正文
4.1 打印當前mmc設備的信息
命令: mmcinfo
4.2 對mmc進行讀寫操作
4.2.1 命令說明
讀操作命令: mmc read <device num> addr blk# cnt [partition]
寫操作命令: mmc write <device num> addr blk# cnt [partition]
參數說明:
- device num:mmc的設備號,可以通過mmc list查詢
- addr:內存地址
- blk# :mmc內的塊號
- cnt:塊數目
4.2.2 命令舉例
讀操作: mmc read 0 0x10800000 0x600 0x10
讀操作說明:從第0個mmc設備塊上1536*512個字節處開始(1536是0x600的十進制),讀取16×512個字節(16是10的10進制)到內存0x10800000 處。以kernel為例,若前面的分區為94M(也就是kernel的分區從94M的地方開始),那麽,0x600的地方的值應為:94*2*1024的十六進制0x2F000。
寫操作: mmc write 2 0x90000000 0x600 0x10
寫操作說明:把內存0x90000000開始,長度為16x512大小的數據,寫入到第2個mmc設備塊偏移位置為0x600處。
5 參考資料
1、《常用u-boot命令詳解(全)》
2、《uboot中的mmc命令》
3、《mmc的命令裏面write的參數是16進制卻不需要寫0x》
uboot命令(1):mmc命令