Linux内核4.14版本——SPI NOR子系统(1)——简介

1. 为什么我们需要这个框架?

2. 框架如何工作?

 3. 驾驶员如何使用该框架?


1. 为什么我们需要这个框架?

      SPI总线控制器(drivers/SPI/)只处理字节流;总线控制器的操作与所连接的特定设备无关。但是,有些控制器(如飞思卡尔的QuadSPI控制器)不能轻松处理任意字节流,而是专门为SPI NOR设计的。
      特别是,飞思卡尔的QuadSPI控制器必须知道NOR命令才能找到正确的LUT序列。不幸的是,SPI子系统没有操作码、地址或数据有效载荷的概念;SPI控制器只知道发送或接收字节(Tx和Rx)。因此,我们必须定义一个新的分层方案,在该方案下,控制器驱动程序知道SPI NOR协议的操作码、寻址和其他细节。

2. 框架如何工作?

      这个框架只是在MTD和SPI总线驱动程序之间添加了一个新的层。有了这个新层,SPI NOR控制器驱动程序不再依赖于m25p80代码。
      在此框架之前,该层类似于:

       在此框架之后,该层类似于:

       使用SPI NOR控制器驱动程序(飞思卡尔QuadSPI),它看起来像:

 3. 驾驶员如何使用该框架?

     主要API是spi_或_scan()。在调用钩子之前,驱动程序应该初始化spi_nor{}的必要字段。请参阅驱动程序/mtd/spi-nor/spi-nor.c。当您想要为SPI NOR控制器编写新的驱动程序时,请参考fsl-quadspi.c。

参考:Documentation\mtd\spi-nor.txt

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值