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