241 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			241 lines
		
	
	
		
			7.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
================================================================================
 | 
						|
			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 by writing to
 | 
						|
 the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
 | 
						|
 02111-1307 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
 | 
						|
 |