我有一个嵌入式系统,我可以通过root shell访问它。我无法进入U-boot启动菜单。(启动delay=0)
设备从nor闪存启动,并在emmc上加载文件系统。它不设置/dev/mtd设备。
我想访问nor闪存。
系统上有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配置为能够访问nor闪存。(物理地址已知)
谢谢
发布于 2015-06-27 05:52:48
您需要在内核中的特定于主板的文件中描述您的NOR分区。在u-boot中,您应该能够使用smeminfo
查看它们。
在linux内核中,您需要填充一个mtd_partitions
数组。
更多信息请点击此处:http://free-electrons.com/blog/managing-flash-storage-with-linux/
https://stackoverflow.com/questions/26934901
复制相似问题