免费注册 查看新帖 |

Chinaunix

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

如何创建一个完善的SPI slave驱动 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-12-03 19:29 |只看该作者 |倒序浏览
由于LINUX 的kernel中没有spi slave模型。但是项目中正好需要用到。因此打算写一个spi slave驱动。但是发现一个问题不好解决。
spi slave 功能:
1.通过中断,接收数据。
2.实现阻塞型的read方法。
单独的功能已经实现,在read中down()一个信号量。在中断完成后,Up信号量。这样可以实现简单的单个的阻塞的功能。
但是当用户没有调用read操作时(没有调用down()),这个时候又发生多次接收中断,那么驱动会完成多次up信号量。
这样就存在隐患了。
不知道有没有什么更好的方法解决没有外部read操作是,驱动可以多次添加信号量,而一旦调用read驱动会自动信号量减1(类似概念),从而完成多次异步阻塞读写。。

论坛徽章:
0
2 [报告]
发表于 2015-05-28 22:13 |只看该作者
请问您的这个SPI SLAVE驱动完成得如何了?难道是 发帖之后就 消失了!^_

最近我接到在全志a33上面做SPI SLAVE驱动,有问题请教呢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP