开发板:友善之臂smart210
操作系统:Ubuntu 12,04
交叉编译器:arm-none-linux-gnueabi gcc version 4.3.2
WIFI 模组:TP-LINK TL-WN725N 2.0

驱动版本:8188eu_USB_Linux

因为我们是要移植到ARM开发板上,所以首先我们需要更改驱动的Makefile;

CONFIG_PLATFORM_I386_PC = n
CONFIG_PLATFORM_ANDROID_X86 = n
CONFIG_PLATFORM_ARM_S3C2K4 = n
CONFIG_PLATFORM_ARM_PXA2XX = n
CONFIG_PLATFORM_ARM_S3C6K4 = y

将I386_PC从y改为n, s3c6410 平台从 n 改为 y;

根据自身 linux 开发环境修改s3c6410处编译环境

ifeq ($(CONFIG_PLATFORM_ARM_S3C6K4), y)
EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN
ARCH := arm
CROSS_COMPILE := arm-none-linux-gnueabi-
KVER  := 3.0.8
KSRC ?= /usr/src/linux-3.0.8
endif

其中KVER是你开发板的linux版本,一般情况下跟我们电脑环境的Linux版本是不一样的,那么此时我们就需要把开发板上的内核在电脑上编译一下(详细编译方法一般开发板光盘上面就有),编译完成后KSRC就指向你所编译的内核。

当这些全部完成之后,执行make命令编译,就可以得到开发板上面的驱动文件8188eu.ko。

zhaokeke@ubuntu:~/8188eu_USB_linux/driver/rtl8188eu$ make
zhaokeke@ubuntu:~/8188eu_USB_linux/driver/rtl8188eu$ ls
8188eu.ko                    Makefile.bak                    hal
8188eu.mod.c                 Makefile_1                      ifcfg-wlan0
8188eu.mod.o                 Module.symvers                  include
8188eu.o                     READEME                         make_drv
Kconfig                      autoconf_rtl8188e_usb_linux.h   modules.order
Kconfig_rtl8188e_usb_linux   autoconf_rtl8189e_sdio_linux.h  os_dep
Kconfig_rtl8189e_sdio_linux  clean                           runwpa
Makefile                     core                            wlan0dhcp

将驱动文件拷贝到开发板上,然后加载驱动

[root@FriendlyARM /sdcard]# insmod 8188eu.ko
[root@FriendlyARM /sdcard]# ifconfig
eth0
Link encap:Ethernet HWaddr 00:22:12:34:56:90
inet addr:192.168.1.20 Bcast:192.168.1.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:57 errors:0 dropped:0 overruns:0 frame:0
TX packets:5 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:6144 (6.0 KiB) TX bytes:1338 (1.3 KiB)
Interrupt:108 Base address:0x8000
lo
Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

此时仍然看不到USB无线网卡wlan0,如何确定我们的驱动安装是否正确呢?此时我们可以在/proc/net 目录下可以看到 wlan0

[root@FriendlyARM /sdcard]# cd /proc/net/
[root@FriendlyARM net]# cat wireless
Inter-| sta-|   Quality        |   Discarded packets               | Missed | WEface | tus | link level noise |  nwid  crypt   frag  retry   misc | beacon | 22wlan0: 0000    0.    0.    0.       0      0      0      0      0        0    

如果能看到上面的wlan0,说明驱动是没有什么问题了,此时我们需要配置网卡;

首先我们需要绑定IP地址:

[root@FriendlyARM net]# ifconfig wlan0 192.168.1.22

为能够是 usb wifi 能够正常访问网络,还需一些应用软件:iwconfig iwlist 等
通过 ifconfig 命令可以看到比先前看到的多出 wlan0,可见目前已经将 wlan0 激活。但仍需要要一些设置才能访问网络。

[root@FriendlyARM net]# ifconfig wlan0 up 

这一步很重要,我觉得好像就是打开无线网卡,如果没有这一步的话,无论后面的再正确都是无法ping通的。

执行iwconfig命令可以看到如下结果,

[root@FriendlyARM net]# iwconfig
lo        no wireless extensions.                                               ifb0      no wireless extensions.                                               ifb1      no wireless extensions.                                               eth0      no wireless extensions.                                               sit0      no wireless extensions.                                               ip6tnl0   no wireless extensions.                                               wlan0     unassociated  Nickname:"<WIFI@REALTEK>"                               Mode:Auto  Frequency=2.412 GHz  Access Point: Not-Associated          Sensitivity:0/0                                                       Retry:off   RTS thr:off   Fragment thr:off                            Encryption key:off                                                    Power Management:off                                                  Link Quality:0  Signal level:0  Noise level:0                         Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0              Tx excessive retries:0  Invalid misc:0   Missed beacon:0  

扫描附近的wifi:

[root@FriendlyARM /sdcard]# iwlist wlan0 scan  

连接wifi:

[root@FriendlyARM net]# iwconfig wlan0 essid "AirJ"

这是没有密码的,如果有密码,需要在后面加上key ******;

连接过之后可以通过ping电脑来测试是否连接成功

[root@FriendlyARM net]# ping 172.21.15.1
PING 172.21.15.1 (172.21.15.1): 56 data bytes
64 bytes from 172.21.15.1: seq=0 ttl=64 time=2.700 ms
64 bytes from 172.21.15.1: seq=1 ttl=64 time=2.642 ms
64 bytes from 172.21.15.1: seq=2 ttl=64 time=4.012 ms
64 bytes from 172.21.15.1: seq=3 ttl=64 time=4.909 ms
64 bytes from 172.21.15.1: seq=4 ttl=64 time=193.940 ms
64 bytes from 172.21.15.1: seq=5 ttl=64 time=2.855 ms 

到此,USB网卡驱动移植结束,我在这只介绍了正确的,其实中间还出现了很多问题,尤其是后面没有打开无线网卡,导致出现ADDRCONF(NETDEV_UP): wlan0: link is not ready错误。

嵌入式Linux移植USB网卡驱动相关推荐

  1. Linux驱动移植USB网卡r8156驱动(详细)总结

    目录 一.简介 二.驱动移植 2.1 驱动源码解压 2.2 驱动Kconfig和Makefile配置 2.2.1 驱动上层目录识别驱动文件 2.2.2 驱动目录新建驱动Kconfig和Makefile ...

  2. linux安装comfast网卡驱动,电脑如何通过usb共享手机网络 Linux安装wifi 无线网络 811AC usb网卡驱动...

    电脑如何通过usb共享手机网络 该方法是通过USB线将手机和电脑连接的方式来共享网络,所以不管是笔记本电脑还是台式机,不管电脑有无线网卡,都可以使用该方法. 准备工作:首先用数据线把手机连接到电脑上, ...

  3. 电脑如何通过usb共享手机网络 Linux安装wifi 无线网络 811AC usb网卡驱动

    电脑如何通过usb共享手机网络 该方法是通过USB线将手机和电脑连接的方式来共享网络,所以不管是笔记本电脑还是台式机,不管电脑有无线网卡,都可以使用该方法. 准备工作:首先用数据线把手机连接到电脑上, ...

  4. 嵌入式Linux系统中打印机驱动的移植

    一.开发环境 硬件环境:DM365 打印机型号:HP P1007 虚拟机系统:Red Hat Enterprise Linux 5 交叉编译环境:Ti交叉编译环境安装包 二.详细步骤 1.下载Ghos ...

  5. 二十一、Linux驱动之移植DM9000C网卡驱动(下)

    通过二十.Linux驱动之移植DM9000C网卡驱动(上)对厂家提供的网卡驱动程序dm9dev9000c.c的分析,下面将该网卡驱动移植到JZ2440开发板上(内核版本为linux-2.6.22.6) ...

  6. 基于ARM的嵌入式Linux移植真实体验(4)――设备驱动

    基于 ARM 的嵌入式 Linux 移植真实体验( 4 ) ――设备驱动 宋宝华 [email]21cnbao@21cn.com[/email] 出处:dev.yesky.com 设备驱动程序是操作系 ...

  7. 基于ARM的嵌入式Linux移植真实体验(3)――操作系统

    基于ARM的嵌入式Linux移植真实体验(3)――操作系统 宋宝华[email]21cnbao@21cn.com[/email] 出处:dev.yesky.com 在笔者撰写的<C语言嵌入式系统 ...

  8. 基于ARM的嵌入式Linux移植真实体验(1)――基本概念

    基于 ARM 的嵌入式 Linux 移植真实体验( 1 ) ――基本概念 宋宝华   [email]21cnbao@21cn.com[/email] 出处:dev.yesky.com 1. 引言 AR ...

  9. 嵌入式Linux下彩色LCD驱动的设计与实现

    嵌入式Linux下彩色LCD驱动的设计与实现 转载 摘要:本文介绍了如何在嵌入在开发彩色LCD显示驱动的方法,并对Linux中的显示驱动程序结构和框架作一介绍. 长期以来,在常见的掌上电脑(PDA)等 ...

最新文章

  1. 干掉服务状态!从 Session 到 Token,复杂度降低100倍!
  2. linux下mysql日志配置_Linux下MySQL 5.5.21 服务器日志配置
  3. js获取当前浏览器地址栏的链接,然后在链接后面加参数
  4. 算法提高课-数学知识-矩阵乘法-AcWing 1303. 斐波那契前 n 项和:矩阵乘法,快速幂,线性代数
  5. marlin固件烧录教程_小白穿越机教程-刷固件 | 穿越机如何刷最新的betaflight固件教程...
  6. 遗传算法求解极大值问题
  7. 73 forward动作
  8. 1.3.2 Jetty 的基本配置(2)
  9. KVM-Arch-Figure
  10. python测试开发工程师前景_测试开发工程师,薪水20k值吗?
  11. 服务器挂软件系统,云服务器挂软件用什么系统
  12. 一图读懂5G定位(提供完整思维导图下载)
  13. 【预测模型】基于狼群算法优化BP神经网络实现预测matlab源码
  14. oracle analyze any,Oracle 工具:Analyze
  15. 【智库解读】明天系、安邦系、海航系、复星系、联想系、中植系、三胞系、宝能系等27个超级民营金融巨头名单及其持股图揭秘!
  16. vue获取地址栏地址url截取参数
  17. 系统配置工具-- Siebel Tools
  18. PS裁剪图片上任意形状区域
  19. 定解问题(一)| 通解与特解 + 适定性 | 偏微分方程(五)
  20. 所有获奖的英文名称——英文简历必备

热门文章

  1. std::pair std::tuple std::tie
  2. 为什么婚戒要带在无名指上
  3. 计算机老师未来努力方向,2020年计算机教育教学工作总结
  4. Redis计数器统计小程序用户停留时长
  5. Node接入支付宝开放平台的沙箱实现支付功能
  6. ArcFace(insightface)论文翻译——中英文对照+标注总结
  7. 利用CSS3的transition属性模仿鼠标移入闪光灯效果
  8. 小程序使用less(vscode)
  9. validform 的ajax验证,Validform
  10. css 双飞翼布局(flex 、float)和 圣杯布局