QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 1114|回复: 5

D-link无线网卡厂家没有提供Linux下的驱动

[复制链接]
发表于 2005-1-15 11:03:06 | 显示全部楼层 |阅读模式
D-link DWL-122无线网卡厂家没有提供Linux下的驱动,只有Windows下的驱动,我应该怎么办使得此无线网卡能在Linux下用啊?自己写驱动有没有设备的具体资料。谢谢大家了。 :D
发表于 2005-1-15 11:35:11 | 显示全部楼层
先用lsusb看你得卡得芯片,然后到
http://sourceforge.net/projects/ndiswrapper/
看看你得卡是否被支持,如果支持,用ndiswrapper+winxp网卡驱动就可以用了。
不过这个东东好像对pci和pcmcia的卡支持的比较好,usb的不知道怎么样。
回复

使用道具 举报

 楼主| 发表于 2005-1-15 12:18:04 | 显示全部楼层
谢谢,我的卡支持。但内核版本不够,我是2.4.XX。
回复

使用道具 举报

发表于 2005-1-15 12:23:01 | 显示全部楼层
You can configure a new kernel.
回复

使用道具 举报

发表于 2005-1-15 12:24:28 | 显示全部楼层
升级到2.6
回复

使用道具 举报

发表于 2005-1-16 17:05:09 | 显示全部楼层
碰巧俺用的就是这块usb的无线网卡,look this,当时俺参考的就是这个。
D-Link DWL-122 Wireless USB Adapter linux HOWTO      
2003.12.22 @ 8:48:47 PM
I've got a D-Link DWL122 Wireless USB Adapter this weekend for $29.99. Not only the price was good, but it also stated "Mac OSX supported", which sort of encouraged me to go ahead and give it a try.

I asked Mr. Goggle, who told me right away it uses a Prism2 chipset, and that it is supported by linux-wlan-ng version 0.2.1-pre13 or later, thanks to a patch written by Andrew Beresford.

(Gentoo users use "emerge". More info at the end of this document)

Installation was long but smooth. It requires kernel sources and a locally compiled kernel, as any precompiled kernel with sources will cause dependency errors when executing depmod:
/sbin/depmod -a
depmod: *** Unresolved symbols in /lib/modules/2.4.20/net/p80211.o
depmod: *** Unresolved symbols in /lib/modules/2.4.20/usb/prism2_usb.o


I realized it would be rather hard for an inexperienced user to get this device to work. That is the reason why I wanted to write something about it. So here is a quick HOWTO:

- First become root and cd into your src directory:
su -
cd /usr/src


- Get the latest kernel source from www.kernel.org. I used 2.4.23 when I wrote this article, but it also works on 2.6
wget ftp://ftp.kernel.org/pub/linux/kernel/v2.4/linux-2.4.23.tar.bz2




- Uncompress your kernel and make a symlink so that it can be accessible as /usr/src/linux
tar -jxf linux-2.4.23.tar.bz2
rm linux
ln -s linux-2.4.23 linux


- cd into your new kernel and compile it:
make menuconfig (spend a few minutes here configuring your kernel properly, one of the pleasures of opensource)
make dep
make bzImage
make modules
make modules_install
make install
cp arch/i386/boot/bzImage /boot/vmlinuz-2.4.23
cp System.map /boot/System.map-2.4.23


Note for kernel 2.6 users: Install the module-init-tools package, enable on your kernel Device Drivers -> Networking support -> Wireless LAN (non-hamradio) ->
  • Wireless LAN drivers (non-hamradio) & Wireless Extensions.
    And compile your kernel with "make && make modules && make modules_install" instead

    - Create the right entries in your bootloader. This instructions will depend on the bootloader and distro you are using. In my case it is GRUB running on Debian, therefore the configuration file is located at /boot/grub/menu.lst. It would be /boot/grub/grub.conf in RedHat and /etc/lilo.conf for LILO users. All you have to do in all cases is create a new section as follows (for lilo users, it is slightly different):
    title Linux kernel 2.4.23
    root (hd0,0)
    kernel /boot/vmlinuz-2.4.23 root=/dev/hda2

    (make sure you set the right root parameters, check your existing menu options for clues. Lilo users must now execute lilo)

    - Reboot your machine choosing the new kernel and log in as root again.

    - Get the latest linux-wlan-ng drivers (0.2.1-pre16 in this case), uncompress and configure as follows:
    wget ftp://ftp.linux-wlan.org/pub/linux-wlan-ng/linux-wlan-ng-0.2.1-pre16.tar.gz
    tar -zxf linux-wlan-ng-0.2.1-pre16.tar.gz
    cd linux-wlan-ng-0.2.1-pre16
    ./Configure
    -------------- Linux WLAN Configuration Script -------------
    The default responses are correct for most users.
    Build Prism2.x PCMCIA Card Services (_cs) driver? (y/n) [y]: n
    Build Prism2 PLX9052 based PCI (_plx) adapter driver? (y/n) [n]: n
    Build Prism2.5 native PCI (_pci) driver? (y/n) [n]: n
    Build Prism2.5 USB (_usb) driver? (y/n) [n]: y
    Linux source directory [/usr/src/linux]:
    The kernel source tree is version 2.4.23.
    Alternate target install root directory on host []:
    Module install directory [/lib/modules/2.4.23]:
    It looks like you have a System V init file setup.
    Prefix for build host compiler? (rarely needed) []:
    Build for debugging (see doc/config.debug) (y/n) [n]:
    Configuration successful.


    - Compile and install with:
    make all
    make install


    - That's all. Now you can tail /var/log/messages -f and plug in your Wifi usb adapter. You will see something like this:
    Dec 22 19:40:01 laptop kernel: hub.c: new USB device 00:07.2-2, assigned address 2
    Dec 22 19:40:01 laptop kernel: usb.c: USB device 2 (vend/prod 0x2001/0x3700) is not claimed by any active driver.
    Dec 22 19:40:04 laptop /etc/hotplug/usb.agent: Setup prism2_usb for USB product 2001/3700/132
    Dec 22 19:40:05 laptop /etc/hotplug/wlan.agent: WLAN startup on null (null)
    Dec 22 19:40:05 laptop kernel: prism2_init: prism2_usb.o: 0.2.1-pre16 Loaded
    Dec 22 19:40:05 laptop kernel: prism2_init: dev_info is: prism2_usb
    Dec 22 19:40:05 laptop kernel: usb.c: registered new driver prism2_usb
    Dec 22 19:40:05 laptop /etc/hotplug/wlan.agent: WLAN p80211 starting!
    Dec 22 19:40:05 laptop /etc/hotplug/wlan.agent: WLAN register on wlan0 (prism2_usb)
    Dec 22 19:40:05 laptop /etc/hotplug/wlan.agent: WLAN wlan0 registered.
    Dec 22 19:40:05 laptop /etc/hotplug/net.agent: invoke ifup wlan0
    Dec 22 19:40:05 laptop wland[1071]: wland daemon init successful
    Dec 22 19:40:05 laptop wland[1071]: netlink socket opened and bound successfully
    Dec 22 19:40:05 laptop /etc/hotplug/wlan.agent: /sbin/prism2dl not found, aborting firmware download.
    Dec 22 19:40:06 laptop kernel: ident: nic h/w: id=0x8026 1.0.0
    Dec 22 19:40:06 laptop kernel: ident: pri f/w: id=0x15 1.1.3
    Dec 22 19:40:06 laptop kernel: ident: sta f/w: id=0x1f 1.7.1
    Dec 22 19:40:06 laptop kernel: MFI:SUP:role=0x00:id=0x01:var=0x01:b/t=1/1
    Dec 22 19:40:06 laptop kernel: CFI:SUP:role=0x00:id=0x02:var=0x02:b/t=1/1
    Dec 22 19:40:06 laptop kernel: PRI:SUP:role=0x00:id=0x03:var=0x01:b/t=1/4
    Dec 22 19:40:06 laptop kernel: STA:SUP:role=0x00:id=0x04:var=0x01:b/t=1/12
    Dec 22 19:40:06 laptop kernel: PRI-CFI:ACT:role=0x01:id=0x02:var=0x02:b/t=1/1
    Dec 22 19:40:06 laptop kernel: STA-CFI:ACT:role=0x01:id=0x02:var=0x02:b/t=1/1
    Dec 22 19:40:06 laptop kernel: STA-MFI:ACT:role=0x01:id=0x01:var=0x01:b/t=1/1
    Dec 22 19:40:06 laptop kernel: Prism2 card SN: 000000000000
    Dec 22 19:40:11 laptop /etc/hotplug/wlan.agent: WLAN wlan0 brought up successfully.
    Dec 22 19:40:11 laptop /etc/hotplug/wlan.agent: WLAN bringing up layer 3+ with /sbin/ifup
    Dec 22 19:40:11 laptop kernel: linkstatus=CONNECTED


    - Now you need to configure your network accordingly with your access point. Edit /etc/wlan/wlan.conf and set your SSID as follows:
    SSID_wlan0="mywlan"
    ENABLE_wlan0=y


    - This means you will need a /etc/wlan/wlancfg-mywlan file. You can use the included wlancfg-DEFAULT for reference. You might want to try first with the default configuration, disabling WEP on your access point, but do not forget to enable it once you know it works:
    cp /etc/wlan/wlancfg-DEFAULT /etc/wlan/wlancfg-mywlan


    Note: When enabling WEP make sure there are NO spaces/tabs after "=" in the line dot11WEPDefaultKey0=00:01.... otherwise it WILL NOT WORK !!!. I have submitted this info, and hopefully will be corrected in future versions.


    - Configure now your IP:
    ifconfig wlan0 192.168.0.2 netmask 255.255.255.0
    route add -net default gw 192.168.0.1


    Note: This IP configuration will work with most default configurations. Make sure you set the right local (wlan0) and gateway (gw) ip addresses. You may even have DHCP enabled on your access point, in that case you can obtain your ip automatically with dhclient

    Note2: I have just installed Gentoo on my laptop and emerge takes care of evrything. All you have to do is:
    USE="usb -pci" emerge linux-wlan-ng

    (make sure first that emerge -s linux-wlan-ng shows version 0.2.1-pre13 or later)

    Note3: Make sure CONFIG_PACKET and CONFIG_FILTER are enabled in your kernel if you expect DHCP to work.

    That should get you going. Enjo
  • 回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    GMT+8, 2024-11-9 02:55 , Processed in 0.038677 second(s), 15 queries .

    © 2021 Powered by Discuz! X3.5.

    快速回复 返回顶部 返回列表