嵌入式linux usb wifi移植[s3c6410平台原创]

2019-07-12 17:54发布


文档名称:嵌入式linux usb wifi驱动移植  
    版本历史 版本号 时间 内容 v1.0b001 2012-6-18 初始版本,介绍在嵌入式linux方面如何移植usb wifi相关                                                          

                                         嵌入式linux usb wifi移植参考文档        硬件平台:realARM 6410      操作系统:fedora kernel 2.6.33.3-85.fc13.i686.PAE      交叉编译器:arm-none-linux-gnueabi gcc version 4.3.2      WIFI模组:磊科NW336 芯片 realtek 8188cus   【前提 linux系统可以在板子上正常运行】   1.       调试步骤 移植usb wifi首先确定板子上的USB Host功能正常运行,进入内核配置界面,如下图进行配置。 Fig1.0linux kernel 2.6.36打开USB HOST界面 从新编译内核后启动开发板,并插入U盘后,通过mount命令进行U盘加载 Mount /dev/sdb1 /mnt/ Cd /mnt/ Ls 得到下图Fig1.1结果 Fig 1.1 mount U盘成功   2.下载磊科 USB WIFI 对应芯片驱动realtek8188cus,从官网下载linux驱动
http://www.realtek.com/downloads/downloadsView.aspx?Langid=3&PNid=48&PFid=48&Level=5&Conn=4&DownTypeID=3&GetDown=false&Downloads=true#RTL8192CU
拷贝并解压得到以下目录 [root@localhost RTL8188C_8192C_8192D_USB_linux_v3.4.2_3727.20120404]# tree -d . |-- android_reference_codes |-- android_reference_codes_ICS_nl80211 |-- document |-- driver |   `-- rtl8188C_8192C_8192D_usb_linux_v3.4.2_3727.20120404 |       |-- core |       |   `-- efuse |       |-- hal |       |   |-- rtl8192c |       |   |   `-- usb |       |   `-- rtl8192d |       |       `-- usb |       |-- include |       |   `-- byteorder |       `-- os_dep |           `-- linux |-- hardware_wps_pbc |-- WiFi_Direct_User_Interface |-- wireless_tools |   `-- wireless_tools.30.rtl |       |-- cs |       |-- fr.ISO8859-1 |       `-- fr.UTF-8 `-- wpa_supplicant_hostapd     `-- wpa_supplicant_hostapd-0.8         |-- hostapd         |   `-- logwatch         |-- patches         |-- src         |   |-- ap         |   |-- common         |   |-- crypto         |   |-- drivers         |   |-- eap_common         |   |-- eapol_auth         |   |-- eapol_supp         |   |-- eap_peer         |   |-- eap_server         |   |-- l2_packet         |   |-- p2p         |   |-- radius         |   |-- rsn_supp         |   |-- tls         |   |-- utils         |   `-- wps         `-- wpa_supplicant             |-- dbus             |-- doc             |   `-- docbook             |-- examples             |-- symbian             |-- tests             |-- vs2005             |   |-- eapol_test             |   |-- win_if_list             |   |-- wpa_cli             |   |-- wpa_passphrase             |   |-- wpa_supplicant             |   `-- wpasvc             |-- wpa_gui             |-- wpa_gui-qt4             |   |-- icons             |   `-- lang             `-- xcode                 `-- wpa_supplicant.xcodeproj   65 directories [root@localhost RTL8188C_8192C_8192D_USB_linux_v3.4.2_3727.20120404]# cd driver/ 进入driver目录并解压rtl8188C_8192C_8192D_usb_linux_v3.4.2_3727.20120404.tar.gz文件 在改目录下找到文件Makefile并作出相应的修改,因为默认情况下是PC平台x86结构的 /home/s3c6410/s3c6410/driver/RTL8188C_8192C_8192D_USB_linux_v3.4.2_3727.20120404/driver/rtl8188C_8192C_8192D_usb_linux_v3.4.2_3727.20120404   Fig 1.2 s3c6410平台从n改为y Fig1.3根据自身linux开发环境做修改   driver目录修改完Makefile后,执行make指令。不出意外将顺利完成编译必应从2.6.34内核到2.6.36内核驱动中涉及到的结构体变动比较小!如果内核跨度大的有可能出现结构体不一致而不得不修改源码。 [root@localhost rtl8188C_8192C_8192D_usb_linux_v3.4.2_3727.20120404]# ls 8192cu.ko     8192cu.mod.o  autoconf_rtl8192c_usb_linux.h  clean  hal          include  make_drv  modules.order   os_dep 8192cu.mod.c  8192cu.o      autoconf_rtl8192d_usb_linux.h  core   ifcfg-wlan0  Kconfig  Makefile  Module.symvers  wlan0dhcp [root@localhost rtl8188C_8192C_8192D_usb_linux_v3.4.2_3727.20120404]# 其中8192cu.ko 将是我们需要的驱动模块文件   下载内核,启动开发板: U-Boot 1.1.6 (Mar  3 2010 - 20:17:49) for SMDK6410     CPU:     S3C6410@800MHz          Fclk = 800MHz, Hclk = 133MHz, Pclk = 66MHz, Serial = CLKUART (SYNC Mode) Board:   SMDK6410 DRAM:    256 MB Flash:   0 kB NAND:     Maf. ID is d3 1024 MB In:      serial Out:     serial Err:     serial Hit any key to stop autoboot:  0 SMDK6410 # SMDK6410 # SMDK6410 # ping 192.168.1.247 dm9000 i/o: 0x18000300, id: 0x90000a46 MAC: 00:22:12:34:56:90 operating at 100M full duplex mode host 192.168.1.247 is alive SMDK6410 # tftp c0008000 zImage dm9000 i/o: 0x18000300, id: 0x90000a46 MAC: 00:22:12:34:56:90 operating at 100M full duplex mode TFTP from server 192.168.1.247; our IP address is 192.168.1.20 Filename 'zImage'. Load address: 0xc0008000 Loading: #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################################################          #################################### done Bytes transferred = 5508324 (540ce4 hex) SMDK6410 #bootm c0008000 Boot with zImage   Starting kernel ...   Uncompressing Linux... done, booting the kernel. Linux version 2.6.36-Xtramus (root@localhost.localdomain) (gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72) ) #624 PREEMPT Fri Jun 15 16:56:22 CST 2012 CPU: ARMv6-compatible processor [410fb766] revision 6 (ARMv7), cr=00c5387f CPU: VIPT nonaliasing data cache, VIPT nonaliasing instruction cache Machine: XTRAMUS6410 Memory policy: ECC disabled, Data cache writeback CPU S3C6410 (id 0x36410101) S3C24XX Clocks, Copyright 2004 Simtec Electronics camera: no parent clock specified S3C64XX: PLL settings, A=800000000, M=532000000, E=24000000 S3C64XX: HCLK2=266666666, HCLK=133333333, PCLK=66666666 mout_apll: source is fout_apll (1), rate is 800000000 mout_epll: source is epll (1), rate is 24000000 mout_mpll: source is mpll (1), rate is 532000000 mmc_bus: source is mout_epll (0), rate is 24000000 mmc_bus: source is mout_epll (0), rate is 24000000 mmc_bus: source is mout_epll (0), rate is 24000000 usb-bus-host: source is clk_48m (0), rate is 48000000 uclk1: source is dout_mpll (1), rate is 66500000 spi-bus: source is mout_epll (0), rate is 24000000 spi-bus: source is mout_epll (0), rate is 24000000 audio-bus: source is mout_epll (0), rate is 24000000 audio-bus: source is mout_epll (0), rate is 24000000 audio-bus: source is mout_epll (0), rate is 24000000 irda-bus: source is mout_epll (0), rate is 24000000 camera: no parent clock specified Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 65024 Kernel command line: noinitrd root=dev/mtdblock0 console=ttySAC0,115200 init/linuxrc mem=256M PID hash table entries: 1024 (order: 0, 4096 bytes) Dentry cache hash table entries: 32768 (order: 5, 131072 bytes) Inode-cache hash table entries: 16384 (order: 4, 65536 bytes) Memory: 256MB = 256MB total Memory: 252116k/252116k available, 10028k reserved, 0K highmem Virtual kernel memory layout:     vector  : 0xffff0000 - 0xffff1000   (   4 kB)     fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)     DMA     : 0xff600000 - 0xffe00000   (   8 MB)     vmalloc : 0xd0800000 - 0xe0000000   ( 248 MB)     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)     modules : 0xbf000000 - 0xc0000000   (  16 MB)       .init : 0xc0008000 - 0xc0363000   (3436 kB)       .text : 0xc0363000 - 0xc0717000   (3792 kB)       .data : 0xc0736000 - 0xc07596a0   ( 142 kB) SLUB: Genslabs=11, HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1 Hierarchical RCU implementation.         RCU-based detection of stalled CPUs is disabled.         Verbose stalled-CPUs detection is disabled. NR_IRQS:246 VIC @f4000000: id 0x00041192, vendor 0x41 VIC @f4010000: id 0x00041192, vendor 0x41 Console: colour dummy device 80x30 console [ttySAC0] enabled Calibrating delay loop... 799.53 BogoMIPS (lpj=3997696) pid_max: default: 32768 minimum: 301 Mount-cache hash table entries: 512 CPU: Testing write buffer coherency: ok NET: Registered protocol family 16 s3c64xx_dma_init: Registering DMA channels s3c64xx_dma_init1: registering DMA 0 (d0808100) s3c64xx_dma_init1: registering DMA 1 (d0808120) s3c64xx_dma_init1: registering DMA 2 (d0808140) s3c64xx_dma_init1: registering DMA 3 (d0808160) s3c64xx_dma_init1: registering DMA 4 (d0808180) s3c64xx_dma_init1: registering DMA 5 (d08081a0) s3c64xx_dma_init1: registering DMA 6 (d08081c0) s3c64xx_dma_init1: registering DMA 7 (d08081e0) PL080: IRQ 73, at d0808000 s3c64xx_dma_init1: registering DMA 8 (d080c100) s3c64xx_dma_init1: registering DMA 9 (d080c120) s3c64xx_dma_init1: registering DMA 10 (d080c140) s3c64xx_dma_init1: registering DMA 11 (d080c160) s3c64xx_dma_init1: registering DMA 12 (d080c180) s3c64xx_dma_init1: registering DMA 13 (d080c1a0) s3c64xx_dma_init1: registering DMA 14 (d080c1c0) s3c64xx_dma_init1: registering DMA 15 (d080c1e0) PL080: IRQ 74, at d080c000 S3C6410: Initialising architecture bio: create slab at 0 SCSI subsystem initialized usbcore: registered new interface driver usbfs usbcore: registered new interface driver hub usbcore: registered new device driver usb s3c-i2c s3c2440-i2c: slave address 0x10 s3c-i2c s3c2440-i2c: bus frequency set to 65 KHz s3c-i2c s3c2440-i2c: i2c-0: S3C I2C adapter NET: Registered protocol family 2 IP route cache hash table entries: 2048 (order: 1, 8192 bytes) TCP established hash table entries: 8192 (order: 4, 65536 bytes) TCP bind hash table entries: 8192 (order: 3, 32768 bytes) TCP: Hash tables configured (established 8192 bind 8192) TCP reno registered UDP hash table entries: 256 (order: 0, 4096 bytes) UDP-Lite hash table entries: 256 (order: 0, 4096 bytes) NET: Registered protocol family 1 RPC: Registered udp transport module. RPC: Registered tcp transport module. RPC: Registered tcp NFSv4.1 backchannel transport module. NetWinder Floating Point Emulator V0.97 (extended precision) squashfs: version 4.0 (2009/01/31) Phillip Lougher ROMFS MTD (C) 2007 Red Hat, Inc. msgmni has been set to 492 io scheduler noop registered (default) s3c6400-uart.0: s3c2410_serial0 at MMIO 0x7f005000 (irq = 16) is a S3C6400/10 s3c6400-uart.1: s3c2410_serial1 at MMIO 0x7f005400 (irq = 20) is a S3C6400/10 s3c6400-uart.2: s3c2410_serial2 at MMIO 0x7f005800 (irq = 24) is a S3C6400/10 s3c6400-uart.3: s3c2410_serial3 at MMIO 0x7f005c00 (irq = 28) is a S3C6400/10 loop: module loaded S3C24XX NAND Driver, (c) 2004 Simtec Electronics S3C NAND Driver, (c) 2008 Samsung Electronics S3C NAND Driver is using hardware ECC. NAND device: Manufacturer ID: 0xec, Chip ID: 0xd3 (Samsung NAND 1GiB 3,3V 8-bit) Creating 3 MTD partitions on "NAND 1GiB 3,3V 8-bit": 0x000000000000-0x000000040000 : "Bootloader" 0x000000040000-0x000000800000 : "Kernel" 0x000000800000-0x000040000000 : "ubifs" dm9000 Ethernet Driver, V1.31 eth0: dm9000a at d0828000,d0c00004 IRQ 108 MAC: 00:22:12:34:56:90 (chip) usbcore: registered new interface driver zd1201 usbcore: registered new interface driver hwa-rc usbmon: debugfs is not available ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver s3c2410-ohci s3c2410-ohci: S3C24XX OHCI s3c2410-ohci s3c2410-ohci: new USB bus registered, assigned bus number 1 s3c2410-ohci s3c2410-ohci: irq 79, io mem 0x74300000 usb usb1: New USB device found, idVendor=1d6b, idProduct=0001 usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1 usb usb1: Product: S3C24XX OHCI usb usb1: Manufacturer: Linux 2.6.36-Xtramus ohci_hcd usb usb1: SerialNumber: s3c24xx hub 1-0:1.0: USB hub found hub 1-0:1.0: 2 ports detected usbcore: registered new interface driver hwa-hc usbcore: registered new interface driver wusb-cbaf usbcore: registered new interface driver cdc_wdm Initializing USB Mass Storage driver... usbcore: registered new interface driver usb-storage USB Mass Storage support registered. s3c-hsotg s3c-hsotg: regs d0840000, irq 90 s3c-hsotg s3c-hsotg: s3c_hsotg_corereset: reset failed, GRSTCTL=80000001 s3c-hsotg s3c-hsotg: GRXFSIZ=0x00001800, GNPTXFSIZ=0x18001800 s3c-hsotg s3c-hsotg: shared fifos s3c-hsotg s3c-hsotg: cannot create debug root s3c-hsotg s3c-hsotg: DCFG=0x00200000, DCTL=0x00000002, DIEPMSK=0000000f s3c-hsotg s3c-hsotg: GAHBCFG=0x00000000, 0x44=0x00000000 s3c-hsotg s3c-hsotg: GRXFSIZ=0x00000800, GNPTXFSIZ=0x04000800 s3c-hsotg s3c-hsotg: DPTx[1] FSize=768, StAddr=0x00000f00 s3c-hsotg s3c-hsotg: DPTx[2] FSize=768, StAddr=0x00001200 s3c-hsotg s3c-hsotg: DPTx[3] FSize=768, StAddr=0x00001500 s3c-hsotg s3c-hsotg: DPTx[4] FSize=768, StAddr=0x00001800 s3c-hsotg s3c-hsotg: DPTx[5] FSize=768, StAddr=0x00001b00 s3c-hsotg s3c-hsotg: DPTx[6] FSize=768, StAddr=0x00001e00 s3c-hsotg s3c-hsotg: DPTx[7] FSize=768, StAddr=0x00002100 s3c-hsotg s3c-hsotg: DPTx[8] FSize=768, StAddr=0x00002400 s3c-hsotg s3c-hsotg: DPTx[9] FSize=768, StAddr=0x00002700 s3c-hsotg s3c-hsotg: DPTx[10] FSize=768, StAddr=0x00002a00 s3c-hsotg s3c-hsotg: DPTx[11] FSize=768, StAddr=0x00002d00 s3c-hsotg s3c-hsotg: DPTx[12] FSize=768, StAddr=0x00003000 s3c-hsotg s3c-hsotg: DPTx[13] FSize=768, StAddr=0x00003300 s3c-hsotg s3c-hsotg: DPTx[14] FSize=768, StAddr=0x00003600 s3c-hsotg s3c-hsotg: DPTx[15] FSize=768, StAddr=0x00003900 s3c-hsotg s3c-hsotg: ep0-in: EPCTL=0x00008000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep0-out: EPCTL=0x00008000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep1-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep1-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep2-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep2-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep3-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep3-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep4-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep4-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep5-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep5-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep6-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep6-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep7-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep7-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep8-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep8-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep9-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep9-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep10-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep10-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep11-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep11-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep12-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep12-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep13-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep13-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 usb 1-1: new full speed USB device using s3c2410-ohci and address 2 s3c-hsotg s3c-hsotg: ep14-in: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: ep14-out: EPCTL=0x00000000, SIZ=0x00000000, DMA=0x00000000 s3c-hsotg s3c-hsotg: DVBUSDIS=0x000017d7, DVBUSPULSE=000005b8 mice: PS/2 mouse device common for all mice S3C24XX RTC, (c) 2004,2006 Simtec Electronics s3c-rtc s3c64xx-rtc: rtc disabled, re-enabling s3c-rtc s3c64xx-rtc: rtc core: registered s3c as rtc0 i2c /dev entries driver S3C2410 Watchdog Timer, (c) 2004 Simtec Electronics s3c2410-wdt s3c2410-wdt: watchdog inactive, reset disabled, irq enabled TCP cubic registered NET: Registered protocol family 17 lib80211: common routines for IEEE802.11 drivers Registering the dns_resolver key type VFP support v0.3: implementor 41 architecture 1 part 20 variant b rev 5 s3c-rtc s3c64xx-rtc: hctosys: invalid date/time Freeing init memory: 3436K usb 1-1: New USB device found, idVendor=0bda, idProduct=8176 usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 usb 1-1: Product: 802.11n WLAN Adapter usb 1-1: Manufacturer: Realtek usb 1-1: SerialNumber: 00e04c000001 eth0: link up, 100Mbps, full-duplex, lpa 0x41E1 ifconfig: SIOCSIFADDR: No such device *********************Auto start telnetd ************************   Please press Enter to activate this console. -/bin/sh: id: not found [root@Xtramus6410 /]# 启动的时候顺利识别到usb wifi,说明USB HOST没问题,接着将加载驱动模块不管用何种方式(NFSor ftp tftp均可)本文档采用的是tftp将模块驱动down到板子/opt/目录上 [root@Xtramus6410 /opt]# tftp -g -r 8192cu.ko 192.168.1.247 [root@Xtramus6410 /opt]# ls 8192cu.ko [root@Xtramus6410 /opt]# insmod 8192cu.ko rtw driver version=v3.4.2_3727.20120404 Build at: Jun 15 2012 15:21:30 register rtw_netdev_ops to netdev_ops CHIP TYPE: RTL8188C_8192C   usb_endpoint_descriptor(0): bLength=7 bDescriptorType=5 bEndpointAddress=81 wMaxPacketSize=40 bInterval=0 RT_usb_endpoint_is_bulk_in = 1   usb_endpoint_descriptor(1): bLength=7 bDescriptorType=5 bEndpointAddress=2 wMaxPacketSize=40 bInterval=0 RT_usb_endpoint_is_bulk_out = 2   usb_endpoint_descriptor(2): bLength=7 bDescriptorType=5 bEndpointAddress=3 wMaxPacketSize=40 bInterval=0 RT_usb_endpoint_is_bulk_out = 3   usb_endpoint_descriptor(3): bLength=7 bDescriptorType=5 bEndpointAddress=84 wMaxPacketSize=40 bInterval=1 RT_usb_endpoint_is_int_in = 4, Interval = 1 nr_endpoint=4, in_num=2, out_num=2   NON USB_SPEED_HIGH Chip Version ID: VERSION_NORMAL_TSMC_CHIP_88C. RF_Type is 3!! EEPROM type is E-FUSE ====> ReadAdapterInfo8192C Boot from EFUSE, Autoload OK !   EEPROMVID = 0x0bda EEPROMPID = 0x8176 EEPROMCustomerID : 0x00 EEPROMSubCustomerID: 0x00 RT_CustomerID: 0x00 _ReadMACAddress MAC Address from EFUSE = 08:10:76:34:80:f5 EEPROMRegulatory = 0x0 _ReadBoardType(0) BT Coexistance = disable RT_ChannelPlan: 0x02 _ReadPSSetting...bHWPwrPindetect(0)-bHWPowerdown(0) ,bSupportRemoteWakeup(0) ### PS params=>  power_mgnt(0),usbss_enable(0) ### ### AntDivCfg(0) readAdapterInfo_8192CU(): REPLACEMENT = 1 <==== ReadAdapterInfo8192C in 2170 ms rtw_macaddr_cfg MAC Address  = 08:10:76:34:80:f5 MAC Address from pnetdev->dev_addr= 08:10:76:34:80:f5 bDriverStopped:1, bSurpriseRemoved:0, bup:0, hw_init_completed:0 usbcore: registered new interface driver rtl8192cu [root@Xtramus6410 /opt]# [root@Xtramus6410 /opt]# ifconfig 仍然看不到usb wifi网卡 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) 但是可以从/proc/net目录下可以看到wlan0 [root@Xtramus6410 net]# cat wireless Inter-| sta-|   Quality        |   Discarded packets               | Missed | WE  face | tus | link level noise |  nwid  crypt   frag  retry   misc | beacon | 22  wlan0: 0000    0.    0.    0.       0      0      0      0      0        0 [root@Xtramus6410 net]# pwd /proc/net [root@Xtramus6410 net] 为能够是usb wifi能够正常访问网络,还需一些应用软件:iwconfig iwlist 线形标注 2(带强调线): 1-1 usb wifi设备节点 Fig1.4 usb wifi/dev/目录下存在的设备节点