123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240 |
- ================================================================================
- README for Libertas
- (c) Copyright © 2003-2006, Marvell International Ltd.
- All Rights Reserved
- This software file (the "File") is distributed by Marvell International
- Ltd. under the terms of the GNU General Public License Version 2, June 1991
- (the "License"). You may use, redistribute and/or modify this File in
- accordance with the terms and conditions of the License, a copy of which
- is available along with the File in the license.txt file or on the worldwide
- web at http://www.gnu.org/licenses/gpl.txt.
- THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE
- IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE
- ARE EXPRESSLY DISCLAIMED. The License provides additional details about
- this warranty disclaimer.
- ================================================================================
- =====================
- DRIVER LOADING
- =====================
- o. Copy the firmware image (e.g. usb8388.bin) to /lib/firmware/
- o. Load driver by using the following command:
- insmod usb8388.ko [fw_name=usb8388.bin]
- =========================
- ETHTOOL
- =========================
- Use the -i option to retrieve version information from the driver.
- # ethtool -i eth0
- driver: libertas
- version: COMM-USB8388-318.p4
- firmware-version: 5.110.7
- bus-info:
- Use the -e option to read the EEPROM contents of the card.
- Usage:
- ethtool -e ethX [raw on|off] [offset N] [length N]
- -e retrieves and prints an EEPROM dump for the specified ethernet
- device. When raw is enabled, then it dumps the raw EEPROM data
- to stdout. The length and offset parameters allow dumping cer-
- tain portions of the EEPROM. Default is to dump the entire EEP-
- ROM.
- # ethtool -e eth0 offset 0 length 16
- Offset Values
- ------ ------
- 0x0000 38 33 30 58 00 00 34 f4 00 00 10 00 00 c4 17 00
- ========================
- DEBUGFS COMMANDS
- ========================
- those commands are used via debugfs interface
- ===========
- rdmac
- rdbbp
- rdrf
- These commands are used to read the MAC, BBP and RF registers from the
- card. These commands take one parameter that specifies the offset
- location that is to be read. This parameter must be specified in
- hexadecimal (its possible to precede preceding the number with a "0x").
- Path: /sys/kernel/debug/libertas_wireless/ethX/registers/
- Usage:
- echo "0xa123" > rdmac ; cat rdmac
- echo "0xa123" > rdbbp ; cat rdbbp
- echo "0xa123" > rdrf ; cat rdrf
- wrmac
- wrbbp
- wrrf
- These commands are used to write the MAC, BBP and RF registers in the
- card. These commands take two parameters that specify the offset
- location and the value that is to be written. This parameters must
- be specified in hexadecimal (its possible to precede the number
- with a "0x").
- Usage:
- echo "0xa123 0xaa" > wrmac
- echo "0xa123 0xaa" > wrbbp
- echo "0xa123 0xaa" > wrrf
- sleepparams
- This command is used to set the sleepclock configurations
- Path: /sys/kernel/debug/libertas_wireless/ethX/
- Usage:
- cat sleepparams: reads the current sleepclock configuration
- echo "p1 p2 p3 p4 p5 p6" > sleepparams: writes the sleepclock configuration.
- where:
- p1 is Sleep clock error in ppm (0-65535)
- p2 is Wakeup offset in usec (0-65535)
- p3 is Clock stabilization time in usec (0-65535)
- p4 is Control periodic calibration (0-2)
- p5 is Control the use of external sleep clock (0-2)
- p6 is reserved for debug (0-65535)
- subscribed_events
- The subscribed_events directory contains the interface for the
- subscribed events API.
- Path: /sys/kernel/debug/libertas_wireless/ethX/subscribed_events/
- Each event is represented by a filename. Each filename consists of the
- following three fields:
- Value Frequency Subscribed
- To read the current values for a given event, do:
- cat event
- To set the current values, do:
- echo "60 2 1" > event
- Frequency field specifies the reporting frequency for this event.
- If it is set to 0, then the event is reported only once, and then
- automatically unsubscribed. If it is set to 1, then the event is
- reported every time it occurs. If it is set to N, then the event is
- reported every Nth time it occurs.
- beacon_missed
- Value field specifies the number of consecutive missing beacons which
- triggers the LINK_LOSS event. This event is generated only once after
- which the firmware resets its state. At initialization, the LINK_LOSS
- event is subscribed by default. The default value of MissedBeacons is
- 60.
- failure_count
- Value field specifies the consecutive failure count threshold which
- triggers the generation of the MAX_FAIL event. Once this event is
- generated, the consecutive failure count is reset to 0.
- At initialization, the MAX_FAIL event is NOT subscribed by
- default.
- high_rssi
- This event is generated when the average received RSSI in beacons goes
- above a threshold, specified by Value.
- low_rssi
- This event is generated when the average received RSSI in beacons goes
- below a threshold, specified by Value.
- high_snr
- This event is generated when the average received SNR in beacons goes
- above a threshold, specified by Value.
- low_snr
- This event is generated when the average received SNR in beacons goes
- below a threshold, specified by Value.
- extscan
- This command is used to do a specific scan.
- Path: /sys/kernel/debug/libertas_wireless/ethX/
- Usage: echo "SSID" > extscan
- Example:
- echo "LINKSYS-AP" > extscan
- To see the results of use getscantable command.
- getscantable
- Display the current contents of the driver scan table (ie. get the
- scan results).
- Path: /sys/kernel/debug/libertas_wireless/ethX/
- Usage:
- cat getscantable
- setuserscan
- Initiate a customized scan and retrieve the results
- Path: /sys/kernel/debug/libertas_wireless/ethX/
- Usage:
- echo "[ARGS]" > setuserscan
- where [ARGS]:
- bssid=xx:xx:xx:xx:xx:xx specify a BSSID filter for the scan
- ssid="[SSID]" specify a SSID filter for the scan
- keep=[0 or 1] keep the previous scan results (1), discard (0)
- dur=[scan time] time to scan for each channel in milliseconds
- type=[1,2,3] BSS type: 1 (Infra), 2(Adhoc), 3(Any)
- Any combination of the above arguments can be supplied on the command
- line. If dur tokens are absent, the driver default setting will be used.
- The bssid and ssid fields, if blank, will produce an unfiltered scan.
- The type field will default to 3 (Any) and the keep field will default
- to 0 (Discard).
- Examples:
- 1) Perform a passive scan on all channels for 20 ms per channel:
- echo "dur=20" > setuserscan
- 2) Perform an active scan for a specific SSID:
- echo "ssid="TestAP"" > setuserscan
- 3) Scan all available channels (B/G, A bands) for a specific BSSID, keep
- the current scan table intact, update existing or append new scan data:
- echo "bssid=00:50:43:20:12:82 keep=1" > setuserscan
- 4) Scan for all infrastructure networks.
- Keep the previous scan table intact. Update any duplicate BSSID/SSID
- matches with the new scan data:
- echo "type=1 keep=1" > setuserscan
- All entries in the scan table (not just the new scan data when keep=1)
- will be displayed upon completion by use of the getscantable ioctl.
- hostsleep
- This command is used to enable/disable host sleep.
- Note: Host sleep parameters should be configured using
- "ethtool -s ethX wol X" command before enabling host sleep.
- Path: /sys/kernel/debug/libertas_wireless/ethX/
- Usage:
- cat hostsleep: reads the current hostsleep state
- echo "1" > hostsleep : enable host sleep.
- echo "0" > hostsleep : disable host sleep
|