本文基于飛凌嵌入式[color=inherit !important]iMX6Q開發(fā)板為基礎(chǔ)進(jìn)行講解,旨在為用戶提供一個簡單用于EIM可用性及穩(wěn)定性測試的思路,由于小編水平有限,請參考使用。 一、測試[color=inherit !important]方案本測試思路基于NXP提供的NorFlash使用EIM接口異步通訊而來,感興趣的朋友可自行前往NXP官網(wǎng)下載查閱。 1、硬件原理EIM連接了一個32MB的 Parallel NOR Flash,只需將數(shù)據(jù)總線,地址總線連接正確,操作比較簡單,下圖為硬件原理圖。
在設(shè)備樹添加Norflash設(shè)備節(jié)點,并對使用的[color=inherit !important]引腳的pinmux進(jìn)行修改(下面列舉的修改方法未包含已使用了EIM引腳的驅(qū)動的修改部分,有引腳沖突自行修改) 2-1、添加Norflash設(shè)備節(jié)點 飛凌的[color=inherit !important]iMX6開發(fā)板提供的[color=inherit !important]Linux4.1.15自帶EIM驅(qū)動,EIM驅(qū)動加載以后,將讀取每個子節(jié)點,如地址空間分配,cs如何配置時序等。EIM節(jié)點添加上Norflash節(jié)點,用的cfi-flash 通用驅(qū)動,修改地址空間的起始地址,最主要的是配置時序,下面設(shè)備樹修改中包含了該時序,直接使用即可。 2-2引腳的Pinmux修改 添加好節(jié)點后,需要對使用的引腳進(jìn)行Pinmux的配置,配置成功后,直接運(yùn)行,即可生成Norflash節(jié)點。 Pinmux的配置辦法可參考飛凌嵌入式提供的[color=inherit !important]iMX6 引腳 Pinmux配置說明,本篇就不做贅述。 參考鏈接:https://www.forlinx.com/article_view_291.html
測試使用mtd_debug工具進(jìn)行測試 測試步驟:準(zhǔn)備一個文件,通過ls –l [color=inherit !important]命令查看該文件的大小。然后在NorFlash上擦除一塊可以存儲下該文件的空間(大小是128K的整數(shù)倍),然后將該文件寫入到NorFlash內(nèi),然后再將該文件從NorFlash內(nèi)讀出,將2個文件做md5碼校驗,md5碼一致表示測試通過 1、查看文件的大小,擦除一塊足夠大空間 2、將文件寫入到NorFlash 3、讀取存儲的文件 4、比對md5校驗碼 結(jié)論:在EIM接口上添加了NorFlash,驅(qū)動能正確識別設(shè)備,將文件寫入NorFlash后,再將文件讀出,文件未損壞,說明EIM接口工作正常
通過隨機(jī)數(shù)生成一個文件,將這個文件寫入NorFlash,然后不停的讀取這個文件,文件每次讀取完成后,與原始文件做MD5對比,MD5值不一值則報錯提示。
|