在Linux上安装ORiNOCO无线网卡办法

发表于:2007-07-04来源:作者:点击数: 标签:
1. 软件描述 1.1描述 该软件支持下列网卡: * ORiNOCO PC Card (Silver and Gold) * WaveLAN/IEEE Turbo 11 Mb Card * WaveLAN/IEEE Turbo Card (8 Mb) * WaveLAN/IEEE PC Card (2 Mb) 该软件是由Agere System Inc.发布和支持的。 1.2软件部件 这个ORiNOCO P

  1. 软件描述
  1.1描述
  该软件支持下列网卡:
  * ORiNOCO PC Card (Silver and Gold)
  * WaveLAN/IEEE Turbo 11 Mb Card
  * WaveLAN/IEEE Turbo Card (8 Mb)
  * WaveLAN/IEEE PC Card (2 Mb)
  
  该软件是由Agere System Inc.发布和支持的。
  
  1.2软件部件
  这个ORiNOCO PC Card软件是以压缩文档分发:
  * wavelan2_cs-6.16.tar.gz
  
  为适应CD-ROM的8.3文件名格式,文件wavelan2_cs-6.16.tar.bz被命名为:
  * wlli616.tgz
  
  这个文档包含驱动程序源文件和库。你可以用这些文件为你的特定的Linux内核生成和安装ORiNOCO PC Card驱动。
  
  该驱动源文件支持Intel架构的Linux内核版本2.0.x,2.2.x和2.4.x,并包含在以下Linux发行版:
  * Red Hat version 5.2, 6.0, 6.1, 6.2, 7.0, 7.1
  * Suse   version 6.1, 6.3, 6.4, 7.0, 7.1
  
  内含的HCF库实现了用于ORiNOCO环境的Agere System 802.11 MAC控制器界面。
  
  1.3软件版本
  下列软件包含在这次发布里:
  * README.wavelan2_cs     This file本文件
  * LICENSE.wavelan2_cs     License
  * wavelan2_cs.mk       Top level Makefile最上层生成文件
  * Build            Script to build driver生成驱动的脚本
  * Install           Script to install driver安装驱动的脚本
  
  驱动源程序和HCF库:
  * wireless/wavelan2_cs.mk   Driver Makefile驱动生成文件
  * wireless/wavelan2_cs.c   Driver source (v6.16)驱动程序源文件
  * include/hcf/debug.h     Driver debug support驱动调试支持
  * include/hcf/libhcf.h    HCF interface definition HCF接口定义
  * lib/libhcf-i386.a      HCF library (v4.6b) HCF库
  
  在线驱动手册页:
  * man/wavelan2_cs.4      Driver manual page驱动手册页
  
  PCMCIA配置更新
  * etc/wavelan2_cs.conf    Add-on config file 增加的配置文件
  * etc/wavelan2_cs.mk     config update Makefile 配置更新生成文件
  * etc/wavelan2_cs.patch    config update patch file 配置更新补丁文件
  
  -----------------------------------------------------------
  2. 系统要求
  2.1操作系统
  
  该软件可以在Intel平台的运行Linux内核2.0.x,2.2.x或2.4.x的系统上编译和安装。
  
  2.2 自由磁盘空间
  
  为了编译该驱动,需要安装完整的Linux内核源程序。按照具体的内核版本,需要大约150MB磁盘空间,编译该驱动时,需要40KB左右。
  -----------------------------------------------------------
  3. 发布特性(略)
  4. 安装事项
  该驱动软件不是直接安装在Linux机器里。编译和安装驱动需要了解待安装计算机的Linux内核类型和版本。
  4.1 开始前
  
  1) 确定Linux内核类型和版本,检查是否满足要求。
  2) 阅读Linux PCMCIA-HOWTO。这篇文章可能包含在Linux发行版的CD-ROM。也可
  下载最新版:http://pcmcia-cs.sourceforge.net
  
  请阅读PCMCIA-HOWTO的名为"Prerequisites and kernel setup"的段落
  
  4.2 编译驱动
  
  1) 从Linux安装盘上获得Linux PCMCIA包,或下载: target="_blank">http://pcmcia-cs.sourceforge.net。在安装盘上,PCMCIA包在Xtras/Linux/PCMCIA。
  2) 拷贝到工作目录,解开包:
  % tar xzvf pcmcia-cs-3.1.29.tar.gz
  
  注意:在安装盘上使用文件名"pc3_1_29.tgz"而不是"pcmcia-cs-3.1.29.tar.gz".
  3) 解开ORiNOCO源文件在PCMCIA包的上层目录
  % cd pcmcia-cs-3.1.29
  % tar xzvf ../wavelan2_cs-6.16.tar.gz
  注意:在CDROM上文件名是 "../wlli616.tgz" 而不是"../wavelan2_cs-6.16.tar.gz".
  4) 编译和安装驱动
  % make config
  
  回答提出的问题,通常缺省就可以,按"Enter" 足够。但在RedHat 7.1上需要指定"/usr/src/linux-2.4"为Linux源文件目录,而不是缺省的"/usr/src/linux"。更多的配置,生成和安装的细节信息见PCMCIA-HOWTO。
  现在运行编译脚本
  
  % ./Build
  
  该脚本设定使用系统内置的PCMCIA,以及生成完整PCMCIA包或只生成驱动。在安装驱动前,先转为'root':
  % su
  ..
  # ./Install
  
  4.3 配置ORiNOCO PC 卡
  
  在通过模块参数(在/etc/pcmcia/config.opts)配置驱动前,确定/etc/pcmcia/wireless.opts文件不存在或下列参数空白。
  *,*,*,00:60:1D:*|*,*,*,00:02:2D:*)
  INFO=""
  ESSID=""
  MODE=""
  KEY=""
  ;;
  
  如果想通过无线扩展(在/etc/pcmcia/wireless.opts)配置驱动,参考章节4.5
  1)配置ORiNOCO PC 卡,参考:
  * 在线手册页(wavelan2_cs.4)
  % man wavelan2_cs
  * PCMCIA文档的网卡部分
  % more PCMCIA-HOWTO
  2) 用编辑器配置参数:
  # vi /etc/pcmcia/config.opts
  比如:
  a) 连接计算机到包含像Agere System AP-1000或AP-500的接入点的无线架构,
  需要识别无线网络的网络名。
  比如,网络名为"My Network",编辑config.opts文件包含:
  module "wavelan2_cs" opts "network_name=My\ Network"
  
  注意空格用反斜杠转义。
  b) 要连接RG-1000,需要知道RG的ID(=网络名)和密钥。可从RG的后面板的小标签找到ID。比如,你的RG-1000的ID是225clearcase/" target="_blank" >ccf,也没有改密钥,如下编辑config.opts: module "wavelan2_cs" opts "network_name=\"225ccf\" key_1=\"25ccf\"enable_encryption=Y"
  
  如果已经改变密钥,应说明key_1的值。
  c) 为在没有接入点的点对点网络接入计算机,建议使用IBSS模式。比如连接叫"My Network"点对点网络,编辑config.opts: module "wavelan2_cs" opts "create_ibss=Y network_name=My\ Network"
  
  d) 也可使用"Station Name"在无线网络里区别计算机。比如在连接无线网络时,希望命名计算机"Wave1",编辑config.opts:module "wavelan2_cs" opts "network_name=Ocean station_name=Wave1"
  
  e) 为连接Ad-Hoc无线计算机工作组,编辑config.opts:module "wavelan2_cs" opts "port_type=3"
  
  注意"Ad-Hoc Demo Mode"不是点对点网络的建议模式,这种没有互操作性的模式仅用于特殊应用(如研究,与其它设备的兼容性/以前WaveLAN/IEEE产品)。IBSS模式是创建点对点网络的推荐模式。
  3) 用编辑器修改网络选项。
  
  # vi /etc/pcmcia/network.opts
  在连接网络时,参数要确保正确,和网络管理员一起检查网络信息。更多配置信息参考PCMCIA-HOWTO。
  例如:
  *,*,*,*)
  IF_PORT=""
  BOOTP="n"
  IPADDR="10.0.0.5"
  NETMASK="255.255.255.0"
  NETWORK="10.0.0.0"
  BROADCAST="10.0.0.255"
  GATEWAY="10.0.0.1"
  DOMAIN="domain.org"
  DNS_1="dns1.domain.org"
  ;;
  
  注意RedHat 7.1不用network.opts配置驱动。使用'netcfg'的图形工具创建脚本,像ifcfg-eth0在/etc/sysconfig/network-scripts目录的。使用缺省GNOME菜单启动netcfg: Programs->System->Network Configuration
  
  4) 启动PCMCIA服务。
  # /etc/rc.d/rc.pcmcia restart
  或
  # /etc/rc.d/init.d/pcmcia restart
  
  有关各种配置选项和定义的更多细节,请参考ORiNOCO网站的PDF文档。target="_blank">www.orinocowireless.com。
  
  4.4 问题解决
  
  在ORiNOCO PC 卡插入时,卡管理器会发出不同的声音指示配置成功或失败。
  a)两声高音 – 卡被识别和配置成功。
  b)一高一低 – 卡被识别,但未配置成功。检查系统日志(dmesg)。
  c)一声低音 – 卡未被识别,执行"cardctl ident",察看适配器PnP信息。
  检验PnP信息是否与PCMCIA配置文件一致(/etc/pcmcia/config)。检查系统日志。
  
  ORiNOCO PC 卡有两个指示灯指示卡和网络状态。
  * 电源灯(靠近卡中间) – 该灯指示电源情况,在禁用卡能源管理模式时,它一直亮。启用卡能源管理模式时,它快速闪烁(每秒几次)。
  * 收发指示灯(靠近卡边缘) – 当它收发报文时,闪烁。
  * 两灯每十秒同时闪烁一次 – 卡不能与网络联系。在config.opts里检查网络名与接入点是否一致。
  * 灯指示正常,但无通信 – 如果网络使用通常模式(比如port_type = 0或未指定),网络名已指定,检查网络参数是否正确(ifconfig,route,等)。 - 如果网络使用Ad-Hoc(点对点)模式(如port_type = 3),卡需要与其他网卡通信。检查双方网络参数。
  
  参考在线手册页的附加配置,特性和支持信息。
  % man wavelan2_cs
  或
  % man 4 wavelan2_cs
  或
  % nroff -man wavelan2_cs.4 | more
  
  4.5 无线扩展(Wireless Extensions)
  
  该驱动支持”无线扩展(Wireless Extensions)”。接口允许”无线工具(Wireless Tools)”从驱动取得统计信息和使用时动态更改驱动配置。
  
  PCMCIA 包最新版包含脚本,通过4.3节描述的参数,使用无线扩展更改和配置驱动程序。参考/etc/pcmcia/wireless.opts的操作原理。按4.3节第3步配置网络参数。
  更多信息见:
  href="http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html"target="_blank">http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Linux.Wireless.Extensions.html
  target="_blank">http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/Tools.html
  
  4.6 识别软件
  
  本节解释怎样解开后鉴别软件的版本。
  Linux驱动源代码/库包含两个主要部件,驱动源代码和HCF库。
  * 快速鉴别wavelan2_cs.c源码:
  % grep wavelan2_cs.c wavelan2_cs.c
  "wavelan2_cs.c 6.16 11/23/2001 13:00:00 (Agere Systems)";
  
  * 鉴别HCF库:
  % strings libhcf-i386.a | grep Revision
  HCF$Revision:  4.6
  
  鉴别编译过的wavelan2_cs.o驱动,到驱动所在目录。安装的驱动通常在:
  /lib/modules/<kernel-version>/pcmcia
  
  * 检索编译好的驱动版本:
  % strings wavelan2_cs.o | grep wavelan2_cs.c
  wavelan2_cs.c 6.16 11/23/2001 13:00:00 (Agere Systems)
  
  * 检索编译好的驱动HCF库版本:
  % strings wavelan2_cs.o | grep Revision
  HCF$Revision:  4.6
  
  启动时,wavelan2_cs驱动报告版本在系统日志文件里(/var/log/messages)。
  -----------------------------------------------------------
  5.  技术约束
  在软件发布时,存在以下约束:
  5.1 使用ORiNOCO ISA 转接卡
  
  细节:ORiNOCO设计为单卡的解决方案,在接入点和笔记本电脑中都使用标准II型PC卡槽提供。为台式机,Agere提供了ISA到PC 卡转换卡(参考"swapbox")。
  ORiNOCO ISA转换卡可以配置为两种I/O地址:
  * 3E2 (出厂缺省设置)
  * 3E0
  影响:Linux PCMCIA包的i82365模块缺省仅检测3E0。办法:1)在手册页查找i82365模块的信息:
  man i82365
  
  2) 应用下列方法之一:
  a)通过改动ISA转接卡的跳线更改I/O地址,正确的设置参见ORiNOCO软件光盘的电子文档"ORiNOCO ISA Adapter, Getting Started Guide"
  b)另外,加载i82365模块时将参数"extra_sockets"置为1。在RedHat5.x-7.x系统,添加在文件"/etc/sysconfig/pcmcia":
  PCMCIA=yes
  PCIC=i82365
  PCIC_OPTS="extra_sockets=1"
  CORE_OPTS=
  CARDMGR_OPTS=
  
  对于其它Linux发行版,可以按照"PCMCIA-HOWTO"更改I/O地址。
  
  5.2 使用ORiNOCO PCI转接卡
  
  细节:ORiNOCO设计为单卡的解决方案,在接入点和笔记本电脑都使用标准II型PC卡槽提供。为台式机,Agere提供了PCI到PC 卡转换卡(参考"swapbox")。
  为正确的中断分配,系统应支持PCIBIOS 2.2。推荐使用PCMCIA 3.1.14以上。
  TI的CardBus控制器的PCI适配器的缺省中断配置不正确办法:1)i82365模块的TI CardBus 控制器选项说明的手册页:
  man i82365
  
  2) 加载i82365模块时,"irq_mode"参数值为0。RedHat5.x-7.x,加入文件"/etc/sysconfig/pcmcia":
  PCMCIA=yes
  PCIC=i82365
  PCIC_OPTS="irq_mode=0"
  CORE_OPTS=
  CARDMGR_OPTS=
  
  在其它Linux发行版中PCMCAI脚本的位置,参见"PCMCIA-HOWTO"中的”特殊Linux发行版”。
  
  5.3 网卡功能兼容性
  
  细节:该驱动支持卡的固件版本4.x以上。
  影响:驱动退出并发送下面的错误信息到系统日志文件里(/var/log/messages):
  eth0: ORiNOCO, HCF failure: "Primary
  functions are compatible, station
  functions are not"
  
  解决办法:有两个办法:a)在Windows里用WaveLAN卡固件更新工具。b)使用4.00的驱动
  (wavelan2_cs-4.00.tar.gz)。
  
  5.4 建立网桥或路由
  
  细节:Linux驱动使用保存在ORiNOCO PC 卡的Flash中的卡固件。在IEEE 802.11卡中不能构建MAC层透明网桥。
  这不仅是ORiNOCO的局限,也是IEEE 802.11的结构限制。在802.1D Bridge 标准(1998版)中定义:
  到802.11 LAN的网桥将连接802.11门户,连接802.11分布系统。由于分布系统是AP的一部分,需要AP构建网桥。
  主要原因是MAC层特点。透明网桥必须应答去往各个目的的帧。定义时,AP可以做;节点不行。
  解决办法:使用驱动构建路由。
  -----------------------------------------------------------
  6. 已知问题
  在软件发布时,未发现问题。
  -----------------------------------------------------------
  7.  技术支持
  7.1 查找信息
  
  在ORiNOCO网站上可以找到最近的设备驱动,网桥固件,软件更新和用户文档。
  target="_blank">http://www.orinocowireless.com  或
  target="_blank">ftp://ftp.orinocowireless.com/pub
  
  7.2 联系技术支持
  
  如果安装或使用时遇到问题,或想了解有关ORiNOCO其它产品的信息,请联系认证分销商或销售处。销售处的地址和电话列在ORiNOCO网站上。
  联系技术支持,请用问题报告表发送传真或电子邮件。问题报告表'REPORT.TXT'包含在光盘上。另外也可从ORiNOCO网站上下载。

原文转自:http://www.ltesting.net