[发明专利]基于Linux系统的SDIO接口数据传输方法及装置在审
| 申请号: | 201910066723.4 | 申请日: | 2019-01-24 |
| 公开(公告)号: | CN109800194A | 公开(公告)日: | 2019-05-24 |
| 发明(设计)人: | 姚劲松 | 申请(专利权)人: | 湖南国科微电子股份有限公司 |
| 主分类号: | G06F13/32 | 分类号: | G06F13/32 |
| 代理公司: | 北京弘权知识产权代理事务所(普通合伙) 11363 | 代理人: | 逯长明;许伟群 |
| 地址: | 410131 湖南省*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 链表模块 控制参数 链表数据 数据传输 数据发送过程 读取地址 发送中断 数据拷贝 完成信号 资源消耗 申请 写入 发送 驱动 | ||
1.基于Linux系统的SDIO接口数据传输方法,其特征在于,所述方法包括:
获取sg链表数据的地址,并将多组所述sg链表数据的地址和多组DMA控制器的控制参数均对应写入DMA控制寄存器链表模块中;
一个所述DMA控制寄存器将保存的一组所述sg链表数据的地址和一组DMA控制器的控制参数发送给DMA数据传输模块;
所述DMA数据传输模块读取所述sg链表数据的地址中的数据,并将读取的数据和所述DMA控制器的控制参数发送给SD卡,一个DMA控制寄存器数据发送过程完成;
将发送过程完成信号发送给所述DMA控制寄存器链表模块;
所述DMA控制寄存器链表模块中余下的所述DMA控制寄存器数据发送过程完成,所述DMA控制寄存器链表模块发送中断信号;
所述中断模块将接收到的所述中断信号传输给SDIO接口的中断控制器,所述中断控制器控制数据发送过程结束。
2.根据权利要求1所述的方法,其特征在于,所述DMA控制寄存器链表模块中余下的DMA控制寄存器数据发送过程完成,所述DMA控制寄存器链表模块发送中断信号,包括:
所述DMA控制寄存器链表模块检测余下的DMA控制寄存器是否存在所述sg链表数据的地址和DMA控制器的控制参数;
若存在,继续发送直至发送完成;
若不存在,则所述DMA控制寄存器链表模块发送中断信号。
3.根据权利要求1所述的方法,其特征在于,所述获取内核空间的sg链表数据的地址,并将多组所述sg链表数据的地址和多组DMA控制器的控制参数均对应写入DMA控制寄存器链表模块中,包括:
获取从linux用户空间传递到内核空间的数据缓冲区sg链表数据的地址;
根据DMA控制器与sg链表数据的地址的映射关系将所述sg链表数据的地址进行映射处理,并将处理后的多组所述sg链表数据的地址和多组DMA控制器的控制参数均对应写入到DMA控制寄存器链表模块中。
4.根据权利要求1所述的方法,其特征在于,所述DMA数据传输模块将数据发送给SD卡后,向所述SDIO接口外设的SD卡发送终止命令。
5.根据权利要求1所述的方法,其特征在于,所述DMA数据传输模块将数据发送给SD卡后,所述SDIO接口的所述DMA传输模块自动发送命令和自动计算所述DMA控制器的控制参数。
6.基于Linux系统的SDIO接口数据传输装置,其特征在于,包括DMA控制器(1)和中断模块(2),所述DMA控制器(1)与所述中断模块(2)通信连接,所述DMA控制器(1)包括DMA控制寄存器链表模块(11)和DMA数据传输模块(12),其中:所述DMA控制寄存器链表模块(11)与所述DMA数据传输模块(12)通信连接,所述DMA控制寄存器链表模块(11)与所述中断模块(2)通信连接,所述中断模块(2)与中断控制器连接。
7.根据权利要求6所述的SDIO接口数据传输装置,其特征在于,所述DMA控制寄存器链表模块(11)包括多个DMA控制寄存器,一个DMA控制寄存器包括一组sg链表数据的地址和一组DMA控制寄存器的控制参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于湖南国科微电子股份有限公司,未经湖南国科微电子股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910066723.4/1.html,转载请声明来源钻瓜专利网。





