在ARM上安装USB无线网卡驱动过程(8188eu)

1、首先在下载对应的驱动源码包:

下载地址:http://download.csdn.net/detail/zzz_mraz/5262010

2. 解压该文件夹:tar xvzf rtl8188eu_USB_linux.tar.gz

3. 进入给文件夹修改Makefile文件。

修改如下:

a、平台选择:CONFIG_PLATFORM_I386_PC = n        CONFIG_PLATFORM_ARM_S3C2K4 = y

b、修改使用的编译工具、对应的内核目录:

[objc]  view plain  copy
 print ?
  1. ifeq ($(CONFIG_PLATFORM_ARM_S3C2K4), y)  
  2. EXTRA_CFLAGS += -DCONFIG_LITTLE_ENDIAN  
  3. ARCH := arm  
  4. CROSS_COMPILE := /usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-  
  5. # KVER  := 2.6.24.7_$(ARCH)  
  6. KSRC := /home/uni/workspace/20141107_yisuo/linux_3_6/linux-3.6  
  7. endif  
c、PS:先把节能功能取消了 CONFIG_POWER_SAVING = n

主要修改KVER:=2.6.38

KSRC :=/opt/FriendlyARM/mini6410/linux/linux-2.6.38

配置好上述选项,make后就得到驱动模块:8192cu.ko

生成8188.ko文件后,将其下载到mini6410开发板上,拷贝到/home文件夹下

2、模块加载:

执行insmod 8188eu.ko可以看到如下信息:

rtl8188eu driver version=v4.1.2_4787.20120803
build time: Aug 30 2016 21:20:08
register rtw_netdev_ops to netdev_ops
CHIP TYPE: RTL8188E


usb_endpoint_descriptor(0):
bLength=7
bDescriptorType=5
bEndpointAddress=81
wMaxPacketSize=64
bInterval=0
RT_usb_endpoint_is_bulk_in = 1


usb_endpoint_descriptor(1):
bLength=7
bDescriptorType=5
bEndpointAddress=2
wMaxPacketSize=64
bInterval=0
RT_usb_endpoint_is_bulk_out = 2


usb_endpoint_descriptor(2):
bLength=7
bDescriptorType=5
bEndpointAddress=3
wMaxPacketSize=64
bInterval=0
RT_usb_endpoint_is_bulk_out = 3
nr_endpoint=3, in_num=1, out_num=2


NON USB_SPEED_HIGH
Chip Version Info: CHIP_8188E_Normal_Chip_TSMC_D_CUT_1T1R_RomVer(0)
RF_Type is 3!!
_ConfigNormalChipOutEP_8188E OutEpQueueSel(0x05), OutEpNumber(2) 
EEPROM type is E-FUSE
====> _ReadAdapterInfo8188EU
Boot from EFUSE, Autoload OK !
EEPROM ID=0x8129
VID = 0x0BDA, PID = 0x8179
Customer ID: 0x00, SubCustomer ID: 0xCD
Hal_ReadPowerSavingMode88E...bHWPwrPindetect(0)-bHWPowerdown(0) ,bSupportRemoteWakeup(0)
### PS params=>  power_mgnt(0),usbss_enable(0) ###
======= Path 0, Channel 0 =======
Index24G_CCK_Base[0][0] = 0x26
Index24G_BW40_Base[0][0] = 0x2a
======= Path 0, Channel 1 =======
one_wire_status: 2
Index24G_CCK_Base[0][1] = 0x26
Index24G_BW40_Base[0][1] = 0x2a
======= Path 0, Channel 2 =======
Index24G_CCK_Base[0][2] = 0x26
Index24G_BW40_Base[0][2] = 0x2a
======= Path 0, Channel 3 =======
one_wire_status: 2
Index24G_CCK_Base[0][3] = 0x26
Index24G_BW40_Base[0][3] = 0x2a
======= Path 0, Channel 4 =======
Index24G_CCK_Base[0][4] = 0x26
Index24G_BW40_Base[0][4] = 0x2a
======= Path 0, Channel 5 =======
Index24G_CCK_Base[0][5] = 0x26
one_wire_status: 4
Index24G_BW40_Base[0][5] = 0x2a
======= Path 0, Channel 6 =======
Index24G_CCK_Base[0][6] = 0x25
Index24G_BW40_Base[0][6] = 0x29
======= Path 0, Channel 7 =======
Index24G_CCK_Base[0][7] = 0x25
one_wire_status: 4
Index24G_BW40_Base[0][7] = 0x29
======= Path 0, Channel 8 =======
Index24G_CCK_Base[0][8] = 0x25
Index24G_BW40_Base[0][8] = 0x29
======= Path 0, Channel 9 =======
Index24G_CCK_Base[0][9] = 0x25
one_wire_status: 4
Index24G_BW40_Base[0][9] = 0x28
======= Path 0, Channel 10 =======
Index24G_CCK_Base[0][10] = 0x25
Index24G_BW40_Base[0][10] = 0x28
======= Path 0, Channel 11 =======
Index24G_CCK_Base[0][11] = 0x25
one_wire_status: 4
Index24G_BW40_Base[0][11] = 0x28
======= Path 0, Channel 12 =======
Index24G_CCK_Base[0][12] = 0x25
Index24G_BW40_Base[0][12] = 0x28
======= Path 0, Channel 13 =======
Index24G_CCK_Base[0][13] = 0x25
Index24G_BW40_Base[0][13] = 0x28
======= Path 0, Channel 14 =======
Index24G_CCK_Base[0][14] = 0x25
Index24G_BW40_Base[0][14] = 0x28
======= TxCount 0 =======
CCK_24G_Diff[0][0]= 0
OFDM_24G_Diff[0][0]= 1
BW20_24G_Diff[0][0]= -1
one_wire_status: 2
BW40_24G_Diff[0][0]= 0
======= TxCount 1 =======
CCK_24G_Diff[0][1]= -2
OFDM_24G_Diff[0][1]= -2
BW20_24G_Diff[0][1]= -2
BW40_24G_Diff[0][1]= -2
======= TxCount 2 =======
CCK_24G_Diff[0][2]= -2
OFDM_24G_Diff[0][2]= -2
one_wire_status: 3
BW20_24G_Diff[0][2]= -2
BW40_24G_Diff[0][2]= -2
======= TxCount 3 =======
CCK_24G_Diff[0][3]= -2
OFDM_24G_Diff[0][3]= -2
BW20_24G_Diff[0][3]= -2
BW40_24G_Diff[0][3]= -2
EEPROMRegulatory = 0x0
one_wire_status: 4
mlmepriv.ChannelPlan = 0x20
EEPROM Customer ID: 0x 0
EEPROM : AntDivCfg = 0, TRxAntDivType = 3
Board Type: 0x 0
ThermalMeter = 0x1a
<==== _ReadAdapterInfo8188EU in 2220 ms
rtw_macaddr_cfg MAC Address  = 3c:46:d8:54:82:cc
MAC Address from pnetdev->dev_addr= 3c:46:d8:54:82:cc
bDriverStopped:1, bSurpriseRemoved:0, bup:0, hw_init_completed:0

usbcore: registered new interface driver rtl8188eu

执行命令ifconfig -a就可以看到我们的无线wifi驱动就已经安装好了。

eth0      Link encap:Ethernet  HWaddr 08:90:00:A0:90:90  
          inet addr:192.168.1.230  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  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:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
          Interrupt:108 Base address:0xe000 


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)


wlan0     Link encap:Ethernet  HWaddr 3C:46:D8:54:82:CC  
          BROADCAST MULTICAST  MTU:1500  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:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)


你可能感兴趣的:(Linux)