环境用的是android2.3系统,wifi是BCM4329,接口是SDIO,Android4.0在步骤上略有不同。
1.首先了解SDIO的一些相关知识:
SDIO有两端,其中一端是HOST端,另一端是device端.所有的通信都是由HOST端发送命令开始的,Device端只要能解析命令,就可以相互通信。
CLK信号:HOST给DEVICE的时钟信号,每个时钟周期传输一个命令。
CMD信号:双向的信号,用于传送 命令 和
反应。
DAT0-DAT3信号:四条用于传送的数据线。
2.然后看原理图知道WIFI模块与CPU连接的引脚信息
CLK
----------62
CMD
----------63
DATA0
---------67
DATA1 ----------66
DATA2
--------- 65
DATA3 --------- 64
WL_WAKE_UP -------- GPIO19
WIFI模块的唤醒引脚
WL_RST
-------- GPIO39
WIFI模块的重置引脚
3.下面进入BCM4329的移植步骤
(1)把驱动目录BCM4329放到kernel/drivers/net/wireless下
(2)修改/device/qcom/msmxxxx_surf/BoardConfig.mk
添加WIFI模块的扳级配置信息:
BOARD_WPA_SUPPLICANT_DRIVER := WEXT