日期:2014-05-17  浏览次数:20966 次

EDUP的EP-N8508GS在raspi上使用
EDUP的EP-N8508GS这个usb无线网卡,直接插在raspi上,会造成raspi的重启,原因:power不够,造成电压不稳,进而导致重启。
因此为raspi接个外接电源的usb hub(突然发现个好玩的现象,raspi不需要用microUSB供电了,但群里说,可能会造成烧保险丝的问题,还是插上mircoUSB吧)。


从EDUP的官网上下载了 EP-N8508GS驱动
无线网卡驱动说明里指出适用于内核版本:2.6.18~2.6.38和3.0.8,我当前用的树莓派的系统用的内核版本为3.1.9+(uname -a或more /proc/version都可以查看到内核的版本)。
之前想编译该usb无线网卡的驱动,但make时,提示错误,按照错误说明,编译该驱动需要用到文件autoconf.h及auto.conf。
于是我下载了raspberrypi-linux-87d5bc1.zip,然后再编译无线网卡的驱动,但发现还是缺少上面的两个文件,网上查到资料,要先编译一下内核,才会产生那两个文件,所以编译了内核,然后编译好无线网卡的驱动,但是发现,insmod 8192cu.ko,会出现“ Invalid module format ”错误,insmod不成功,用modinfo 查看8192.ko,有一行vermagic: 3.2.27 preempt mod_unload modversions ARMv6,隐约感觉到3.2.27是内核的版本,可我现在用的是3.1.9+,而无线网卡说明支持的有3.0.8,所以三个都不匹配,故,怀疑是内核版本的问题,且网上查到《module编译和insmod invalid format问题解决方法》,证实了是内核版本的问题。
但如何解决:
方案一、找3.1.9+的内核源文件,可是实在不知道"+"是个什么东西,打算试一下3.1.9版本的内核,用它的文件辅助无线网卡驱动的编译。
方案二、将raspbian升级到3.2.27内核,不用再编译无线网卡的驱动了。


以下是国外某人的操作步骤,网址为http://www.strapp.co.uk/downloads/BuildModule.txt,但要翻.墙。
Install git:

    sudo apt-get install git

Download kernel and prepare source tree for building external modules:

    git clone --depth 1 https://github.com/raspberrypi/linux.git
    cd linux
    make mrproper      // 看上去,功能是 clean 一些scripts
    gzip -dc /proc/config.gz > .config
    make modules_prepare    // 生成编译外部驱动模块所必需的一些文件
    scripts/mod/modpost -o Module.symvers   // 不懂


Download Realtek driver source and build the module:

    wget http://www.strapp.co.uk/downloads/RTL819xCU_USB_linux_v3.4.3_4369.20120622.zip
    unzip RTL819xCU_USB_linux_v3.4.3_4369.20120622.zip
    cd RTL8188C_8192C_USB_linux_v3.4.3_4369.20120622/driver/rtl8188C_8192C_usb_linux_v3.4.3_4369.20120622        // 与我下的驱动是同一个,包括版本也相同
    sudo make ARCH=arm KSRC=~/linux KVER=3.1.9+ MODDESTDIR=/lib/modules/3.1.9+/kernel/drivers/net/wireless/
    sudo make install


可以看到,其思路与方案一类似,但一直找不到3.1.9+的内核。
下载了此老外编译好的内核,查看8192cu.ko的信息(用modinfo,可以看到3.1.9+),完全符合我们现在用的系统的内核,sudo insmod 8192cu.ko,插入成功。

输入iwconfig后,显示出了wlan1
终于找到无线网卡了,但还没配置无线网卡,能不能上网还不知道。



more:
1、An example for adding wireless driver
2、Edup EP-8508 driver install