Chinaunix首页 | 论坛 | 博客
  • 博客访问: 34338
  • 博文数量: 9
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 30
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-24 23:18
文章分类
文章存档

2014年(9)

我的朋友

分类: LINUX

2014-05-01 13:49:57

原文地址:8192CU WIFI驱动移植 作者:guo443193911


一、

8192CU WIFI

驱动交叉编译

 

1

 

进入自己的内核根目录,执行

make menuconfig

,在编译选项中确保如下选项选中:

 

Device Drivers ---> 

  Network device suppout ---> 

Wireless LAN (non-hamradio) ---> 

  [*] Wireless LAN drivrs (non-hamradio) & Wireless Extensions 

  [*] Wireless Extension API over RtNetlink 

 

 

//

此项可不选

 

2

 

保存内核配置,在内核根目录编译内核(我的:

make vmlinux ARCH=mips CROSS_COMPILE=mipsel-linux-

编译完成不要

strip 

3

 

网上下载源码(

realtek

官网下载)

 

4

 

linux

下解压下载的到指定目录

 

5

 

更改解压后的源码中的

Makefile

文件:

 

1

 

将有关

CONFIG_PLATFORM_*

的选项全部改为

2

 

export TopDIR ?= $(shell pwd)

之后增加自己的编译选项,编译选项的内容根据目标平台的大小端

模式、平台架构、交叉编译器、内核版本、内核目录树路径配置,我的

mips

的编译选项如下:

 

EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN         

ARCH:=mips 

CROSS_COMPILE:=mipsel-linux- 

KVER:=2.6.21.5 

 

KSRC:= /home/tom/work/ls1b/customer/src-kernel/linux-2.6.21 

6

 

更改完成在驱动根目录执行

make

正常情况下不会有错误,

编译完成后在驱动根目录里会看到

8192cu.ko

这就是我们所需要的驱动。

 

二、

Wireless_tools

交叉编译

 

1

 

网上下载

wireless_tools_29

源码包

 

2

 

解压下载的源码到指定目录。

 

3

 

进入根目录,根据自己的平台更改

Makefile

文件,我的如下:

 

PREFIX = /home/tom/work/ls1b/customer/src-kernel/wifi 

CC = mipsel-linux-gcc 

AR = mipsel-linux-ar 

RANLIB = mipsel-linux-ranlib 

4

 

wireless_toos

根目录执行

make

make

完成没有错误可以执行

make install

,这样编译后的工具就会安装

到指定的

PREFIX

目录。

 

三、

wpa_supplicant

交叉编译

 

1

 

下载

openssl-0.9.8e

源码(编译

wpa_supplicant

需用到

openssl

)和

wpa_supplicant-0.7.3

(编译

openssl

需用

wpa_supplicant-0.7.3

提供的补丁)源码。

 

2

 

编译

openssl 

1

 

解压

openssl

源码到指定目录:

#tar zxvf openssl-0.9.8e.tar.gz 

2

 

解压

wpa_supplicant

源码到指定目录:

#tar zxvf wpa_supplicant-0.7.3.tar.gz 

3

 

wpa_supplicant

中的补丁拷贝到

openssl

中,并打入补丁:

 

#cp wap_supplicant-0.7.3/patchs/openssl-0.9.8e-tls-extensions.patch openssl-0.9.8e 

#cd openssl-0.9.8e 

#patch –p1 < openssl-0.9.8e-tls-extensions.patch 

如果提示

patch

不存在可以运行命令

apt-get install patch

安装

patch

ubuntu

下)

 

4

 

建立

openssl

安装目录,我的是

/home/tom/work/ls1b/customer/src-kernel/wpa/ssl 

5

 

更改

Makefile

文件,我的更改内容如下:

 

INSTALLTOP=/home/tom/work/ls1b/customer/src-kernel/wpa/ssl 

OPENSSLDIR=/home/tom/work/ls1b/customer/src-kernel/wpa/ssl 

CC= mipsel-linux-gcc 

AR=mipsel-linux-ar $(ARFLAGS) r 

RANLIB= mipsel-linux-ranlib 

6

 

更改完成后在

openssl

源码目录运行

make

命令交叉编译

openssl

编译完成没有错误可以运行

make 

install

命令安装

openssl

,至此

openssl

交叉编译完成。

 

3

 

编译

wpa_supplicant 

1

 

进入上一步解压出的

wpa_supplicant

目录:

 

# cd wpa_supplicant-0.7.3/ 

# cd wpa_supplicant/ 

#cp defconfig .config 

2

 

更改

.config

文件,我的更改内容如下:

 

CC=mipsel-linux-gcc -L/home/tom/work/ls1b/customer/src-kernel/wpa/ssl/lib 

CFLAGS += -I/home/tom/work/ls1b/customer/src-kernel/wpa/ssl/include 

LIBS += -L/home/tom/work/ls1b/customer/src-kernel/wpa/ssl/lib 

3

 

更改完成后在

wpa_supplicant

目录运行

make

命令交叉编译

wpa_supplicant

,至此

wpa_supplicant

交叉编译完成,在目录下可看到所需的工具

wpa_cli

wpa_supplicant

wpa_passphrase

 

四、

8192CU WIFI

驱动的使用及联网测试

 

1

 

8192CU WIFI

驱动的加载

 

将第一步编译出的

8192cu.ko

拷到开发板中,我的存放目录为

/lib/modules/ 

运行命令加载驱动:

#insmod /lib/modules/8192cu.ko 

可以用命令

lsmod

查看驱动是否加载上

 

2

 

连接不加密的无线网络

 

将之前编译的

Wireless_tools

拷贝到开发板的

/bin

目录

 

启动无线网卡:

#ifconfig wlan0 up 

查看可用网络:

#iwlist scanning 

联网测试:

#iwconfig wlan0 essid “AP

名字

” key off 

3

 

连接

WEP

加密的无线网络

 

将之前编译的

Wireless_tools

拷贝到开发板的

/bin

目录

 

启动无线网卡:

#ifconfig wlan0 up 

查看可用网络:

#iwlist scanning 

联网测试:

#iwconfig wlan0 essid “AP

名字

” key “s:AP

密码

” 

这里需要注意的就是

key

里面如果含有字符,则需要加上

s:

,如果是单纯的数字密码,则不需要。

 

4

 

连接

WPA

加密的无线网络

 

将之前编译的

wpa_cli

wpa_supplicant

wpa_passphrase

拷贝到开发板

/bin

目录

 

启动无线网卡:

#ifconfig wlan0 up 

查看可用网络:

#iwlist scanning 

创建配置文件:

#touch /etc/wpa_supplicant.conf 

AP

名字和密码写入配置文件:

#wpa_passphrase AP

名称

 

AP

密码

 

>>/ etc/wpa_supplicant.conf 

联网测试:

#wpa_supplicant –i wlan0 –c /etc/wpa_supplicant.conf -B

阅读(1976) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~