|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文基于飞凌嵌入式imx6Q开发板为基础进行讲解,旨在为用户提供一个简单用于EIM可用性及稳定性测试的思路,由于小编水平有限,请参考使用。# c( W2 M- m. w9 j: _1 l
一、测试方案本测试思路基于NXP提供的NoRFlash使用EIM接口异步通讯而来,感兴趣的朋友可自行前往NXP官网下载查阅。3 Y, y+ L1 w" m2 T( o/ r4 Z% h" {
1、硬件原理EIM连接了一个32MB的 Parallel NOR Flash,只需将数据总线,地址总线连接正确,操作比较简单,下图为硬件原理图。
1 F7 \& \ m; F3 j ' t2 I0 f0 q0 L6 |
2、软件修改在设备树添加Norflash设备节点,并对使用的引脚的pinmux进行修改(下面列举的修改方法未包含已使用了EIM引脚的驱动的修改部分,有引脚冲突自行修改)4 R& A9 R( p, f3 H$ B
2-1、添加Norflash设备节点# O/ \" h3 L: N$ X: {
飞凌的iMX6开发板提供的Linux4.1.15自带EIM驱动,EIM驱动加载以后,将读取每个子节点,如地址空间分配,cs如何配置时序等。EIM节点添加上Norflash节点,用的cfi-flash 通用驱动,修改地址空间的起始地址,最主要的是配置时序,下面设备树修改中包含了该时序,直接使用即可。
+ [ m0 D5 P. u& v7 ]: [" `8 H. Q0 ?, D : s. F* R! K. k- D4 X1 b/ m# `
2-2引脚的Pinmux修改) q$ F/ Z4 }; W7 t
添加好节点后,需要对使用的引脚进行Pinmux的配置,配置成功后,直接运行,即可生成Norflash节点。
6 t- O( L8 O4 Y& O ePinmux的配置办法可参考飞凌嵌入式提供的iMX6 引脚 Pinmux配置说明,本篇就不做赘述。/ @1 R# W( M( l }- Y l4 t
参考链接:https://www.forlinx.com/article_view_291.html& {9 _% N7 [( z# m# J/ w, W
. r2 G. F; E+ l! ?
二、测试方法测试使用mtd_debug工具进行测试
7 E' z {& q. I测试步骤:准备一个文件,通过ls –l 命令查看该文件的大小。然后在NorFlash上擦除一块可以存储下该文件的空间(大小是128K的整数倍),然后将该文件写入到NorFlash内,然后再将该文件从NorFlash内读出,将2个文件做md5码校验,md5码一致表示测试通过* d5 J$ F( b# E5 O6 ` D5 F
1、查看文件的大小,擦除一块足够大空间
: e* Z! F' j) G0 R: ]& T9 A2、将文件写入到NorFlash* q, P0 g2 [: I3 R) @
3、读取存储的文件+ _6 R1 ~$ K/ }
4、比对md5校验码, d" N2 }" P3 ~0 a0 p$ z
结论:在EIM接口上添加了NorFlash,驱动能正确识别设备,将文件写入NorFlash后,再将文件读出,文件未损坏,说明EIM接口工作正常
( @) d' S. a7 |7 y+ Q& T i
# E/ W# S3 L; Q/ i; T5 n4 R. N9 b三、稳定性测试通过随机数生成一个文件,将这个文件写入NorFlash,然后不停的读取这个文件,文件每次读取完成后,与原始文件做MD5对比,MD5值不一值则报错提示。
$ _! r) K( ?7 M2 \) l/ Q5 C9 \/ T/ k% i 9 j, l8 s, n1 `2 J6 y
, Y# b- m0 S& M5 a- c; x: I( F, C. ~
|
|