基于2.6.35内核的无线网卡驱动的移植

基于2.6.35内核的无线网卡驱动的移植

一、 移植环境:

【移植环境】
        1、主机:Ubuntu 10.10
        2、目标机:FS210平台
        3、交叉编译工具:arm-none-linux-gnueabi-4.4.1
        4、wifi模块:RT5370STA或RTL8188
        5、Linux文件系统:网络加载
        6、内核:linux-2.6.35
        7、时间:2013.09.04

二、 在linux下的移植

1. Linux 无线wifi网卡的移植。

Fs210开发板可以支持两种不同无线wifi网卡模块,即RT5370STA或RTL8188。这里网卡驱动的移植方法请参照,该光盘下的\fs210 wifi移植文件夹下的FS210无线网卡驱动移植.pdf

三、 wpa_supplicant的移植

需要用到的源码选择:
        1、wpa_supplicant-0.7.2.tar.gz
        2、openssl-0.9.8e.tar.gz

源码路径:fs210 wifi移植\wifi 加密源码\

1. openssl移植

为网络通信提供安全及数据完整性的一种安全协议,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议, 它是一个多用途的、跨平台的密码工具。

a、补丁安装

openssl源码编译需要打wpa_supplicant提供的补丁,我们选择的openssl版本为openssl-0.9.8e所以我们需要wpa_supplicant-0.7.2/patches/openssl-0.9.8e-tls-extensions.patch拷贝到openssl-0.9.8e源码下。

Patch :补丁的意思。

在openssl-0.9.8e下执行命令:

$ cd openssl-0.9.8e

$ patch -p1 < openssl-0.9.8e-tls-extensions.patch //这里是数字1

b、配置编译安装

创建要安装的路径:

$ mkdir /home/linux/workdir/wifi/openssl

$ ./Configure linux-elf-arm -DL_ENDIAN linux:'arm-none-linux-gnueabi-gcc' shared --prefix=/home/linux/workdir/wifi/openssl

//这里的路径是上面你新建的openssl文件夹的路径 配置Makefile选项,生成Makefile

make

make install

2. wpa_supplicant移植

wpa_supplicant本是开源项目源码,被谷歌修改后加入android移动平台,它主要是用来支持WEP,WPA/WPA2和WAPI无线协议和加密认证的,而实际上的工作内容是通过socket(不管是wpa_supplicant与上层还是wpa_supplicant与驱动都采用socket通讯)与驱动交互上报数据给用户,而用户可以通过socket发送命令给wpa_supplicant调动驱动来对WiFi芯片操作。 简单的说,wpa_supplicant就是WiFi驱动和用户的中转站外加对协议和加密认证的支持,WIFI安全接入客户端。

在/wpa_supplicant-0.7.2/wpa_supplicant目录下。

a、makefile修改

添加
        CC=arm-none -linux-gnueabi-gcc //自己的交叉编译工具
        //同时删除#ifndef CC 和 #endif 否则在make的时候会出错

        在
        CFLAGS += -I../src
        CFLAGS += -I../src/utils
        下添加:
        CFLAGS += -I/home/linux/workdir/wifi/openssl/include
        修改
        LIBS += -lssl
        为
        LIBS += -lssl -L/home/linux/workdir/wifi/openssl/lib/
        修改
        LIBS_p += -lcrypto
        为
        LIBS_p += -lcrypto -L/home/linux/workdir/wifi/openssl/lib/

b、编译

$ cp deconfig .config
        $ make

编译后将生产的wpa_supplicant和wpa_cli拷贝到根文件系统的bin目录下

四、 WIFI模块测试

修改路由器安全类型为:WPA-PSK/WPA2-PSK 
        加密方法:AES

1. 根文件系统中添加/etc/resolv.conf, //域名解析

2. 内容为
    

3. 在根文件系统(/source/rootfs/)中添加/etc/wpa_supplicant.conf

//同时注意格式一定和上面的一致不然有可能会出错

AES-CCMP加密法则

根文件系统下创建目录: /var/run/wpa_supplicant

4. 启动开发板测试
        ① 配置无线网卡
        # ifconfig wlan0 192.168.0.200 这里的必须的路由一个网段
        # ifconfig –a

② 配置默认网关
        # route add default gw 192.168.0.1

③ 启动wpa_supplicant 连接无线网
        # wpa_supplicant -B -iwlan0 -c /etc/wpa_supplicant.conf

④ 查看状态
        # wpa_cli status

如果希望上电的时候就完成wifi匹配的话,直接将

ifconfig wlan0 192.168.0.200
        route add default gw 192.168.0.1
        wpa_supplicant -B -iwlan0 -c /etc/wpa_supplicant.conf

这几行命令写到启动脚本/etc/init.d/rcS中

# ping www.youku.com.cn

五、项目中腾达无线路由配置

注: 复位后的路由器的管理地址:192.168.0.1。

最终配置还要以个人路由器为准,但大体上是相同的。

第一、在“高级设置”下的“WAN口设置”配置如下:

第二,“无线设置”下的“无线基本设置”如下:

第三在“无线设置”的下“无线安全”设置如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值