NAND 驱动移植问题

yuqinfeng   2009-4-14 10:20 楼主
ATMEL9261的两个CE5.0不同版本号的BSP进行NAND驱动移植(将第二个BSP的NAND驱动移植到第一个BSP上,但都是9261 CE5.0BSP)
移植后,程序都进不了FMD_INIT函数,看了下代码,驱动是通过读NAND的ID然后判断是什么型号的NAND FLASH,用的是K9F1G08UOA,和第一个BSP的参数是一致的,不知道是什么原因??

回复评论 (9)

只要注册表正确,第一个执行的就是FMD_Init。如果这个都不能执行,那么看看注册表什么的。
点赞  2009-4-14 10:43
看你的NK编译好没有,你的NK有对应的FMD驱动没有。看FMD驱动有没加载,看执行到什么地方停了。
点赞  2009-4-14 10:49
楼上说的有道理!
OS系统起来后的驱动加载是注册表负责的,如果FMD_Init都不执行,应该是注册表问题,驱动没有被正确加载
点赞  2009-4-14 10:54
注册表没问题:
[HKEY_LOCAL_MACHINE\Drivers\BuiltIn\NandFlash]
    "Profile"="FlashDisk"
    "IClass"=multi_sz:"{A4E7EDDA-E575-4252-9D6B-4195D48BB865}"
    "Order"=dword:0
    "FriendlyName"="NAND Flash Driver"
    "Dll"="AT91SAM9261EK_NandFlash.dll"
    "Prefix"="DSK"
    "MemBase"=dword:40000000
IF BSP_AT91SAM9261EK_SAVEDREGISTRY_NAND
    "Flags"=dword:1000
ENDIF BSP_AT91SAM9261EK_SAVEDREGISTRY_NAND

"DSK"相关的程序在什么地方??
不知道会不会与HIVE有关,但是HIVE部分我都没动
哪位说说要怎么调试呀,我都不知道要从哪里查问题了?,一周了都没找到问题。
点赞  2009-4-14 13:45
DSK在微软的代码里面。你看看它连接了什么lib就知道在哪里了。
点赞  2009-4-14 14:05
谢谢楼上的兄弟。
请问如果NAND芯片的参数(比如,block大小,时钟廷时等等)设置不对,能否进FMD_INIT函数
点赞  2009-4-14 17:45
自己顶一下
点赞  2009-4-14 19:38
引用: 引用楼主 sunny_hgh 的帖子:
ATMEL9261的两个CE5.0不同版本号的BSP进行NAND驱动移植(将第二个BSP的NAND驱动移植到第一个BSP上,但都是9261 CE5.0BSP)
移植后,程序都进不了FMD_INIT函数,看了下代码,驱动是通过读NAND的ID然后判断是什么型号的NAND FLASH,用的是K9F1G08UOA,和第一个BSP的参数是一致的,不知道是什么原因??


原因找到是HIVE引起的,以前的HIVE是好的,请问要怎样找问题??HIVE的注册表文件肯定是没问题的,那是不是NAND分区的问题??请做过的高手指点!!
点赞  2009-4-14 23:36
我用  9261的BSP 1.0.3 也遇到这个问题 9261的,打开hive  就只能启动一次,谁解决了,能否交流一下经验!!感激不尽!!!
点赞  2009-6-30 12:00
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复