|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文基于飞凌嵌入式imx6Q开发板为基础进行讲解,旨在为用户提供一个简单用于EIM可用性及稳定性测试的思路,由于小编水平有限,请参考使用。
$ K6 f7 u; u/ S U* j* Z一、测试方案本测试思路基于NXP提供的NoRFlash使用EIM接口异步通讯而来,感兴趣的朋友可自行前往NXP官网下载查阅。, N" C5 E) ?" p+ S |6 R
1、硬件原理EIM连接了一个32MB的 Parallel NOR Flash,只需将数据总线,地址总线连接正确,操作比较简单,下图为硬件原理图。" q' t" M) O1 t8 E0 U$ t
1 T0 T! z- t% J9 k$ h* t1 Y2、软件修改在设备树添加Norflash设备节点,并对使用的引脚的pinmux进行修改(下面列举的修改方法未包含已使用了EIM引脚的驱动的修改部分,有引脚冲突自行修改)
% {# y5 W6 N% [# U2-1、添加Norflash设备节点
8 ~) ], y; i5 S$ p3 }飞凌的iMX6开发板提供的Linux4.1.15自带EIM驱动,EIM驱动加载以后,将读取每个子节点,如地址空间分配,cs如何配置时序等。EIM节点添加上Norflash节点,用的cfi-flash 通用驱动,修改地址空间的起始地址,最主要的是配置时序,下面设备树修改中包含了该时序,直接使用即可。) \( b- \9 T& ^ `( x
![]()
" [, [: t2 W/ y" K! S. h2-2引脚的Pinmux修改' \' N8 Y, [/ L& c4 T, ^) g
添加好节点后,需要对使用的引脚进行Pinmux的配置,配置成功后,直接运行,即可生成Norflash节点。# H# h& B+ h& Q, A/ V
Pinmux的配置办法可参考飞凌嵌入式提供的iMX6 引脚 Pinmux配置说明,本篇就不做赘述。
; e- p$ ^. n; J7 L" {参考链接:https://www.forlinx.com/article_view_291.html2 ^7 T! L5 O; k, i8 D7 F
+ p, K4 {7 J3 J" j0 @! s" S2 C2 \$ U
二、测试方法测试使用mtd_debug工具进行测试
7 l* e& y; l9 `. ]& x! r$ p测试步骤:准备一个文件,通过ls –l 命令查看该文件的大小。然后在NorFlash上擦除一块可以存储下该文件的空间(大小是128K的整数倍),然后将该文件写入到NorFlash内,然后再将该文件从NorFlash内读出,将2个文件做md5码校验,md5码一致表示测试通过7 H+ r3 W% g5 l) o3 |. @6 h
1、查看文件的大小,擦除一块足够大空间
w1 X. Z$ s) J- o5 X! I* }2、将文件写入到NorFlash
4 d N& R2 T! O; T3、读取存储的文件, G4 B3 c y' X, m& Q% W* y5 n
4、比对md5校验码
) H% J/ g9 Y# o. L# {$ A! S0 [结论:在EIM接口上添加了NorFlash,驱动能正确识别设备,将文件写入NorFlash后,再将文件读出,文件未损坏,说明EIM接口工作正常3 f( @: l, g. ^0 C* M2 b% {: o
2 ~9 Y ^0 V! G! b. q. p三、稳定性测试通过随机数生成一个文件,将这个文件写入NorFlash,然后不停的读取这个文件,文件每次读取完成后,与原始文件做MD5对比,MD5值不一值则报错提示。# E3 o( `% M5 d- j K
( y" x4 W5 H/ f( e4 q' Q $ O" s+ e; z4 o; J7 t$ N2 _+ b5 }& V
|
|