5329|4

492

帖子

0

TA的资源

一粒金砂(高级)

楼主
 

【helper2416】第四弹 linux 3.2的spi驱动解决方法 [复制链接]

linux kernel 2.6的内核,helper2416的spi驱动是自带的在driver/spi下的hspi-s3c2443.c,而向上到linux 3.2是没有带的。 因为这个原因我试了很久都没有驱动SPI串口成功。。不得已只好给给helper2416开发板移植linux 3.2内核。。。刚开始的时候是直接用的旧版中的spi驱动,但是这个驱动有个问题,它没有注册spi_master,导致无法注册slave,比如你有个芯片要用到spi,你注册个spi_driver然后调用spi函数来收发数据,没有master它工作不了。

搞个驱动搞了我好久。。。,研究了几天。研究出两种解决办法:分享下:
1. 自己在原驱动上注册spi_master
2. Linux 3.2及以上内核可以使用6410的spi驱动driver/spi/spi-s3c64xx.c。

spi测试方法:
Linux 2.6中是没有测试代码的,Linux3.2中有在Documentation/spi/spidev_test.c,
可以把spi的SDI与SDO两线短接,然后用交叉编译的spidev_test程序放到板子上测试,如果收与发的数据一样,就说明驱动OK

比如我的:
[root@hcs /]# ./spidev_test -D /dev/spidev0.0                                                     
spi mode: 0                                                                                          
bits per word: 8                                                                                    
mapped channel 24 to 0                                                                              
mapped channel 23 to 1                                                                              
max speed: 497512 Hz (497 KHz)

FF FF FF FF FF FF
40 00 00 00 00 95
FF FF FF FF FF FF
FF FF FF FF FF FF
FF FF FF FF FF FF
DE AD BE EF BA AD
F0 0D

最新回复

你好,我也在测试2416的spi通信,也是采用6410驱动,但是一直看不到设备,能否提供一下怎么设置的吗? 非常感谢,我用的是官方linux 3.2.50.  详情 回复 发表于 2017-11-30 15:57
点赞 关注

回复
举报

554

帖子

0

TA的资源

版主

沙发
 
2.6的内核里,没有测试过SPI驱动,但是3.2的内核里,SPI驱动是工作正常的,如你所说,用的就是S3C64XX的驱动,板子上的CAN总线也是正常工作的,用的就是SPI的驱动。。。
 
个人签名My dreams will go on...
http://www.jyxtec.com
 

回复

492

帖子

0

TA的资源

一粒金砂(高级)

板凳
 
spacexplorer 发表于 2014-7-28 10:49
2.6的内核里,没有测试过SPI驱动,但是3.2的内核里,SPI驱动是工作正常的,如你所说,用的就是S3C64XX的驱 ...

做了一个小项目 移植ucos操作系统的。。正在慢慢整理上传。。。
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

4
 
你好,能否贴出怎么配置SPI的吗?
我也也在弄2416,不过系统是linux 3.1的,配置SPI后能在/dev下看到SPI0.0,但是用测试程序测试的时候没有接收到信息。
 
 
 

回复

3

帖子

0

TA的资源

一粒金砂(中级)

5
 
你好,我也在测试2416的spi通信,也是采用6410驱动,但是一直看不到设备,能否提供一下怎么设置的吗?
非常感谢,我用的是官方linux 3.2.50.
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/6 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表