bmw7788 发表于 2008-8-26 19:28

[讨论]TP-Link WN322G+ USB网卡如何在BT3下使用?

WN322G+ 使用ZD1211b芯片,BT3内核已包含该芯片的驱动,可还是有不少人反映用lsusb能够看到网卡的信息,但Ifconfig -a 却没有该网卡,既然有驱动为什么用不了?

在网上搜寻多时,终于发现一点信息,但无条件测试,欢迎有条件的XD能测试一下给个答复。

一、原因:
       WN322G+无法在BT3下使用,应该是因为BT3中所带的ZD1211b驱动中没有内置WN322G+的USB ID所致,造成无法识别。

二、解决办法:
      重新下载ZD1211b芯片的Linux驱动源码,修改并将WN322G+的ID加入到源码中,然后编译并加载。

三、所需条件:
      完整安装的Linux,内核为2.6.21.5(这是我的BT3光盘的内核版本)。作为ZD1211b驱动的编译环境,应该包含有Linux的内核源码,而且核心版本与BT3的完全一样,我在光盘版BT3下编译时无法找到所需文件;

四、具体步骤(8月27日更正:新的驱动里已经包含WN322G+的ID,所以跳过c、d步骤即可)
      a)从网上下载ZD1211b的Linux驱动源码(http://www.reactivated.net/software/zd1211-vendor/releases/ZD1211LnxDrv_2_22_0_0.tar.gz),并在2.6内核环境下用tar解开;
      b)进入解开的源码目录,修改makefile文件:
      找到下面这句,
         # set to 1 for zd1211b
         ZD1211REV_B=0
      修改为:
      # set to 1 for zd1211b
      ZD1211REV_B=1
      c)再修改src/下面的zdusb.c文件,在相应位置添加WN322G+的ID:
         加入如下行:
         { USB_DEVICE(0x0ACE, 0x1215) }
      
         注:我的WN322G+的USB Vendor为0ACE,USB Product为1215,这是在BT3下看到的,(Linksys WUSBF54G 为:13b1、0024)
      
      d)修改src/下面的zdusb.h文件,在相应位置添加下面两行:
      #define VENDOR_TPLink 0x0ACE
      #define PRODUCT_TPLink 0x1215
      
      e)make
      
      f)将编译后生成的zd1211b.ko(好像是这个)复制出来,加入到BT3的系统中(用U盘?或者加入到BT3d的ISO中),启动BT3加载编译好的驱动并测试(也许会需要网上提到的firware加载,)。      
      
此法不保证能够一定成功,但成功的机会还是很大,可能有什么地方没注意到,大家一起讨论吧。当然,如果您成功了,不妨将编译好的驱动发上来共享^_^


8月27日更正:
作为ZD1211b驱动的编译环境,应该包含有Linux的内核源码,而且核心版本与BT3的完全一样,我的BT3内核版本为2.6.21.5。

http://www.reactivated.net/software/zd1211-vendor/releases/ZD1211LnxDrv_2_22_0_0.tar.gz 的驱动较新(我开始下载的不是这个),发现里面已经有了WN322G+ ID,这样就省了很多事,不用修改文件,直接make ZD1211REV_B=1 或单修改makefile文件,在开头部分加入ZD1211REV_B=1就可以了。

[ 本帖最后由 bmw7788 于 2008-8-27 10:04 编辑 ]

zero 发表于 2008-8-26 20:41

希望能看到你精彩文章,谢谢支持本站。

wwelcome 发表于 2008-8-26 21:34

曾经测试:将ID加到.C中,然后编译并加载驱动成功。

lsusb能够看到网卡的信息,
Ifconfig -a能看到网卡。

但:但Ifconfig -a * UP 出错。

caijian0714 发表于 2008-8-26 21:46

不顶都不行啊!

gzkcpcb 发表于 2008-8-26 22:01

接着顶。:victory: :victory: :victory:
借道:
         有关于TP-Link WN620G+ USB网卡在BT3系统下使用的资料吗?
:victory: :victory: :victory: :victory: :victory: :victory: :victory:

Cyrix686 发表于 2008-8-26 23:28

我的WN321G可以直接用~:lol

bmw7788 发表于 2008-8-27 08:45

To 3楼,一共要修改3个文件,如果原来只修改了zdusb.c,请再将其它2个文件也修改编译试试,如果成功,请将编译好的驱动发上来。

另:理论上,凡是和BT3支持的芯片组一样的网卡,都可以用这种方法,只需下载相应的网卡驱动修改编译就行了,只是还没证实是否切实可行。我也只是参考了国外网站的方法,来不及装个完整的Linux验证一下,就急着发上来了。

wwelcome 发表于 2008-8-27 09:01

晚上我试试。之前做过很多次尝试,都没脾气了。

bmw7788 发表于 2008-8-27 10:02

To wwelcome:
忘了问,你用来编译的内核版本与BT3相同吗?要完全一样才可以

wwelcome 发表于 2008-8-27 21:32

刚才折腾了半天,都配置好了,就差修改B中的步骤了,因为添加ID的步骤早已经测试过,可突然发现步骤B中根本不存在“ZD1211REV_B=0”。我晕!

另外:(使用的内核一样,否则加载出错)你提到的那驱动早就有了,里面根本没有322G+的ID。

曾经编译成功过,并成功加载了驱动,但UP的时候出现了错误。
口说无凭,上图。

[ 本帖最后由 wwelcome 于 2008-8-27 21:34 编辑 ]

dengkailiang 发表于 2008-8-30 11:04

这是个难点,我还没搞定,希望有编程好的驱动

princerib 发表于 2008-8-31 19:52

支持!
希望很快能看到好用的驱动出来。。。。
页: [1] 2
查看完整版本: [讨论]TP-Link WN322G+ USB网卡如何在BT3下使用?