mtd与mtdblock节点的对应问题

zhoujiawen 2010-11-03 03:21:00
在linux中,在flash驱动中对NOR flash进行分区,然后在makfile中创建设备节点如下:
flash中分别分了6个分区,假设分别依次地址连续为:
0.boot
1.kernel
2.jffs2
3.user1
4.user2
5.user3

在makfile中device下创建以下节点:
mtd0,c,90,0 mtd1,c,90,1 mtd2,c,90,2 \
mtd3,c,90,3 mtd4,c,90,4 mtd5,c,90,5 \

mtdblock0,b,31,0 mtdblock1,b,31,1 mtdblock2,b,31,2 \
mtdblock3,b,31,3 mtdblock4,b,31,4 mtdblock5,b,31,5 \

我知道mtdblock(x:0-5)对应的就是分区0-5,如内核启动参数为,root=/dev/mtdblock2

如果要对分区进行擦写操作,就需要mtd设备,如:
file=/dev/mtd4,我想的是这个mtd4对应的就是mtdblock4分区,就user2分区,

如果实现我的想法,我上面makfile创建节点的方法是不是有问题,
因为我在操作/dev/mtd4时,发现并不是user2分区




...全文
414 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
liu_lei 2021-07-13
  • 打赏
  • 举报
回复 1

可以参考Document/devices.txt文档,每2个mtd字符设备对应同一个分区,其中第一个字符设备可读写,第二个字符设备只读。

Wenxy1 2010-11-03
  • 打赏
  • 举报
回复
楼主用nfs来启动文件系统吗?那可以在makefile 里创建设备文件。若烧到flash里,则需要手工作mknod创建对应的设备文件。

内核的mtd驱动会建立相应的flash partitions.

用命令#cat /proc/mtd可以查看建立的flash 分区。

4,465

社区成员

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

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