我正致力于升级遗留板上的固件,使用at91rm9200处理器和at45db642D数据攻击运行修改后的2.6.12.1,以使用at45db641E数据攻击。641 E的特点是:
我相信内核内存管理器页面大小是标准的4096字节。
我想在设备上放一个合适的jffs2图像。我想知道的mkfs.jffs2选项是(从手册页):
他说,pagesize与内核内存管理页大小有关(在我的例子中是4096页,与默认值相同),而不是设备的264字节页。所以我需要指定--pagesize=4096而不是--pagesize=264,这是正确的吗?
这个人还说--擦除块必须和MTD设备的擦除块大小相同.我对几件事感到困惑。
device->erasesize=pagesize。因此,似乎有一些类似的名字,但不同的概念:驱动擦除大小,设备擦除块大小,和jffs2擦除块大小。它们之间的关系和区别是什么?jffs2指定的删除块大小最终如何影响驱动程序执行的操作?谢谢你的帮助。
发布于 2016-04-26 02:07:14
我已经成功地检查了内核中的各种源文件,以找出正在发生的事情,至少足够好地让它正常工作。请注意,这适用于2.6.12.1,而不一定是以后的内核版本。
有四个术语有相似的名称,相关的,但不一定相等。从最高到最低..。
以下是我所理解的制约因素。
因此,在我的示例中,内核将虚拟块大小从264字节调整为4224字节。因此,我的jffs2文件系统通过为mkfs.jffs2使用-e 4224选项来工作。驱动程序一次擦除每4224字节长的虚拟块一页.
其他考虑因素:
-s pagesize选项与根据手册页的内核页大小有关。我使用了-s 4096的内核页面大小。-e参数是不可能的,这使得我对单元的问题没有意义。https://stackoverflow.com/questions/36815850
复制相似问题