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