MTD在运行时启动和配置

时间:2014-11-14 16:46:31

标签: linux flash-memory

有一个我有root shell访问权限的嵌入式系统。 我无法进入U-boot启动菜单。 (启动延迟= 0)

设备从一个闪存引导并在emmc上加载文件系统。 它没有设置/ dev / mtd设备。

我想访问也不是flash。

系统上有MTD驱动程序,因此这似乎是最佳选择。 (根本没有这方面的经验,所以如果我错了请纠正我)

drwxrwxr-x 2 1000 root  1024 Jul 29  2013 chips
drwxrwxr-x 2 1000 root  1024 Jul 29  2013 maps
-rw-rw-r-- 1 1000 1000 21544 Jul 29  2013 mtd.ko
-rw-rw-r-- 1 1000 1000  8560 Jul 29  2013 mtd_blkdevs.ko
-rw-rw-r-- 1 1000 1000  6132 Jul 29  2013 mtdblock.ko
-rw-rw-r-- 1 1000 1000  9648 Jul 29  2013 mtdchar.ko

如果使用modprobe启动MTD,则会创建/ proc / mtd。 在dmesg中没什么。

root:/proc# cat /proc/mtd
dev:    size   erasesize  name

所以没有分区。 如何配置mtd以便能够访问也不能闪存。 (物理地址已知)

由于

1 个答案:

答案 0 :(得分:0)

您需要在内核中特定于电路板的文件中描述您的NOR分区。在u-boot中,您应该可以使用SELECT * FROM my_view WHERE my_date <= NOW() - '10 days'::INTERVAL 看到它们。

在您的Linux内核中,您需要填充smeminfo数组。

在此处查找更多内容:http://free-electrons.com/blog/managing-flash-storage-with-linux/