- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
01班赵恒涛基于Linux内核SPI子系统工作机制(二).pdf
英贝得教育之学员笔记
基于基于 LinuxLinux 内核内核SPISPI 子系统工作机制子系统工作机制-英贝得嵌入式-英贝得嵌入式 (凌嵌(凌嵌)学员赵恒涛学习)学员赵恒涛学习
基于基于 LinuxLinux 内核内核SPISPI 子系统工作机制子系统工作机制--英贝得嵌入式英贝得嵌入式 ((凌嵌凌嵌))学员赵恒涛学习学员赵恒涛学习
笔记笔记 (二(二))
笔记笔记 ((二二))
作者:英贝得教育 01 周末班学员赵恒涛 2010年7 月
前一篇文章主要讲述了 SPI 子系统的传输,没有具体分析具体代码的含义与片选的处理。要深刻体会SPI 子系统的
思想和精髓。
首先在 SPI 子系统中分成俩部分驱动。
第一部分 SPI 主控制端驱动,(Linux内核已经做好的驱动,需要自己配置和使用)从SPI 协议我们可以得知,SPI
支持主从模式,在arm cpu s3c2440 中也留有作为从设备的片选脚,但内核 2.6.30 中的驱动只是把 SPI 作为控制端
来写的。即该ARM 芯片上的 SPI 作为主机 (产生SPI 时钟信号)来控制其他SPI 接口的从机,这部分驱动功能是负
责产生符合 SPI格式的数据 (暂时先这么理解)。
第二部分 就是具有 SPI 接口的从机得驱动,(这部分需要自己来编写),这部分驱动通过前一个驱动在 SPI 总线上
发送/接收 SPI 数据,来解释自己的命令。例如编辑一个SPI 接口的 CAN控制器的驱动,我们需要在 SPI 总线上发送
CAN控制器可以解释的命令,这样CAN控制器可以明白我们要它做什么,并做出相应动作。这部分驱动的功能和你
的 SPI 接口设备关系很大,接口设备不同驱动内容也不同。
下面以实例讲解在 SPI子系统同一个控制端下分别挂载 CAN 控制器 MCP2515 和移位寄存器 74SL595 的情况。
Linux 下的驱动模式是 driver 和device 分别注册到 “某个地方”,然后根据名称是否一致进行匹配。一致的话你
这个设备就和这个驱动匹配,那驱动就可以使用这个设备的资源,这个设备的动作需要这个驱动来进行。其次对于
平台设备 (platform_device)信息会在系统上电时被初始化,对于有子系统包含的设备和其他设备有点不一样的初
始化。
1:追踪 SPI主控制端的初始化。首先SPI资源会在 devs.c这个文件夹里面定义,定义包括名称,资源。(资源指
寄存器地址还有些标志)
static u64 s3c_device_spi0_dmamask = 0xffffffffUL;
struct platform_device s3c_device_spi0 = {
.name = s3c2410-spi,
.id = 0,//-1 表示只有一个这样的设备。否则设备的真正名称是name+.+id
.num_resources = ARRAY_SIZE(s3c_spi0_resource),
.resource = s3c_spi0_resource,
.dev = {
.dma_mask = s3c_device_spi0_dmamask,
.coherent_dma_mask = 0xffffffffUL
}
};
EXPORT_SYMBOL(s3c_device_spi0);//全局变量输出这样在系统中我们就知道有这个设备了。但是我们还需要再填充
点信息进去,要把这个设备作为子系统处理,应该有总线的概念,所以还需要总线信息。在 mach-smdk2440.c 里
您可能关注的文档
- [BEC写作] 商务英语email高手.doc
- [MSP430学习笔记] SD16使用说明.pdf
- [海川]管道应力分析技术2.pdf
- [外研版]2013届高考英语一轮复习语法专题1 正反解读冠词.ppt
- [外研版]2013届高考英语一轮复习语法专题2 正反解读名词.ppt
- [外研版]2013届高考英语一轮复习语法专题3 正反解读代词.ppt
- [外研版]2013届高考英语一轮复习语法专题4 正反解读形容词与副词.ppt
- [外研版]2013届高考英语一轮复习语法专题5 正反解读介词.ppt
- [外研版]2013届高考英语一轮复习语法专题6 正反解读动词和动词短语.ppt
- [外研版]2013届高考英语一轮复习语法专题7 正反解读非谓语动词.ppt
最近下载
- 海滨小城(第二课时)教学设计 三年级语文上册(部编版).docx VIP
- 二甲醚合成毕业设计化学工程与工艺煤化工毕业设计.doc VIP
- 海滨小城(第二课时) 逐字稿 三年级上册语文 智慧中小学.pdf VIP
- 二甲醚合成毕业设计化学条工是程与工艺煤化工毕业设计.doc VIP
- 课件:《中华民族共同体概论》第十四讲 新中国与中华民族新纪元.pptx VIP
- 梅毒螺旋体实验活动风险评估报告.pdf VIP
- 《联想集团有限公司》课件.ppt VIP
- 海滨小城(第一课时)逐字稿 三年级上册语文 智慧中小学.pdf VIP
- 课件:《中华民族共同体概论》第四讲 天下秩序与华夏共同体的演进(夏商周时期).pptx VIP
- 道路工程识图与绘图高职全套完整教学课件.pptx
文档评论(0)