linux设备驱动-wifi驱动详解3 sdio_wifi驱动总结
Linux MMC子系统主要分成三个部分:
MMC核心层(sdio core):完成不同协议和规范的实现,为host层和设备驱动层提供接口函数。MMC核心层由三个部分组成:MMC,SD和SDIO,分别为三类设备驱动提供接口函数;
Host 驱动层(sdio host主设备):针对不同主机端的SDHC、MMC控制器的驱动;
Client 驱动层(sdio driver从设备):针对不同客户端的设备驱动程序。如SD卡、T-flash卡、SDIO接口的GPS和wi-fi等设备驱动。
1 sdio device和sdio driver
wifi作为sdio的从设备
以linux-4.9.73\drivers\net\wireless\marvell\libertas\If_sdio.c的wifi driver为例:
2 sdio host
CPU的sdio主控制器作为sdio的主设备。
3 sdio core
3.1 注册sdio 总线
3.2 add sdio host 设备
3.3 mmc_rescan详解
行胜于言,自强不息。