开发学院手机开发Android 开发 Android 移植之 WIFI 阅读

Android 移植之 WIFI

 2010-03-16 16:36:00 来源:WEB开发网   
核心提示:{ 0xa027181c, 0x40214, 0xd24d}, //Mode 0: Single ANT with COEX enable{ 0xa027181c, 0x40211, 0xd24d}, //Mode 1: Dual ANT with COEX enable{ 0xa027181c, 0x40222, 0

{ 0xa027181c, 0x40214, 0xd24d}, //Mode 0: Single ANT with COEX enable

{ 0xa027181c, 0x40211, 0xd24d}, //Mode 1: Dual ANT with COEX enable

{ 0xa027181c, 0x40222, 0xd21c}, //Mode 2: single ANT for BT only

{ 0xa027801d, 0x18000, 0xd21c}, //Mode 3: Marvell default

};

wlan_offset_value RegBuffer;

RegBuffer.offset = (0xA5F0);

RegBuffer.value = BCACfgTbl[BCA_CONFIG][0];

wlan_prepare_cmd(priv,

HostCmd_CMD_MAC_REG_ACCESS,

HostCmd_ACT_GEN_SET,

HostCmd_OPTION_WAITFORRSP,

0,&RegBuffer);

RegBuffer.offset =(0xA58C);

RegBuffer.value = BCACfgTbl[BCA_CONFIG][1];

wlan_prepare_cmd(priv,

HostCmd_CMD_MAC_REG_ACCESS,

HostCmd_ACT_GEN_SET,

HostCmd_OPTION_WAITFORRSP,

0,&RegBuffer);

RegBuffer.offset = (0xA5A0);

RegBuffer.value = BCACfgTbl[BCA_CONFIG][2];

wlan_prepare_cmd(priv,

HostCmd_CMD_MAC_REG_ACCESS,

HostCmd_ACT_GEN_SET,

HostCmd_OPTION_WAITFORRSP,

0,&RegBuffer);

}

基本上这样就可以工作了;

4、其它问题:

(1)Sdio 口默认是用的 3.2V 这里需要修改相关的地方强制设成是 1.8V ,否则 SDIO 接口将无法工作;

(2)Android 平台上需要移植一些上层软件才能验证,比如 iwconfig , iwlist , wpa_supplicant 等。测试步骤:

iwlist mlan0 scan 如果能扫描到 AP 那么证明基本已经 OK 了;

wpa_supplicant -Dwext ?imlan0 -c/etc/wpa.conf &

dhcpcd mlan0 ;

这样的话,就可以 ping 通 IP 地址了;

5、常见问题

(1)WIFI 驱动注册 sdio 驱动的时候出错,也就是 probe 函数未被调用?需要检查 sdio 设备本身是否被检测到,内核是通过发送特定的命令来检测是 sdio 还是 SD 卡还是 mmc 的,在 mmc_rescan 函数里面可以看到 sdio 设备的加载过程,有可能就是你的电压设置不对;

(2)以太网接口一直出不来或者说 firmware 加载失败?这里需要确保 firmware 是否正确被加载,很可能是它找不到对应的 firmware

上一页  1 2 3 4  下一页

Tags:Android 移植 WIFI

编辑录入:coldstar [复制链接] [打 印]
[]
  • 好
  • 好的评价 如果觉得好,就请您
      0%(0)
  • 差
  • 差的评价 如果觉得差,就请您
      0%(0)
赞助商链接