1.. SPDX-License-Identifier: GPL-2.0 2 3.. include:: <isonum.txt> 4 5========================= 6Raylink wireless LAN card 7========================= 8 9September 21, 1999 10 11Copyright |copy| 1998 Corey Thomas (corey@world.std.com) 12 13This file is the documentation for the Raylink Wireless LAN card driver for 14Linux. The Raylink wireless LAN card is a PCMCIA card which provides IEEE 15802.11 compatible wireless network connectivity at 1 and 2 megabits/second. 16See http://www.raytheon.com/micro/raylink/ for more information on the Raylink 17card. This driver is in early development and does have bugs. See the known 18bugs and limitations at the end of this document for more information. 19This driver also works with WebGear's Aviator 2.4 and Aviator Pro 20wireless LAN cards. 21 22As of kernel 2.3.18, the ray_cs driver is part of the Linux kernel 23source. My web page for the development of ray_cs is at 24http://web.ralinktech.com/ralink/Home/Support/Linux.html 25and I can be emailed at corey@world.std.com 26 27The kernel driver is based on ray_cs-1.62.tgz 28 29The driver at my web page is intended to be used as an add on to 30David Hinds pcmcia package. All the command line parameters are 31available when compiled as a module. When built into the kernel, only 32the essid= string parameter is available via the kernel command line. 33This will change after the method of sorting out parameters for all 34the PCMCIA drivers is agreed upon. If you must have a built in driver 35with nondefault parameters, they can be edited in 36/usr/src/linux/drivers/net/pcmcia/ray_cs.c. Searching for module_param 37will find them all. 38 39Information on card services is available at: 40 41 http://pcmcia-cs.sourceforge.net/ 42 43 44Card services user programs are still required for PCMCIA devices. 45pcmcia-cs-3.1.1 or greater is required for the kernel version of 46the driver. 47 48Currently, ray_cs is not part of David Hinds card services package, 49so the following magic is required. 50 51At the end of the /etc/pcmcia/config.opts file, add the line: 52source ./ray_cs.opts 53This will make card services read the ray_cs.opts file 54when starting. Create the file /etc/pcmcia/ray_cs.opts containing the 55following:: 56 57 #### start of /etc/pcmcia/ray_cs.opts ################### 58 # Configuration options for Raylink Wireless LAN PCMCIA card 59 device "ray_cs" 60 class "network" module "misc/ray_cs" 61 62 card "RayLink PC Card WLAN Adapter" 63 manfid 0x01a6, 0x0000 64 bind "ray_cs" 65 66 module "misc/ray_cs" opts "" 67 #### end of /etc/pcmcia/ray_cs.opts ##################### 68 69 70To join an existing network with 71different parameters, contact the network administrator for the 72configuration information, and edit /etc/pcmcia/ray_cs.opts. 73Add the parameters below between the empty quotes. 74 75Parameters for ray_cs driver which may be specified in ray_cs.opts: 76 77=============== =============== ============================================= 78bc integer 0 = normal mode (802.11 timing), 79 1 = slow down inter frame timing to allow 80 operation with older breezecom access 81 points. 82 83beacon_period integer beacon period in Kilo-microseconds, 84 85 legal values = must be integer multiple 86 of hop dwell 87 88 default = 256 89 90country integer 1 = USA (default), 91 2 = Europe, 92 3 = Japan, 93 4 = Korea, 94 5 = Spain, 95 6 = France, 96 7 = Israel, 97 8 = Australia 98 99essid string ESS ID - network name to join 100 101 string with maximum length of 32 chars 102 default value = "ADHOC_ESSID" 103 104hop_dwell integer hop dwell time in Kilo-microseconds 105 106 legal values = 16,32,64,128(default),256 107 108irq_mask integer linux standard 16 bit value 1bit/IRQ 109 110 lsb is IRQ 0, bit 1 is IRQ 1 etc. 111 Used to restrict choice of IRQ's to use. 112 Recommended method for controlling 113 interrupts is in /etc/pcmcia/config.opts 114 115net_type integer 0 (default) = adhoc network, 116 1 = infrastructure 117 118phy_addr string string containing new MAC address in 119 hex, must start with x eg 120 x00008f123456 121 122psm integer 0 = continuously active, 123 1 = power save mode (not useful yet) 124 125pc_debug integer (0-5) larger values for more verbose 126 logging. Replaces ray_debug. 127 128ray_debug integer Replaced with pc_debug 129 130ray_mem_speed integer defaults to 500 131 132sniffer integer 0 = not sniffer (default), 133 1 = sniffer which can be used to record all 134 network traffic using tcpdump or similar, 135 but no normal network use is allowed. 136 137translate integer 0 = no translation (encapsulate frames), 138 1 = translation (RFC1042/802.1) 139=============== =============== ============================================= 140 141More on sniffer mode: 142 143tcpdump does not understand 802.11 headers, so it can't 144interpret the contents, but it can record to a file. This is only 145useful for debugging 802.11 lowlevel protocols that are not visible to 146linux. If you want to watch ftp xfers, or do similar things, you 147don't need to use sniffer mode. Also, some packet types are never 148sent up by the card, so you will never see them (ack, rts, cts, probe 149etc.) There is a simple program (showcap) included in the ray_cs 150package which parses the 802.11 headers. 151 152Known Problems and missing features 153 154 Does not work with non x86 155 156 Does not work with SMP 157 158 Support for defragmenting frames is not yet debugged, and in 159 fact is known to not work. I have never encountered a net set 160 up to fragment, but still, it should be fixed. 161 162 The ioctl support is incomplete. The hardware address cannot be set 163 using ifconfig yet. If a different hardware address is needed, it may 164 be set using the phy_addr parameter in ray_cs.opts. This requires 165 a card insertion to take effect. 166