昨天刚刚把spi flash driver调通,今天准备写一些东西做为这么一段时间对spi flash driver 的一种总结,和备份吧。
分三个部分讲:
1、 mtd 总体框架。
2、 spi 的总体框架。
3、 数据传输的流程。
1、 mtd 总体框架
mtd(Memory Technology Device)是linux专门为linux 移动存储设备设计的一套框架,方便程序员开发。他主要他为四个层次依次为:设备节点、MTD设备层、MTD原始设备层和硬件驱动层。
A、Flash硬件驱动层:硬件驱动层负责驱动Flash硬件。
B、MTD原始设备:原始设备层有两部分组成,一部分是MTD原始设备的通用代码,另一部分是各个特定的Flash的数据,例如分区。
C、MTD设备层:基于MTD原始设备,linux系统可以定义出MTD的块设备(主设备号31)和字符设备(