久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 5703|回復: 0
打印 上一主題 下一主題
收起左側

AM335X的Ubifs文件系統制作教程

[復制鏈接]
跳轉到指定樓層
樓主
ID:396888 發表于 2018-9-12 10:57 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
UBI 文件系統是 JFFS2 的下一代文件系統,更適合 NAND FLASH。看到一些 AM335x 的 用戶在應用 UBIFS 時遇到些問題,現在做個簡要介紹。
1.              U-boot kernel 中使能對 UBIFS 的支持
1.1              U-boot \include\configs\am335x_evm.h 中加入如下宏的定義:
#define CONFIG_CMD_NAND
#define CONFIG_CMD_UBI
#define CONFIG_CMD_UBIFS
#define CONFIG_RBTREE
#define CONFIG_MTD_DEVICE
#define CONFIG_MTD_PARTITIONS
#define CONFIG_CMD_MTDPARTS
#define CONFIG_LZO
1.2              Kernel 中的 menuconfig:
               Enabling UBI support on MTD devices.
Device Drivers --->
Memory Technology Device (MTD) support              --->
Enable UBI - Unsorted block images              --->
               Enabling UBIFS file-system support.
File systems              --->
Miscellaneous filesystems              ---> UBIFS file system support
2.              下載和編譯 MTD Utilites
2.1              下載 MTD Utilites

通過 git://git.infradead.org/mtd-utils.git 下載最新的 MTD-Utils 源代碼。 下載 3 個編譯所需的依賴庫

Zlibzlibnet/
Lzowww點oberhumer點com/opensource/lzo/download/
e2fsprogshttp://e2fsprogs.sourceforge.net/
在用戶目錄下建立/mtd,/mtd/install 目錄,將以上 4 個 source code 包拷貝到/mtd
下,安裝如下步驟先編譯依賴包:


zlib
host$ tar xvf zlib-1.2.5.tar.gz host$ cd zlib-1.2.5/
host$ ./configure --prefix=~/mtd/install host$ make
host$ make install
host$ cd ..
lzo
host$ tar xvf lzo-2.06.tar.gz host$ cd lzo-2.06/
host$ ./configure --build=i686-pc-linux --prefix=~/mtd/install host$ make
host$ make install host$ cd ..
e2fsprogs
host$ tar xvf e2fsprogs-1.42.tar.gz host$ cd e2fsprogs-1.42/
host$ ./configure --build=i686-pc-linux --prefix=~/mtd/install
host$ make
host$ make install
host$ cd lib/uuid/ host$ make install host$ cd ../../../
2.1              編譯 MTD Utilites
在編譯 mtd-utils 之前,先修改 makfile 文件:
host$ vi Makefile
PREFIX = ~/mtd/install
ZLIBCPPFLAGS = -I$(PREFIX)/include LZOCPPFLAGS = -I$(PREFIX)/include ZLIBLDFLAGS = -L$(PREFIX)/lib LZOLDFLAGS = -L$(PREFIX)/lib
LDFLAGS += $(ZLIBLDFLAGS) $(LZOLDFLAGS)
CFLAGS ?= -O2 -g $(ZLIBCPPFLAGS) $(LZOCPPFLAGS)
host$ vi common.mk
#PREFIX=/usr
然后依照如下指令編譯:
host$ WITHOUT_XATTR=1 make
host$ make install              DESTDIR=~/mtd/install
host$ cd ..
制作 ubi 文件系統所用的工具在如下目錄下:


~/mtd/install/home/<username>/mtd/install/sbin/mkfs.ubifs
~/mtd/install/home/<username>/mtd/install/sbin/ubinize
3.              制作 ubifs
Ubifs 的制作需要以下兩個命令
mkfs.ubifs: 制作 UBIFS image
ubinize:              根據 UBIFS image 制作 ubi.img,這個 ubi.img 是通過 u-boot 直接燒 寫在 nand flash 分區上的。
AM335x Linux SDK 里面帶有制作好的文件系統,是.tar.gz 的壓縮文件,可以解壓在 一個目錄下做為 UBI 文件系統內容,如/home/usr/fs。
GPEVM 板上的 NAND 型號為 MT29F2G08,page size 為 2048B,block size 為
64x2048B=131072B,block count 為 2048。如果制作針對 GPEVM 板的 ubifs,執行 如下兩條命令:
1. $ mkfs.ubifs –F -q -r /home/usr/fs -m 2048 -e 126976 -c 2047 -o ubifs.img
參數簡介:
-F:使能"white-space-fixup",如果是通過 u-boot 燒寫需要使能此功能。
-r:待制作的文件系統目錄
-m:NAND FLASH 的最小讀寫單元,一般為 page size
-e:LEB size,對于 AM335x 的 NAND driver,為 block size-2x(page size)
-c:文件系統所占用的最大 block 數,一般小于等于 block count -1
-o:輸出的 ubifs.img 文件
2. $ ubinize -o ubi.img -m 2048 -p 128KiB ubinize.cfg
參數簡介:
-p:block size。
-m:NAND FLASH 的最小讀寫單元,一般為 page size
-o:輸出的 ubi.img 文件
ubinize.cfg 為 ubinize 所需要的配置文件,內容如下:
[ubifs]


4.              燒寫 ubifs
mode=ubi image=ubifs.img vol_id=0 vol_size=200MiB vol_type=dynamic vol_name=rootfsvol_flags=autoresize


可通過 u-boot 命令將生成的 ubi.img(25M)燒寫到 NAND FLASH 分區上,如下示
例是將 ubi.img 先存儲到 SD 卡上,然后通過 u-boot 的 fatload 命令將其拷貝至內存 中。
u-boot# mw.b 0x82000000 0xFF
u-boot# mmc rescan
u-boot# fatload mmc 0 0x82000000 ubi.img
u-boot# nand erase 0x00780000 0xF880000
u-boot# nand write 0x82000000 0x00780000 0x1E00000
5.              Linux 啟動設置
在 U-boot 下設置啟動信息如下:
#setenv bootargs 'console=ttyO0,115200n8 noinitrd ip=off mem=256M rootwait=1 rw ubi.mtd=7,2048 rootfstype=ubifsroot=ubi0:rootfs init=/init'


順利啟動后,會在終端顯示如下相關信息:

Ubifs文件系統的制作和啟動 (1).pdf

444.91 KB, 下載次數: 17, 下載積分: 黑幣 -5

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费视频中文字幕 | 国产成人在线视频 | 欧美视频免费在线 | 97色在线视频 | 欧美女优在线观看 | 天堂视频中文在线 | 91中文 | 久久久黑人 | 久久99网站| 久久久高清 | 91网站在线观看视频 | 久久精品国产亚洲一区二区 | 成人精品在线视频 | 日韩精品一区二区三区视频播放 | 国产乱码久久久久久 | 午夜99 | 99爱视频 | 三级视频网站 | 亚洲午夜电影 | 精品欧美色视频网站在线观看 | 日韩在线资源 | 97视频在线观看网站 | 精品伊人 | 欧美精品日韩 | 精品av | 国产激情视频在线 | 国产精品久久精品 | 午夜影院在线观看视频 | 日韩视频在线播放 | 中文字幕av一区二区三区 | 精品一区二区三区日本 | 国产精品久久久久久久白浊 | 中文字幕一区二区三区精彩视频 | www.v888av.com| 粉嫩粉嫩芽的虎白女18在线视频 | 激情一区二区三区 | www.色53色.com | 综合精品久久久 | 久久精品国产一区二区三区不卡 | 亚洲欧美日韩网站 | 欧美中文字幕一区二区 |