移植usb wifi 驱动

原创 2012年03月26日 15:12:46

porting wifi主要分为两个部分,源码的修改 和 配置文件的修改其中配置文件的修改包括 源码 未编译时 配置文件的修改 和 源码编译后 的配置文件修改,下面就这两部分分析:

android 未编译时的 配置文件修改和源码修改
1、

/build/target/board/generic/ BoardConfig.mk

确定是否存在HAVE_CUSTOM_WIFI_DRIVER_2 := true ,如果没有则添加该选项;

/android-eclair/external/wpa_supplicant/.config.h
确定.config.h中,是否存在以下3个选项
CONFIG_WIRELESS_EXTENSION=y
CONFIG_CTRL_IFACE=y
CONFIG_DRIVER_WEXT=y


以上是支持wifi驱动的选项!

2、修改的源码文件


2.1/android-cupcake/system/wlan/ti/sta_dk_4_0_4_32/CUDK/tiwlan_loader/tiwlan_loader.c

这个文件修改的tiwlan_loader服务,这个服务在android1.5中需要返回成功,表示加载wifi的固件到
eeprom中成功,而实际内核在加载wifi驱动的时候,同时加载了固件(即提供的bin文件)。

但是在android2.0中,这个服务不是必须的!

2.2/android-cupcake/hardware/libhardware_legacy/wifi/wifi.c
这个是porting wifi驱动的 最重要的文件,其中包括 驱动加载, 连接wpa_supplicant服务 都是在wifi.c中完成。所以要修改 驱动加载的网络接口名 和 相关的 宏
2.3/android-cupcake/frameworks/base/wifi/java/android/net/wifi/
这个目录下是wifi中相关的java代码,其中修改的WifiStateTracker.java,这个主要修改dhcp时,获取动态ip地址的网络接口名
2.4 external/wpa_supplicant/ctrl_iface_unix.c
这个主要 修改wpa_supplica
nt连接时的 权限,wpa_supplicant服务启动的时候 客户端 和 服务端 通过unix socket通信,JAVA UI 界面是通过此socket文件与驱动联系,此服务生成的socket 在/data/system/wpa_supplicant/目录下,如果涉及到权限问题,则需要修改 external/wpa_supplicant/ctrl_iface_unix.c中相关的目录的权限

2.5 frameworks/base/services/java/com/android/server/WifiService.java 这个在android1.5中,上传到BSSID,ISSID,java代码无法识别。在android2.0中无需修改。


android 编译后 的相关配置文件的修改

3.1/system/etc/wifi/wpa_supplicant.conf看目录下是否存在该文件,如果不存在,则添加;并且添加wpa_supplicant服务socket的服务接口,如下所示:
ctrl_interface=/data/system/wpa_supplicant//默认的mlan0无线网络接口的目录
update_config=1 //这个可能是更新的配置,但不确认。


3.2/system/etc/dhcpcd/dhcpcd.conf看是否存在改文件,不存在则添加,并且修改无线网络接口的网络名字,如android默认的是tiwlan0 ,而我的无线网络接口是mlan0,则把interface 后面的接口改成mlan0


3.3 init.rc
service  wpa_supplicant   /system/bin/wpa_supplicant   -imlan0 -c/system/etc/wifi/wpa_supplicant.conf
     disable
     oneshot
service dhcpcd /system/bin/dhcpcd -d -f /system/etc/dhcpcd/dhcpcd.conf mlan0
  disable
  oneshot
以上是添加在wifi的服务。

mkdir /data/misc/wifi  0777 wifi wifi
mkdir /data/misc/wifi/sockets 0777 wifi wifi
mkdir /data/system/wpa_supplicant 0777 wifi wifi
mkdir /data/misc/dhcp 0777 dhcp dhcp
chown dhcp dhcp /data/misc/dhcp
新建以上的目录。

如果你不的平台不出稀奇古怪的问题的话,现在你已经可以ping通你想用的ip地址咯!


版权声明:本文为博主原创文章,未经博主允许不得转载。

嵌入式Linux USB WIFI驱动的移植

硬件平台:飞思卡尔MX258开发板操作系统:Linux2.6.31WIFI:    RT2860 USB WIFI模组交叉编译环境:gcc version 4.1.2调试步骤:第一步:测试USBHOS...
  • armeasy
  • armeasy
  • 2011年03月16日 09:02
  • 25784

嵌入式Linux USB WIFI驱动的移植

http://blog.csdn.net/armeasy/article/details/6252389

android 平台USB wifi驱动移植及使用 SDIOwifi

android 平台USB wifi驱动移植及使用 SDIOwifi 博主链接http://blog.csdn.net/wh_19910525/article/details/73898...

嵌入式Linux 三星s5pv210 USB WIFI驱动的移植

硬件平台:三星5pv210开发板 操作系统:Linux3.0.8 WIFI:    rt5370 USB WIFI模组 交叉编译环境:arm-none-linux-gnueabi-gcc  4.5.1...

嵌入式Linux USB WIFI驱动的移植

硬件平台:飞思卡尔MX258开发板 操作系统:Linux2.6.31 WIFI:    RT2860 USB WIFI模组 交叉编译环境:gcc version 4.1.2   调试步骤: ...

嵌入式Linux USB WIFI驱动的移植

硬件平台:飞思卡尔MX258开发板 操作系统:Linux2.6.31 WIFI:    RT2860 USB WIFI模组 交叉编译环境:gcc version 4.1.2   调试步骤: ...
  • HAOMCU
  • HAOMCU
  • 2012年02月17日 11:16
  • 2667

嵌入式linux usb wifi驱动移植

文档名称:嵌入式linux usb wifi驱动移植 版本历史 版本号        时间        内容 v1.0b001        2012-6-18        ...

android 平台USB wifi驱动移植及使用 SDIOwifi

----------ok-------------       但是命令发到wpa_supplicant后的流程网上提到的资料就非常少了,不过由于wpa_supplicant是一...

android 平台USB wifi驱动移植及使用

一.   Android平台Wifi的基本代码路径 1.       Wpa_supplicant源码部分 external/wpa_supplicant_6/ 生成库libwpa_...
  • quannii
  • quannii
  • 2013年06月07日 11:33
  • 746

天嵌E9平台下进行USB Wifi模块RT3070驱动的移植

由于项目工作需要,要在天嵌E9平台下实现wifi的点对点,点对多点的传输。 Wifi 模块芯片:雷凌3070芯片 嵌入式平台:E9(ARM) 交叉编译环境:arm-none-linux-gnuea...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:移植usb wifi 驱动
举报原因:
原因补充:

(最多只允许输入30个字)