免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1851 | 回复: 0
打印 上一主题 下一主题

[驱动] spi驱动是不是内核驱动没有完善!(2.6.30版本) [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-10-08 18:10 |只看该作者 |倒序浏览
本帖最后由 dingzerong 于 2011-10-16 21:39 编辑

我想问一下
在s3c24x0中 transfer是这样初始化的
bitbang->master->transfer= spi_bitbang_transfer

在atmel中是这样初始化
master->transfer = atmel_spi_transfer;
导致了我找不到 究竟数据写入了哪里,究竟在哪里有将数据写入spi的数据寄存器

三星的
1.static inline int
2.spi_async(struct spi_device *spi, struct spi_message *message)
3.{
4. message->spi = spi;
5. return spi->master->transfer(spi, message);
6.}
这里的master->transfer是在spi_bitbang_start中进行赋值的:
看spi_bitbang_transfer的实现:

--------------------------------------------
但是amtel中的atmel_spi_transfer 只有中断函数 却没有,像三星有
static int s3c24xx_spi_txrx(struct spi_device *spi, struct spi_transfer *t)
writeb(hw_txbyte(hw, 0), hw->regs + S3C2410_SPTDAT);
wait_for_completion(&hw->done);

没有将数据写入寄存器的函数!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP