您好,登錄后才能下訂單哦!
本篇文章為大家展示了NAND FLASH版本核心板使用示例分析,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。
NAND FLASH版本和eMMC版本核心板使用方法基本一致。本文主要描述NAND FLASH版本與eMMC版本核心板在使用方面的不同之處,相同之處將不重復描述。
進行U-Boot編譯選項配置時,請執(zhí)行如下命令。
Host# make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_evm_nandboot_config
圖 1
我司提供經(jīng)過驗證的U-Boot鏡像文件位于產(chǎn)品資料“4-軟件資料/Linux/U-Boot/image/u-boot-2017.01-gad3370e-v2.1/”目錄下,分別為MLO-nand、u-boot.img-nand。系統(tǒng)啟動卡制作完成后,請將MLO-nand和u-boot.img-nand文件復制到系統(tǒng)啟動卡BOOT分區(qū)下,備份原有的eMMC版本MLO、u-boot.img文件,并將MLO-nand和u-boot.img-nand文件重命名為MLO、u-boot.img。
圖 3
基礎設備樹源文件為內(nèi)核源碼“arch/arm/boot/dts”目錄下的tl335x-evm-nandflash.dts和tl335x-evm-nandflash-hdmi.dts,重新編譯基礎設備樹時請使用此文件。我司提供經(jīng)過驗證的基礎設備樹文件為產(chǎn)品資料“4-軟件資料/Linux/Kernel/image/linux-rt-4.9.65-gd8e636c-v2.1/”目錄下的tl335x-evm-nandflash.dtb和tl335x-evm-nandflash-hdmi.dtb,請將其分別復制到系統(tǒng)啟動卡rootfs分區(qū)以及rootfs-backup分區(qū)的boot目錄下。
圖 4
請執(zhí)行如下命令將tl335x-evm.dtb軟鏈到tl335x-evm-nandflash.dtb文件。tl335x-evm-nandflash.dtb支持LCD顯示,如需使用HDMI顯示,則將tl335x-evm.dtb軟鏈到tl335x-evm-nandflash-hdmi.dtb文件即可。
Host# sudo rm tl335x-evm.dtb
Host# sudo ln -s tl335x-evm-nandflash.dtb tl335x-evm.dtb
Host# ls -l
圖 5
使用替換了U-Boot和基礎設備樹文件的Linux系統(tǒng)啟動卡啟動評估板,進入文件系統(tǒng)執(zhí)行如下命令可查看到NAND FLASH分區(qū)信息,即說明文件替換成功。
Host# cat /proc/mtd
圖 7
SPI FLASH | MTD0 | spi.spl:存放U-Boot第一階段啟動文件MLO |
MTD1 | spi.u-boot:存放U-Boot第二階段啟動文件u-boot.img | |
MTD2 | spi.env:存放環(huán)境變量 | |
MTD3 | spi.devicetree:存放設備樹文件(暫未使用) | |
MTD4 | spi.kernel:存放內(nèi)核鏡像(暫未使用) | |
NAND FLASH | MTD5 | nand.spl:存放U-Boot第一階段啟動文件MLO(暫未使用) |
MTD6 | nand.u-boot:存放U-Boot第二階段啟動文件u-boot.img(暫未使用) | |
MTD7 | nand.env:存放環(huán)境變量(暫未使用) | |
MTD8 | nand.devicetree:存放設備樹文件 | |
MTD9 | nand.kernel:存放內(nèi)核鏡像 | |
MTD10 | nand.logo:存放LOGO文件 | |
MTD11 | nand.mini-fs:備用分區(qū),一般存放小型文件系統(tǒng)(暫未使用) | |
MTD12 | nand.rootfs:存放文件系統(tǒng) |
固化Linux系統(tǒng)
Linux系統(tǒng)啟動卡制作時,已將系統(tǒng)固化的腳本文件mknandboot.sh復制到了Linux系統(tǒng)啟動卡文件系統(tǒng)的“/opt/tools/make-system”目錄下。
圖 8
執(zhí)行如下命令進行一鍵固化。
Target# /opt/tools/make-system/mknandboot.sh
圖 9
腳本會進行如下操作:
擦除SPI FLASH、NAND FLASH。
將Linux系統(tǒng)啟動卡BOOT分區(qū)中的U-Boot固化到SPI FLASH對應分區(qū)。
將Linux系統(tǒng)啟動卡BOOT分區(qū)中的LOGO固化到NAND FLASH對應分區(qū)。
將Linux系統(tǒng)啟動卡rootfs-backup分區(qū)中的文件系統(tǒng)boot目錄下的內(nèi)核鏡像和基礎設備樹文件固化到NAND FLASH對應分區(qū)。
將Linux系統(tǒng)啟動卡rootfs-backup分區(qū)中的文件系統(tǒng)固化到NAND FLASH對應分區(qū)。
用時約5~10min,Linux系統(tǒng)固化成功,同時串口調(diào)試終端打印提示信息。
備注:腳本文件會將設備樹文件和內(nèi)核鏡像固化到SPI FLASH中,實際啟動并不會從SPI FLASH中加載設備樹和內(nèi)核鏡像。
評估板斷電,將Linux系統(tǒng)啟動卡從評估板Micro SD卡槽中取出,根據(jù)評估底板絲印將撥碼開關撥為10010(1~5),此檔位為SPI FLASH啟動模式。評估板上電,串口調(diào)試終端將會打印如下類似啟動信息。
圖 11
本章節(jié)對NAND FLASH的MTD11分區(qū)進行讀寫速度測試。MTD11是NAND FLASH的備用分區(qū),一般存放小型文件系統(tǒng),大小為32MByte。讀寫測試會將該分區(qū)內(nèi)容擦除,請做好數(shù)據(jù)備份。
執(zhí)行如下命令查詢NAND FLASH分區(qū),確認MTD11分區(qū)大小(讀寫請勿超出分區(qū)大?。瑢⒃摲謪^(qū)內(nèi)容擦除。
Target# cat /proc/mtd
Target# flash_erase /dev/mtd11 0 0
圖 13
此處一共寫30MByte測試數(shù)據(jù)到NAND FLASH的MTD11分區(qū)下,可看到本次測試的NAND FLASH寫速度約為:30MB/8.24s=3.64MB/s。
NAND FLASH讀速度測試
重啟評估板,進入評估板文件系統(tǒng),執(zhí)行如下命令對NAND FLASH進行讀速度測試。
Target# time dd if=/dev/mtd11 of=/dev/null bs=1024k count=30
圖 14
此處從NAND FLASH的MTD11分區(qū)讀取30MByte數(shù)據(jù),可看到本次測試的NAND FLASH讀速度約為:30MB/4.47s=6.71MB/s。
上述內(nèi)容就是NAND FLASH版本核心板使用示例分析,你們學到知識或技能了嗎?如果還想學到更多技能或者豐富自己的知識儲備,歡迎關注億速云行業(yè)資訊頻道。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。