nand flash驱动

lq651659889 2011-07-12 05:30:49
我想问对于nand flash驱动linux内核是怎么做的,是不是实现了file_operation结构体可以让应用层调用。如果没有实现的话那应用层又是通过什么来读写nand flash的?对于字符驱动为什么没有probe函数也可以用而块设备驱动要实现probe函数,还是说只要和pci总线相关的就应该实现probe函数,小弟新手望高手指点。
...全文
45 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
tyr 2011-08-28
  • 打赏
  • 举报
回复
要看底层的flash驱动,去搜flash的 IC spec来对应着看各个操作的timming,单纯的代码没必要看,也可能看不明白。
IamGooday 2011-08-27
  • 打赏
  • 举报
回复
nand flash在Kernel中有一个专门的驱动程序目录的,位于drivers/mtd/nand/(大致位置),从这个下面可以看到很多目前支持的Nand flash。建议你看看这个目录下的驱动程序,就会对需要做什么比较了解了。
一般而言,nand 的驱动距离file_operations还比较远呢。file_operation涉及文件操作,相对硬件已经是抽象层的内容了。有一些常用的flash文件系统如JFFS2,YAFFS,UBIFS,都已经在Kernel中支持了。这些文件系统会来调用具体的实际操作的。
所以对于你只是改一片flash来说,你只需要是实现新的nand_write,nand_delete,nand_read(我只是想说明函数功能,不要试图去查找以上名字)等底层函数,你的程序就能工作拉。
Gary__Cheng 2011-08-26
  • 打赏
  • 举报
回复
[Quote=引用楼主 lq651659889 的回复:]
我想问对于nand flash驱动linux内核是怎么做的,是不是实现了file_operation结构体可以让应用层调用。如果没有实现的话那应用层又是通过什么来读写nand flash的?对于字符驱动为什么没有probe函数也可以用而块设备驱动要实现probe函数,还是说只要和pci总线相关的就应该实现probe函数,小弟新手望高手指点。
[/Quote]

你这是几个问题?

nandflash 操作,是底层的flash读、写、擦出操作,
file_operation操作,是基于VFS的操作,底层实现是什么样的文件系统、在什么介质,屏蔽了
probe函数 ,这个看功能,字面意思就是探测,支持热拔插,usb设备驱动,也有的
creatorwu 2011-08-25
  • 打赏
  • 举报
回复
你这个问题怪不得没有人回答。新手问这么高深的问题,怎能回答呢?》

4,436

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
  • 内核源代码研究区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧