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