0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 .. include:: <isonum.txt>
0004
0005 =========================
0006 Raylink wireless LAN card
0007 =========================
0008
0009 September 21, 1999
0010
0011 Copyright |copy| 1998 Corey Thomas (corey@world.std.com)
0012
0013 This file is the documentation for the Raylink Wireless LAN card driver for
0014 Linux. The Raylink wireless LAN card is a PCMCIA card which provides IEEE
0015 802.11 compatible wireless network connectivity at 1 and 2 megabits/second.
0016 See http://www.raytheon.com/micro/raylink/ for more information on the Raylink
0017 card. This driver is in early development and does have bugs. See the known
0018 bugs and limitations at the end of this document for more information.
0019 This driver also works with WebGear's Aviator 2.4 and Aviator Pro
0020 wireless LAN cards.
0021
0022 As of kernel 2.3.18, the ray_cs driver is part of the Linux kernel
0023 source. My web page for the development of ray_cs is at
0024 http://web.ralinktech.com/ralink/Home/Support/Linux.html
0025 and I can be emailed at corey@world.std.com
0026
0027 The kernel driver is based on ray_cs-1.62.tgz
0028
0029 The driver at my web page is intended to be used as an add on to
0030 David Hinds pcmcia package. All the command line parameters are
0031 available when compiled as a module. When built into the kernel, only
0032 the essid= string parameter is available via the kernel command line.
0033 This will change after the method of sorting out parameters for all
0034 the PCMCIA drivers is agreed upon. If you must have a built in driver
0035 with nondefault parameters, they can be edited in
0036 /usr/src/linux/drivers/net/pcmcia/ray_cs.c. Searching for module_param
0037 will find them all.
0038
0039 Information on card services is available at:
0040
0041 http://pcmcia-cs.sourceforge.net/
0042
0043
0044 Card services user programs are still required for PCMCIA devices.
0045 pcmcia-cs-3.1.1 or greater is required for the kernel version of
0046 the driver.
0047
0048 Currently, ray_cs is not part of David Hinds card services package,
0049 so the following magic is required.
0050
0051 At the end of the /etc/pcmcia/config.opts file, add the line:
0052 source ./ray_cs.opts
0053 This will make card services read the ray_cs.opts file
0054 when starting. Create the file /etc/pcmcia/ray_cs.opts containing the
0055 following::
0056
0057 #### start of /etc/pcmcia/ray_cs.opts ###################
0058 # Configuration options for Raylink Wireless LAN PCMCIA card
0059 device "ray_cs"
0060 class "network" module "misc/ray_cs"
0061
0062 card "RayLink PC Card WLAN Adapter"
0063 manfid 0x01a6, 0x0000
0064 bind "ray_cs"
0065
0066 module "misc/ray_cs" opts ""
0067 #### end of /etc/pcmcia/ray_cs.opts #####################
0068
0069
0070 To join an existing network with
0071 different parameters, contact the network administrator for the
0072 configuration information, and edit /etc/pcmcia/ray_cs.opts.
0073 Add the parameters below between the empty quotes.
0074
0075 Parameters for ray_cs driver which may be specified in ray_cs.opts:
0076
0077 =============== =============== =============================================
0078 bc integer 0 = normal mode (802.11 timing),
0079 1 = slow down inter frame timing to allow
0080 operation with older breezecom access
0081 points.
0082
0083 beacon_period integer beacon period in Kilo-microseconds,
0084
0085 legal values = must be integer multiple
0086 of hop dwell
0087
0088 default = 256
0089
0090 country integer 1 = USA (default),
0091 2 = Europe,
0092 3 = Japan,
0093 4 = Korea,
0094 5 = Spain,
0095 6 = France,
0096 7 = Israel,
0097 8 = Australia
0098
0099 essid string ESS ID - network name to join
0100
0101 string with maximum length of 32 chars
0102 default value = "ADHOC_ESSID"
0103
0104 hop_dwell integer hop dwell time in Kilo-microseconds
0105
0106 legal values = 16,32,64,128(default),256
0107
0108 irq_mask integer linux standard 16 bit value 1bit/IRQ
0109
0110 lsb is IRQ 0, bit 1 is IRQ 1 etc.
0111 Used to restrict choice of IRQ's to use.
0112 Recommended method for controlling
0113 interrupts is in /etc/pcmcia/config.opts
0114
0115 net_type integer 0 (default) = adhoc network,
0116 1 = infrastructure
0117
0118 phy_addr string string containing new MAC address in
0119 hex, must start with x eg
0120 x00008f123456
0121
0122 psm integer 0 = continuously active,
0123 1 = power save mode (not useful yet)
0124
0125 pc_debug integer (0-5) larger values for more verbose
0126 logging. Replaces ray_debug.
0127
0128 ray_debug integer Replaced with pc_debug
0129
0130 ray_mem_speed integer defaults to 500
0131
0132 sniffer integer 0 = not sniffer (default),
0133 1 = sniffer which can be used to record all
0134 network traffic using tcpdump or similar,
0135 but no normal network use is allowed.
0136
0137 translate integer 0 = no translation (encapsulate frames),
0138 1 = translation (RFC1042/802.1)
0139 =============== =============== =============================================
0140
0141 More on sniffer mode:
0142
0143 tcpdump does not understand 802.11 headers, so it can't
0144 interpret the contents, but it can record to a file. This is only
0145 useful for debugging 802.11 lowlevel protocols that are not visible to
0146 linux. If you want to watch ftp xfers, or do similar things, you
0147 don't need to use sniffer mode. Also, some packet types are never
0148 sent up by the card, so you will never see them (ack, rts, cts, probe
0149 etc.) There is a simple program (showcap) included in the ray_cs
0150 package which parses the 802.11 headers.
0151
0152 Known Problems and missing features
0153
0154 Does not work with non x86
0155
0156 Does not work with SMP
0157
0158 Support for defragmenting frames is not yet debugged, and in
0159 fact is known to not work. I have never encountered a net set
0160 up to fragment, but still, it should be fixed.
0161
0162 The ioctl support is incomplete. The hardware address cannot be set
0163 using ifconfig yet. If a different hardware address is needed, it may
0164 be set using the phy_addr parameter in ray_cs.opts. This requires
0165 a card insertion to take effect.