登录
注册
一键加入QQ群
友善之臂官方网站
首 页
联系我们
淘宝店铺
维基教程
固件下载
资料汇总
搜索帖子!
NanoPC 系列:
NanoPC-T2
NanoPC-T3 Plus
NanoPC-T4
NanoPC-T6
NanoPC-T6 Plus
NanoPi 系列:
NanoPi-NEO
NEO Core
NEO Air
M1 Plus
Duo2
NEO3
NEO4
M4B
M5
M6
M6V2
核心板:
Smart4418
Core4418
Smart6818
Core6818
SOM-RK3399V2
CM3588
CM3588 Plus
迷你R系列:
NanoPi-R1
R1S
R2S
R2S Plus
Zero2
R3S
R76S
R4S
R5S
R5C
R6C
R6S
热门版块:
友善之臂最新动态
开发板实战手册及教程
友善之臂官方客服中心
ROM发布区
NanoPi 玩家交流区
我的论坛我的贴
默认风格
用户中心首页
编辑个人资料
查看个人资料
好友列表
用户权限查看
积分管理
积分转换
特殊组购买
收藏夹
我的主题
基本统计信息
到访IP统计
管理团队
管理统计
在线统计
会员排行
版块排行
帖子排行
个人首页
我的收藏
好友近况
Linux技术交流区
内核自带的spi驱动学习疑问
友友粉丝快线
开发板销售中心
嵌入式最新资讯
友善之臂最新动态
友善之臂官方客服中心
开发板实战手册及教程
应用方案和定制开发
NanoPi 交流与讨论
NanoPi 玩家交流区
ROM发布区
硬软DIY及开发
嵌入式交流与讨论
Android技术交流区
Linux技术交流区
U-boot技术交流区
WinCE技术交流区
Ubuntu技术交流区
裸机程序和微型OS
OpenWRT讨论区
开发板硬件讨论区
相关资料下载及使用技巧
站点服务
二手交易区
我的论坛我的贴
站务管理与公告
上一主题
下一主题
新 帖
主题 : 内核自带的spi驱动学习疑问
复制链接
|
浏览器收藏
|
打印
cyndy
级别: 侠客
作者资料
发送短消息
加为好友
UID:
5706
精华:
0
发帖:
119
金钱:
780 两
威望:
406 点
综合积分:
238 分
注册时间:
2009-05-05
最后登录:
2011-05-22
楼主
发表于: 2010-03-04 10:01
只看楼主
|
小
中
大
内核自带的spi驱动学习疑问
内核版本2.6.29.4
内核自带的spi驱动程序中,spi_s3c24xx.c驱动程序中怎么没有 标准的read,write等接口函数呢?可是文件spidev.c中有。这两个文件有什么关系啊?如何调用spi_s3c24xx.c里面的函数实现SPI接收数据呢?有没有例子啊?谢谢了。
顶端
回复
引用
分享
kasim
*無鈳取玳
级别: 论坛版主
作者资料
发送短消息
加为好友
QQ联系
UID:
27
精华:
12
发帖:
5398
金钱:
40120 两
威望:
17929 点
综合积分:
11036 分
注册时间:
2008-01-16
最后登录:
2014-11-22
1楼
发表于: 2010-03-04 12:22
只看该作者
|
小
中
大
简单的说,spi_s3c24xx.c和spidev.c是不同类型的驱动,提供的接口当然也不同。spi_s3c24xx.c是s3c24xx系列芯片的SPI controller驱动,它向更上层的SPI核心层(spi.c)提供接口用来控制芯片的SPI controller,是一个被其他驱动使用的驱动。
而spidev.c是在核心层基础之上将SPI Controller模拟成一个字符型设备的驱动,向文件系统提供标准的文件操作接口,用来操作对应的SPI Controller。
关于Linux 2.6中SPI驱动层的架构,我建议你好好看看内核源代码目录的Documentation/spi/下的文档。
"If you have an apple and I have an apple and we exchange apples, then you and I will
still each have one apple. But if you have an idea and I have an idea and we exchange
these ideas, then each of us will have two ideas."
顶端
回复
引用
分享
cyndy
级别: 侠客
作者资料
发送短消息
加为好友
UID:
5706
精华:
0
发帖:
119
金钱:
780 两
威望:
406 点
综合积分:
238 分
注册时间:
2009-05-05
最后登录:
2011-05-22
2楼
发表于: 2010-03-04 19:35
只看该作者
|
小
中
大
我之前看过了Documentation/spi/下的文档,可是没看出你上面说的联系。从应用的角度来说,我只需要在spidev_test.c或者spidev_fdx.c文件修改程序完成SPI的通信。我运行了这两个测试程序了,可以正常使用。不过没有用到中断。对于中断该怎么应用起来?我想让mini2440开启一个中断号,比如EINT9,如果产生中断了,表示有数据要接收了,开始SPI接收数据。这个该怎么做呢?有例子吗?谢谢kasim版主解答。
顶端
回复
引用
分享
mcy
级别: 新手上路
作者资料
发送短消息
加为好友
UID:
35548
精华:
0
发帖:
12
金钱:
60 两
威望:
12 点
综合积分:
24 分
注册时间:
2011-01-03
最后登录:
2013-03-15
3楼
发表于: 2011-01-05 19:47
只看该作者
|
小
中
大
回 2楼(cyndy) 的帖子
请问spidev_test.c和spidev_fdx.c两个程序运行是怎样的?如何知道它正常运行了?
顶端
回复
引用
分享
上一主题
下一主题
Linux技术交流区
http://121.40.142.80
访问内容超出本站范围,不能确定是否安全
继续访问
取消访问