spi总线的mmc卡驱动调试总结

本文总结了在SPI总线上的MMC卡驱动调试过程,主要关注非热插拔场景下的初始化和调用流程,从底层到应用层进行深入解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这周调试挂载在spi总线sd卡驱动,总结一下
因为这个涉及到2个驱动,spi总线驱动和sd卡驱动,sd卡设备挂载在spi总线上并不像设备挂载在i2c总线上,
i2c总线提供设备挂载需要的借口函数attach,只需要设备主动去调用attach就可以挂载上去。而对于spi总
线设备它的挂载方式不是主动去挂载,而是采取和platform虚拟总线注册设备方式相似的方法。在相应处理
器架构的目录上的platform.c文件中添加一个设备信息,相当于device,在设备驱动中注册的时候去匹配挂
载,就是对照name是否相同。

static struct spi_board_info ls_sb2f_spi_device[]={
{   
    .modalias   = "mmc_spi",
    .platform_data   = NULL,
    .bus_num    =0,
    .chip_select =1,
    .mode       =0,
}

spi_register_board_info(ls_sb2f_spi_device, ARRAY_SIZE(ls_sb2f_spi_device));

spi总线驱动主要就是实现spi总线的传输协议,以及给设备提供传输数据需要调用的接口函数。
内核spi总线驱动实现的传输方式是将数据封装成message,每个message由多个transfer组成,由于spi总线可
以实现全双工传输,因此对于所有transfer都是同时读写。内部都同时提供tx_buf和rx_buf。
所以作为一个挂载在spi总线上的
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值