Commit | Line | Data |
---|---|---|
876c9d3a | 1 | ================================================================================ |
49125454 | 2 | README for Libertas |
876c9d3a | 3 | |
0e8a5bd9 | 4 | (c) Copyright © 2003-2006, Marvell International Ltd. |
876c9d3a MT |
5 | All Rights Reserved |
6 | ||
7 | This software file (the "File") is distributed by Marvell International | |
8 | Ltd. under the terms of the GNU General Public License Version 2, June 1991 | |
9 | (the "License"). You may use, redistribute and/or modify this File in | |
10 | accordance with the terms and conditions of the License, a copy of which | |
36769159 JK |
11 | is available along with the File in the license.txt file or on the worldwide |
12 | web at http://www.gnu.org/licenses/gpl.txt. | |
876c9d3a MT |
13 | |
14 | THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE | |
15 | IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE | |
16 | ARE EXPRESSLY DISCLAIMED. The License provides additional details about | |
17 | this warranty disclaimer. | |
18 | ================================================================================ | |
19 | ||
20 | ===================== | |
21 | DRIVER LOADING | |
22 | ===================== | |
23 | ||
24 | o. Copy the firmware image (e.g. usb8388.bin) to /lib/firmware/ | |
25 | ||
26 | o. Load driver by using the following command: | |
27 | ||
28 | insmod usb8388.ko [fw_name=usb8388.bin] | |
29 | ||
876c9d3a MT |
30 | ========================= |
31 | ETHTOOL | |
32 | ========================= | |
33 | ||
34 | ||
35 | Use the -i option to retrieve version information from the driver. | |
36 | ||
37 | # ethtool -i eth0 | |
38 | driver: libertas | |
39 | version: COMM-USB8388-318.p4 | |
40 | firmware-version: 5.110.7 | |
41 | bus-info: | |
42 | ||
43 | Use the -e option to read the EEPROM contents of the card. | |
44 | ||
45 | Usage: | |
46 | ethtool -e ethX [raw on|off] [offset N] [length N] | |
47 | ||
48 | -e retrieves and prints an EEPROM dump for the specified ethernet | |
49 | device. When raw is enabled, then it dumps the raw EEPROM data | |
50 | to stdout. The length and offset parameters allow dumping cer- | |
51 | tain portions of the EEPROM. Default is to dump the entire EEP- | |
52 | ROM. | |
53 | ||
54 | # ethtool -e eth0 offset 0 length 16 | |
55 | Offset Values | |
56 | ------ ------ | |
57 | 0x0000 38 33 30 58 00 00 34 f4 00 00 10 00 00 c4 17 00 | |
58 | ||
59 | ======================== | |
60 | DEBUGFS COMMANDS | |
61 | ======================== | |
62 | ||
63 | those commands are used via debugfs interface | |
64 | ||
65 | =========== | |
66 | rdmac | |
67 | rdbbp | |
68 | rdrf | |
69 | These commands are used to read the MAC, BBP and RF registers from the | |
70 | card. These commands take one parameter that specifies the offset | |
71 | location that is to be read. This parameter must be specified in | |
25985edc | 72 | hexadecimal (its possible to precede preceding the number with a "0x"). |
876c9d3a | 73 | |
156f5a78 | 74 | Path: /sys/kernel/debug/libertas_wireless/ethX/registers/ |
876c9d3a MT |
75 | |
76 | Usage: | |
77 | echo "0xa123" > rdmac ; cat rdmac | |
78 | echo "0xa123" > rdbbp ; cat rdbbp | |
79 | echo "0xa123" > rdrf ; cat rdrf | |
80 | wrmac | |
81 | wrbbp | |
82 | wrrf | |
83 | These commands are used to write the MAC, BBP and RF registers in the | |
84 | card. These commands take two parameters that specify the offset | |
85 | location and the value that is to be written. This parameters must | |
25985edc | 86 | be specified in hexadecimal (its possible to precede the number |
876c9d3a MT |
87 | with a "0x"). |
88 | ||
89 | Usage: | |
90 | echo "0xa123 0xaa" > wrmac | |
91 | echo "0xa123 0xaa" > wrbbp | |
92 | echo "0xa123 0xaa" > wrrf | |
93 | ||
94 | sleepparams | |
95 | This command is used to set the sleepclock configurations | |
96 | ||
156f5a78 | 97 | Path: /sys/kernel/debug/libertas_wireless/ethX/ |
876c9d3a MT |
98 | |
99 | Usage: | |
100 | cat sleepparams: reads the current sleepclock configuration | |
101 | ||
102 | echo "p1 p2 p3 p4 p5 p6" > sleepparams: writes the sleepclock configuration. | |
103 | ||
104 | where: | |
105 | p1 is Sleep clock error in ppm (0-65535) | |
106 | p2 is Wakeup offset in usec (0-65535) | |
107 | p3 is Clock stabilization time in usec (0-65535) | |
108 | p4 is Control periodic calibration (0-2) | |
109 | p5 is Control the use of external sleep clock (0-2) | |
110 | p6 is reserved for debug (0-65535) | |
111 | ||
112 | subscribed_events | |
113 | ||
114 | The subscribed_events directory contains the interface for the | |
115 | subscribed events API. | |
116 | ||
156f5a78 | 117 | Path: /sys/kernel/debug/libertas_wireless/ethX/subscribed_events/ |
876c9d3a MT |
118 | |
119 | Each event is represented by a filename. Each filename consists of the | |
120 | following three fields: | |
121 | Value Frequency Subscribed | |
122 | ||
123 | To read the current values for a given event, do: | |
124 | cat event | |
125 | To set the current values, do: | |
126 | echo "60 2 1" > event | |
127 | ||
128 | Frequency field specifies the reporting frequency for this event. | |
129 | If it is set to 0, then the event is reported only once, and then | |
130 | automatically unsubscribed. If it is set to 1, then the event is | |
131 | reported every time it occurs. If it is set to N, then the event is | |
132 | reported every Nth time it occurs. | |
133 | ||
134 | beacon_missed | |
135 | Value field specifies the number of consecutive missing beacons which | |
136 | triggers the LINK_LOSS event. This event is generated only once after | |
137 | which the firmware resets its state. At initialization, the LINK_LOSS | |
138 | event is subscribed by default. The default value of MissedBeacons is | |
139 | 60. | |
140 | ||
141 | failure_count | |
142 | Value field specifies the consecutive failure count threshold which | |
143 | triggers the generation of the MAX_FAIL event. Once this event is | |
144 | generated, the consecutive failure count is reset to 0. | |
145 | At initialization, the MAX_FAIL event is NOT subscribed by | |
146 | default. | |
147 | ||
148 | high_rssi | |
149 | This event is generated when the average received RSSI in beacons goes | |
150 | above a threshold, specified by Value. | |
151 | ||
152 | low_rssi | |
153 | This event is generated when the average received RSSI in beacons goes | |
154 | below a threshold, specified by Value. | |
155 | ||
156 | high_snr | |
157 | This event is generated when the average received SNR in beacons goes | |
158 | above a threshold, specified by Value. | |
159 | ||
160 | low_snr | |
161 | This event is generated when the average received SNR in beacons goes | |
162 | below a threshold, specified by Value. | |
163 | ||
164 | extscan | |
165 | This command is used to do a specific scan. | |
166 | ||
156f5a78 | 167 | Path: /sys/kernel/debug/libertas_wireless/ethX/ |
876c9d3a MT |
168 | |
169 | Usage: echo "SSID" > extscan | |
170 | ||
171 | Example: | |
172 | echo "LINKSYS-AP" > extscan | |
173 | ||
174 | To see the results of use getscantable command. | |
175 | ||
176 | getscantable | |
177 | ||
178 | Display the current contents of the driver scan table (ie. get the | |
179 | scan results). | |
180 | ||
156f5a78 | 181 | Path: /sys/kernel/debug/libertas_wireless/ethX/ |
876c9d3a MT |
182 | |
183 | Usage: | |
184 | cat getscantable | |
185 | ||
186 | setuserscan | |
187 | Initiate a customized scan and retrieve the results | |
188 | ||
189 | ||
156f5a78 | 190 | Path: /sys/kernel/debug/libertas_wireless/ethX/ |
876c9d3a MT |
191 | |
192 | Usage: | |
193 | echo "[ARGS]" > setuserscan | |
194 | ||
195 | where [ARGS]: | |
196 | ||
876c9d3a MT |
197 | bssid=xx:xx:xx:xx:xx:xx specify a BSSID filter for the scan |
198 | ssid="[SSID]" specify a SSID filter for the scan | |
199 | keep=[0 or 1] keep the previous scan results (1), discard (0) | |
200 | dur=[scan time] time to scan for each channel in milliseconds | |
876c9d3a MT |
201 | type=[1,2,3] BSS type: 1 (Infra), 2(Adhoc), 3(Any) |
202 | ||
dd1d12da | 203 | Any combination of the above arguments can be supplied on the command |
a7d0adae HS |
204 | line. If dur tokens are absent, the driver default setting will be used. |
205 | The bssid and ssid fields, if blank, will produce an unfiltered scan. | |
206 | The type field will default to 3 (Any) and the keep field will default | |
207 | to 0 (Discard). | |
876c9d3a MT |
208 | |
209 | Examples: | |
a7d0adae HS |
210 | 1) Perform a passive scan on all channels for 20 ms per channel: |
211 | echo "dur=20" > setuserscan | |
876c9d3a | 212 | |
a7d0adae HS |
213 | 2) Perform an active scan for a specific SSID: |
214 | echo "ssid="TestAP"" > setuserscan | |
876c9d3a | 215 | |
a7d0adae | 216 | 3) Scan all available channels (B/G, A bands) for a specific BSSID, keep |
876c9d3a MT |
217 | the current scan table intact, update existing or append new scan data: |
218 | echo "bssid=00:50:43:20:12:82 keep=1" > setuserscan | |
219 | ||
a7d0adae | 220 | 4) Scan for all infrastructure networks. |
dd1d12da HS |
221 | Keep the previous scan table intact. Update any duplicate BSSID/SSID |
222 | matches with the new scan data: | |
a7d0adae | 223 | echo "type=1 keep=1" > setuserscan |
876c9d3a MT |
224 | |
225 | All entries in the scan table (not just the new scan data when keep=1) | |
226 | will be displayed upon completion by use of the getscantable ioctl. | |
227 | ||
1311843c AK |
228 | hostsleep |
229 | This command is used to enable/disable host sleep. | |
230 | Note: Host sleep parameters should be configured using | |
231 | "ethtool -s ethX wol X" command before enabling host sleep. | |
232 | ||
233 | Path: /sys/kernel/debug/libertas_wireless/ethX/ | |
234 | ||
235 | Usage: | |
236 | cat hostsleep: reads the current hostsleep state | |
237 | echo "1" > hostsleep : enable host sleep. | |
238 | echo "0" > hostsleep : disable host sleep | |
239 |