1*4882a593Smuzhiyun=============================================================================== 2*4882a593Smuzhiyun U S E R M A N U A L 3*4882a593Smuzhiyun 4*4882a593Smuzhiyun Copyright 2008-2022 NXP 5*4882a593Smuzhiyun 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun1) FOR DRIVER BUILD 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun Goto source code directory wlan_src/. 10*4882a593Smuzhiyun make [clean] build 11*4882a593Smuzhiyun The driver and utility binaries can be found in ../bin_xxxx directory. 12*4882a593Smuzhiyun The driver code supports Linux kernel from 2.6.32 to 6.0.0. 13*4882a593Smuzhiyun 14*4882a593Smuzhiyun2) FOR DRIVER INSTALL 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun a) Copy firmware image to /lib/firmware/nxp/, copy wifi_mod_para.conf to /lib/firmware/nxp/. 17*4882a593Smuzhiyun b) Install WLAN driver 18*4882a593Smuzhiyun There are drv_mode, max_sta_bss, max_uap_bss etc. module parameters. 19*4882a593Smuzhiyun The bit settings of drv_mode are, 20*4882a593Smuzhiyun Bit 0 : STA 21*4882a593Smuzhiyun Bit 1 : uAP 22*4882a593Smuzhiyun Bit 2 : WIFIDIRECT 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun max_sta_bss: Maximum number of STA BSS (default 1, max 1) 25*4882a593Smuzhiyun sta_name: Name of the STA interface (default: "mlan") 26*4882a593Smuzhiyun max_uap_bss: Maximum number of uAP BSS (default 1, max 2) 27*4882a593Smuzhiyun uap_name: Name of the uAP interface (default: "uap") 28*4882a593Smuzhiyun max_wfd_bss: Maximum number of WIFIDIRECT BSS (default 1, max 1) 29*4882a593Smuzhiyun wfd_name: Name of the WIFIDIRECT interface (default: "wfd") 30*4882a593Smuzhiyun max_vir_bss: Number of Virtual interfaces (default 0) 31*4882a593Smuzhiyun uap_oper_ctrl: uAP operation control when in-STA disconnect with ext-AP 32*4882a593Smuzhiyun 0: default do nothing, 2: uAP stops and restarts automatically 33*4882a593Smuzhiyun For example, to install multi-chip driver, 34*4882a593Smuzhiyun insmod mlan.ko 35*4882a593Smuzhiyun insmod moal.ko mod_para=nxp/wifi_mod_para.conf [drvdbg=0x7] 36*4882a593Smuzhiyun wifi_mod_para.conf is used to support multi-chips which has different load module parameters. It contains 37*4882a593Smuzhiyun the module parameters for different chips. 38*4882a593Smuzhiyun c) Uninstall WLAN driver, 39*4882a593Smuzhiyun ifconfig mlanX down 40*4882a593Smuzhiyun ifconfig uapX down 41*4882a593Smuzhiyun rmmod moal 42*4882a593Smuzhiyun rmmod mlan 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun To load driver with MFG firmware file, use mfg_mode=1 when insmod WLAN driver and 45*4882a593Smuzhiyun specify MFG firmware name if needed. 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun There are some other parameters for debugging purpose etc. Use modinfo to check details. 48*4882a593Smuzhiyun drvdbg=<bit mask of driver debug message control> 49*4882a593Smuzhiyun dev_cap_mask=<Bit mask of the device capability> 50*4882a593Smuzhiyun mac_addr=xx:xx:xx:xx:xx:xx <override the MAC address (in hex)> 51*4882a593Smuzhiyun auto_ds=0|1|2 <use MLAN default | enable auto deepsleep | disable auto deepsleep> 52*4882a593Smuzhiyun ext_scan=0|1|2 <use MLAN default | Enable Extended Scan| Enable Enhanced Extended Scan> 53*4882a593Smuzhiyun net_rx=0|1 <use netif_rx_ni in rx | use netif_receive_skb in rx> 54*4882a593Smuzhiyun amsdu_deaggr=0|1 <default | Try avoid buf copy in amsud deaggregation> 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun ps_mode=0|1|2 <use MLAN default | enable IEEE PS mode | disable IEEE PS mode> 57*4882a593Smuzhiyun sched_scan=0|1 <disable sched_scan | enable sched_scan default> 58*4882a593Smuzhiyun max_tx_buf=2048|4096|8192 <maximum AMSDU Tx buffer size> 59*4882a593Smuzhiyun pm_keep_power=1|0 <PM keep power in suspend (default) | PM no power in suspend> 60*4882a593Smuzhiyun shutdown_hs=1|0 <Enable HS when shutdown | No HS when shutdown (default)> 61*4882a593Smuzhiyun cfg_11d=0|1|2 <use MLAN default | enable 11d | disable 11d> 62*4882a593Smuzhiyun dts_enable=0|1 <Disable DTS | Enable DTS (default)> 63*4882a593Smuzhiyun fw_name = <FW file name> 64*4882a593Smuzhiyun e.g. copy pcieuart9098_combo_v1.bin to firmware directory, fw_name=nxp/pcieuart9098_combo_v1.bin 65*4882a593Smuzhiyun hw_name = <hardware name> 66*4882a593Smuzhiyun reg_work=0|1 <Disable register work queue| Enable register work queue> 67*4882a593Smuzhiyun hw_test=0|1 <Disable hardware test (default) | Enable hardware test> 68*4882a593Smuzhiyun fw_serial=0|1 <support parallel download FW | support serial download FW (default)> 69*4882a593Smuzhiyun req_fw_nowait=0|1 <use request_firmware API (default) | use request_firmware_nowait API> 70*4882a593Smuzhiyun dfs53cfg=0|1|2 <use Fw Default | New W53 | Old W53> 71*4882a593Smuzhiyun mcs32=0|1 <disable HT MCS32 support | enable HT MCS32 (default)> 72*4882a593Smuzhiyun SD8887: antcfg=0|1|2|0xffff <default | Tx/Rx antenna 1 | Tx/Rx antenna 2 | enable antenna diversity> 73*4882a593Smuzhiyun SD8897/SD8997: antcfg=0x11|0x13|0x33 <Bit0:Rx Path A, Bit1:Rx Path B, Bit 4:Tx Path A, Bit 5:Tx Path B> 74*4882a593Smuzhiyun slew_rate: Slew Rate Control value = 0|1|2|3 (0 is the slowest slew rate and 03 has the highest slew rate (default)) 75*4882a593Smuzhiyun init_cfg=<init config (MAC addresses, registers etc.) file name> 76*4882a593Smuzhiyun e.g. copy init_cfg.conf to firmware directory, init_cfg=nxp/init_cfg.conf 77*4882a593Smuzhiyun cal_data_cfg=<CAL data config file name> 78*4882a593Smuzhiyun e.g. copy cal_data.conf to firmware directory, cal_data_cfg=nxp/cal_data.conf 79*4882a593Smuzhiyun Note: Loading driver with 8887 must include correct cal_data_cfg parameter. 80*4882a593Smuzhiyun dpd_data_cfg=<DPD data config file name> 81*4882a593Smuzhiyun e.g. copy dpd_data.conf to firmware directory, dpd_data_cfg=nxp/dpd_data.conf 82*4882a593Smuzhiyun txpwrlimit_cfg=<Tx power limit config file name> 83*4882a593Smuzhiyun e.g. copy txpwrlimit_cfg_set.conf to firmware directory, txpwrlimit_cfg=nxp/txpwrlimit_cfg_set.conf 84*4882a593Smuzhiyun cntry_txpwr=0|1|2 85*4882a593Smuzhiyun 0: Disable setting tx power table of country (default) 86*4882a593Smuzhiyun 1: Enable setting tx power table of country 87*4882a593Smuzhiyun 2: Enable setting rgpower table of country 88*4882a593Smuzhiyun init_hostcmd_cfg=<init hostcmd config file name> 89*4882a593Smuzhiyun e.g. copy init_hostcmd_cfg.conf to firmware directory, init_hostcmd_cfg=nxp/init_hostcmd_cfg.conf 90*4882a593Smuzhiyun band_steer_cfg=<band steer config file name> 91*4882a593Smuzhiyun e.g. generate bscfg.conf by band_steer_cfg.conf, then copy bscfg.conf to firmware directory, band_steer_cfg=nxp/bscfg.conf 92*4882a593Smuzhiyun sdio_rx_aggr=1|0 <Enable SDIO rx aggr (default) | Disable SDIO rx aggr> 93*4882a593Smuzhiyun cfg80211_wext=<bit mask of CFG80211 and WEXT control> 94*4882a593Smuzhiyun Bit 0: STA WEXT 95*4882a593Smuzhiyun Bit 1: uAP WEXT 96*4882a593Smuzhiyun Bit 2: STA CFG80211 97*4882a593Smuzhiyun Bit 3: uAP CFG80211 98*4882a593Smuzhiyun reg_alpha2=<Regulatory alpha2 (default NULL)> 99*4882a593Smuzhiyun skip_fwdnld=0|1 <enable FW download support (default) | disable FW download support> 100*4882a593Smuzhiyun wq_sched_prio: Priority for work queue 101*4882a593Smuzhiyun wq_sched_policy: Scheduling policy for work queue 102*4882a593Smuzhiyun (0: SCHED_NORMAL, 1: SCHED_FIFO, 2: SCHED_RR, 3: SCHED_BATCH, 5: SCHED_IDLE) 103*4882a593Smuzhiyun Please note that, both wq_sched_prio and wq_sched_policy should be provided 104*4882a593Smuzhiyun as module parameters. If wq_sched_policy is (0, 3 or 5), then wq_sched_prio 105*4882a593Smuzhiyun must be 0. wq_sched_prio should be 1 to 99 otherwise. 106*4882a593Smuzhiyun rx_work=0|1|2 <default | Enable rx_work_queue | Disable rx_work_queue> 107*4882a593Smuzhiyun pcie_int_mode=0|1|2 <Legacy mode, MSI mode (default), MSI-X mode> 108*4882a593Smuzhiyun pcie_int_mode=0|1 <Legacy mode, MSI mode (default)> 109*4882a593Smuzhiyun ring_size=32|64|128|256|512 <adma ring size for 9097/9098> 110*4882a593Smuzhiyun aggrctrl=1|0 <enable Tx aggr | disable Tx aggr> 111*4882a593Smuzhiyun usb_aggr=0|1|2 <use MLAN default (disabled) | enable USB aggr | disable USB aggr> 112*4882a593Smuzhiyun low_power_mode_enable=0|1 <disable low power mode (default)| enable low power mode> 113*4882a593Smuzhiyun When low power mode is enabled, the output power will be clipped at ~+10dBm and the 114*4882a593Smuzhiyun expected PA current is expected to be in the 80-90 mA range for b/g/n modes 115*4882a593Smuzhiyun wakelock_timeout=<set wakelock_timeout value (ms)> 116*4882a593Smuzhiyun pmic=0|1 <No pmic configure cmd sent to firmware | Send pmic configure cmd to firmware> 117*4882a593Smuzhiyun indication_gpio=0xXY <GPIO to indicate wakeup source and its level; high four bits X: 118*4882a593Smuzhiyun level(0/1) for normal wakeup; low four bits Y: GPIO pin number. This parameter 119*4882a593Smuzhiyun only works with specific board and firmware.> 120*4882a593Smuzhiyun hs_wake_interval=<Host sleep wakeup interval,it will round to nearest multiple dtim*beacon_period in fw> 121*4882a593Smuzhiyun disconnect_on_suspend=0|1 <Disable disconnect wifi on suspend (default) | Enable disconnect wifi on suspend> 122*4882a593Smuzhiyun hs_mimo_switch=0|1 <Disable dynamic MIMO-SISO switch during host sleep (default) | Enable dynamic MIMO-SISO switch during host sleep> 123*4882a593Smuzhiyun gtk_rekey_offload=0|1|2 <disable gtk_rekey_offload|enable gtk_rekey_offload (default) | enable gtk_rekey_offload in suspend mode only> 124*4882a593Smuzhiyun napi=0|1 <disable napi | enable napi> 125*4882a593Smuzhiyun fixed_beacon_buffer=0|1 <allocate default buffer size (default) | allocate max buffer size> 126*4882a593Smuzhiyun GoAgeoutTime=0|x <use default ageout time (default) | set Go age out time xTU(TU 100ms)> 127*4882a593Smuzhiyun multi_dtim=0|x <use default DTIM interval(default) | set x*beacon_period as DTIM interval> 128*4882a593Smuzhiyun inact_tmo=0|x <use default IEEE ps inactivity timout value (default) | use IEEE ps inactivity timeout value x ms> 129*4882a593Smuzhiyun roamoffload_in_hs=0|1 <always enable fw roaming (default) | enable fw roaming only when host suspend> 130*4882a593Smuzhiyun uap_max_sta: Maximum number of STA for UAP/GO (default 0, max 64) 131*4882a593Smuzhiyun host_mlme=0|1 <Operate in non-host_mlme mode | Operate in host_mlme mode (default)> 132*4882a593Smuzhiyun for supplicant/authenticator running on host side, WPA3 support is available only in host_mlme mode 133*4882a593Smuzhiyun country_ie_ignore=0|1 <Follow countryIE from AP and beacon hint enable (default) | Ignore countryIE from AP and beacon hint disable> 134*4882a593Smuzhiyun beacon_hints=0|1 <enable beacon hints(default) | disable beacon hints> 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun chan_track=0|1 <restore channel tracking parameters(default) | set channel tracking new parameters> for 9098 only 137*4882a593Smuzhiyun keep_previous_scan=0|1, <Flush previous scan result before start scan | Keep previous scan result(default)> 138*4882a593Smuzhiyun 139*4882a593Smuzhiyun 140*4882a593Smuzhiyun Note: On some platforms (e.g. PXA910/920) double quotation marks ("") need to used 141*4882a593Smuzhiyun for module parameters. 142*4882a593Smuzhiyun insmod sdxxx.ko "<para1> <para2> ..." 143*4882a593Smuzhiyun 144*4882a593Smuzhiyun3) FOR DRIVER PROC & DEBUG 145*4882a593Smuzhiyun 146*4882a593Smuzhiyun The following info are provided in /proc/net/mwlan/adapterX/mlanY|uapY|wfdY/info, 147*4882a593Smuzhiyun on kernel 2.6.24 or later, the entry is /proc/mwlan/adapterX/mlanY|uapY|wfdY/info. 148*4882a593Smuzhiyun 149*4882a593Smuzhiyun driver_name = "wlan" or "uap" 150*4882a593Smuzhiyun driver_version = <chip id, firmware version and driver version> 151*4882a593Smuzhiyun interface_name = "mlanX", "uapX" or "wfdX" 152*4882a593Smuzhiyun bss_mode = "Ad-hoc" | "Managed" | "Auto" | "Unknown" 153*4882a593Smuzhiyun media_state = "Disconnected" | "Connected" 154*4882a593Smuzhiyun mac_address = <6-byte adapter MAC address> 155*4882a593Smuzhiyun multicase_count = <multicast address count> // Only for STA 156*4882a593Smuzhiyun essid = <current SSID> // Only for STA 157*4882a593Smuzhiyun bssid = <current BSSID> // Only for STA 158*4882a593Smuzhiyun channel = <current channel> // Only for STA 159*4882a593Smuzhiyun region_code = <current region code> // Only for STA 160*4882a593Smuzhiyun multicast_address[n] = <multicast address> // Only for STA 161*4882a593Smuzhiyun num_tx_bytes = <number of bytes sent to device> 162*4882a593Smuzhiyun num_rx_bytes = <number of bytes received from device and sent to kernel> 163*4882a593Smuzhiyun num_tx_pkts = <number of packets sent to device> 164*4882a593Smuzhiyun num_rx_pkts = <number of packets received from device and sent to kernel> 165*4882a593Smuzhiyun num_tx_pkts_dropped = <number of Tx packets dropped by driver> 166*4882a593Smuzhiyun num_rx_pkts_dropped = <number of Rx packets dropped by driver> 167*4882a593Smuzhiyun num_tx_pkts_err = <number of Tx packets failed to send to device> 168*4882a593Smuzhiyun num_rx_pkts_err = <number of Rx packets failed to receive from device> 169*4882a593Smuzhiyun carrier "on" | "off" 170*4882a593Smuzhiyun tx queue "stopped" | "started" 171*4882a593Smuzhiyun tkip_mic_failures = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) 172*4882a593Smuzhiyun ccmp_decrypt_errors = 0 // Only for uAP 173*4882a593Smuzhiyun wep_undecryptable_count = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) 174*4882a593Smuzhiyun wep_icv_error_count = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) 175*4882a593Smuzhiyun decrypt_failure_count = 0 // Only for uAP 176*4882a593Smuzhiyun mcast_tx_count = 0 // Only for uAP 177*4882a593Smuzhiyun failed_count = 0 // Only for uAP 178*4882a593Smuzhiyun retry_count = 0 // Only for uAP 179*4882a593Smuzhiyun multiple_retry_count = 0 // Only for uAP 180*4882a593Smuzhiyun frame_duplicate_count = 0 // Only for uAP 181*4882a593Smuzhiyun rts_success_count = 0 // Only for uAP 182*4882a593Smuzhiyun rts_failure_count = 0 // Only for uAP 183*4882a593Smuzhiyun ack_failure_count = 0 // Only for uAP 184*4882a593Smuzhiyun rx_fragment_count = 0 // Only for uAP 185*4882a593Smuzhiyun mcast_rx_frame_count = 0 // Only for uAP 186*4882a593Smuzhiyun fcs_error_count = 0 // Only for uAP 187*4882a593Smuzhiyun tx_frame_count = 0 // Only for uAP 188*4882a593Smuzhiyun rsna_tkip_cm_invoked = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) 189*4882a593Smuzhiyun rsna_4way_hshk_failures = 0 // Only for uAP 190*4882a593Smuzhiyun 191*4882a593Smuzhiyun The following debug info are provided in /proc/net/mwlan/adapterX/mlanY|uapY|wfdY/debug, 192*4882a593Smuzhiyun on kernel 2.6.24 or later, the entry is /proc/mwlan/adapterX/mlanY|uapY|wfdY/debug. 193*4882a593Smuzhiyun 194*4882a593Smuzhiyun drvdbg = <bit mask of driver debug message control> 195*4882a593Smuzhiyun wmm_ac_vo = <number of packets sent to device from WMM AcVo queue> 196*4882a593Smuzhiyun wmm_ac_vi = <number of packets sent to device from WMM AcVi queue> 197*4882a593Smuzhiyun wmm_ac_be = <number of packets sent to device from WMM AcBE queue> 198*4882a593Smuzhiyun wmm_ac_bk = <number of packets sent to device from WMM AcBK queue> 199*4882a593Smuzhiyun max_tx_buf_size = <maximum Tx buffer size> 200*4882a593Smuzhiyun tx_buf_size = <current Tx buffer size> 201*4882a593Smuzhiyun curr_tx_buf_size = <current Tx buffer size in FW> 202*4882a593Smuzhiyun ps_mode = <0/1, CAM mode/PS mode> 203*4882a593Smuzhiyun ps_state = <0/1/2/3, awake state/pre-sleep state/sleep-confirm state/sleep state> 204*4882a593Smuzhiyun is_deep_sleep = <0/1, not deep sleep state/deep sleep state> // Only for STA 205*4882a593Smuzhiyun wakeup_dev_req = <0/1, wakeup device not required/required> 206*4882a593Smuzhiyun wakeup_tries = <wakeup device count, cleared when device awake> 207*4882a593Smuzhiyun hs_configured = <0/1, host sleep not configured/configured> 208*4882a593Smuzhiyun hs_activated = <0/1, extended host sleep not activated/activated> 209*4882a593Smuzhiyun tx_pkts_queued = <number of Tx packets queued> 210*4882a593Smuzhiyun pps_uapsd_mode = <0/1, PPS/UAPSD mode disabled/enabled> // Only for STA 211*4882a593Smuzhiyun sleep_pd = <sleep period in milliseconds> // Only for STA 212*4882a593Smuzhiyun qos_cfg = <WMM QoS info> // Only for STA 213*4882a593Smuzhiyun tx_lock_flag = <0/1, Tx lock flag> // Only for STA 214*4882a593Smuzhiyun port_open = <0/1, port open flag> // Only for STA 215*4882a593Smuzhiyun scan_processing = <0/1, scan processing flag> // Only for STA 216*4882a593Smuzhiyun num_bridge_pkts = <number of bridged packets> // Only for uAP 217*4882a593Smuzhiyun num_drop_pkts = <number of dropped packets> // Only for uAP 218*4882a593Smuzhiyun num_tx_timeout = <number of Tx timeout> 219*4882a593Smuzhiyun num_cmd_timeout = <number of timeout commands> 220*4882a593Smuzhiyun timeout_cmd_id = <command id of the last timeout command> 221*4882a593Smuzhiyun timeout_cmd_act = <command action of the last timeout command> 222*4882a593Smuzhiyun last_cmd_id = <command id of the last several commands sent to device> 223*4882a593Smuzhiyun last_cmd_act = <command action of the last several commands sent to device> 224*4882a593Smuzhiyun last_cmd_index = <0 based last command index> 225*4882a593Smuzhiyun last_cmd_resp_id = <command id of the last several command responses received from device> 226*4882a593Smuzhiyun last_cmd_resp_index = <0 based last command response index> 227*4882a593Smuzhiyun last_event = <event id of the last several events received from device> 228*4882a593Smuzhiyun last_event_index = <0 based last event index> 229*4882a593Smuzhiyun num_cmd_h2c_fail = <number of commands failed to send to device> 230*4882a593Smuzhiyun num_cmd_sleep_cfm_fail = <number of sleep confirm failed to send to device> 231*4882a593Smuzhiyun num_tx_h2c_fail = <number of data packets failed to send to device> 232*4882a593Smuzhiyun num_cmdevt_c2h_fail = <number of commands/events failed to receive from device> 233*4882a593Smuzhiyun num_rx_c2h_fail = <number of data packets failed to receive from device> 234*4882a593Smuzhiyun num_int_read_fail = <number of interrupt read failures> 235*4882a593Smuzhiyun last_int_status = <last interrupt status> 236*4882a593Smuzhiyun num_evt_deauth = <number of deauthenticated events received from device> // Only for STA 237*4882a593Smuzhiyun num_evt_disassoc = <number of disassociated events received from device> // Only for STA 238*4882a593Smuzhiyun num_evt_link_lost = <number of link lost events received from device> // Only for STA 239*4882a593Smuzhiyun num_cmd_deauth = <number of deauthenticate commands sent to device> // Only for STA 240*4882a593Smuzhiyun num_cmd_assoc_ok = <number of associate commands with success return> // Only for STA 241*4882a593Smuzhiyun num_cmd_assoc_fail = <number of associate commands with failure return> // Only for STA 242*4882a593Smuzhiyun cmd_sent = <0/1, send command resources available/sending command to device> 243*4882a593Smuzhiyun data_sent = <0/1, send data resources available/sending data to device> 244*4882a593Smuzhiyun mp_rd_bitmap = <SDIO multi-port read bitmap> 245*4882a593Smuzhiyun curr_rd_port = <SDIO multi-port current read port> 246*4882a593Smuzhiyun mp_wr_bitmap = <SDIO multi-port write bitmap> 247*4882a593Smuzhiyun curr_wr_port = <SDIO multi-port current write port> 248*4882a593Smuzhiyun txbd_rdptr = <PCIE transmit read pointer> 249*4882a593Smuzhiyun txbd_wrptr = <PCIE transmit write pointer> 250*4882a593Smuzhiyun rxbd_rdptr = <PCIE recieve read pointer> 251*4882a593Smuzhiyun rxbd_wrptr = <PCIE recieve write pointer> 252*4882a593Smuzhiyun eventbd_rdptr = <PCIE event read pointer> 253*4882a593Smuzhiyun eventbd_wrptr = <PCIE event write pointer> 254*4882a593Smuzhiyun cmd_resp_received = <0/1, no cmd response to process/response received and yet to process> 255*4882a593Smuzhiyun event_received = <0/1, no event to process/event received and yet to process> 256*4882a593Smuzhiyun tx_cmd_urb_pending = <number of URB pending for cmd transmit> 257*4882a593Smuzhiyun tx_data_urb_pending = <number of URB pending for data transmit> 258*4882a593Smuzhiyun rx_cmd_urb_pending = <number of URB pending for cmd receive> 259*4882a593Smuzhiyun rx_data_urb_pending = <number of URB pending for data receive> 260*4882a593Smuzhiyun ioctl_pending = <number of ioctl pending> 261*4882a593Smuzhiyun tx_pending = <number of Tx packet pending> 262*4882a593Smuzhiyun rx_pending = <number of Rx packet pending> 263*4882a593Smuzhiyun lock_count = <number of lock used> 264*4882a593Smuzhiyun malloc_count = <number of malloc done> 265*4882a593Smuzhiyun mbufalloc_count = <number of mlan_buffer allocated> 266*4882a593Smuzhiyun malloc_cons_count = <number of consistent malloc done> 267*4882a593Smuzhiyun main_state = <current state of the main process> 268*4882a593Smuzhiyun sdiocmd53w = <SDIO Cmd53 write status> 269*4882a593Smuzhiyun sdiocmd53r = <SDIO Cmd52 read status> 270*4882a593Smuzhiyun hs_skip_count = <number of skipped suspends> 271*4882a593Smuzhiyun hs_force_count = <number of forced suspends> 272*4882a593Smuzhiyun 273*4882a593Smuzhiyun Issue SDIO cmd52 read/write through proc. 274*4882a593Smuzhiyun Usage: 275*4882a593Smuzhiyun echo "sdcmd52rw=<func> <reg> [data]" > /proc/mwlan/adapterX/config 276*4882a593Smuzhiyun where the parameters: 277*4882a593Smuzhiyun func: The function number to use (0-7) 278*4882a593Smuzhiyun reg: The address of the register 279*4882a593Smuzhiyun data: The value to write, read if the value is absent 280*4882a593Smuzhiyun For SDIO MMC driver, only function 0 and WLAN function access is allowed. 281*4882a593Smuzhiyun And there is a limitation for function 0 write, only vendor specific CCCR 282*4882a593Smuzhiyun registers (0xf0 -0xff) are permiited. 283*4882a593Smuzhiyun Examples: 284*4882a593Smuzhiyun echo "sdcmd52rw= 0 4" > /proc/mwlan/adapterX/config # read func 0 address 4 285*4882a593Smuzhiyun cat /proc/mwlan/adapterX/config # display the register value 286*4882a593Smuzhiyun echo "sdcmd52rw= 1 3 0xf" > /proc/mwlan/adapterX/config # write 0xf to func 1 address 3 287*4882a593Smuzhiyun 288*4882a593Smuzhiyun Issue debug_dump command through proc. 289*4882a593Smuzhiyun Usage: 290*4882a593Smuzhiyun echo "debug_dump" > /proc/mwlan/adapterX/config 291*4882a593Smuzhiyun 292*4882a593Smuzhiyun Examples: 293*4882a593Smuzhiyun echo "debug_dump" > /proc/mwlan/adapterX/config # dump driver internal debug status. 294*4882a593Smuzhiyun To obtain fw dump or driver dump, use command: 295*4882a593Smuzhiyun cat /proc/mwlan/adapter0/drv_dump > file_drv_dump #save the drv dump to file_drv_dump 296*4882a593Smuzhiyun cat /proc/mwlan/adapter0/fw_dump > file_fw_dump #save the fw dump to file_fw_dump 297*4882a593Smuzhiyun cat /proc/mwlan/adapter1/drv_dump > file_drv_dump_2 #save the adapter1 drv dump to file_drv_dump_2 298*4882a593Smuzhiyun 299*4882a593Smuzhiyun Use dmesg or cat /var/log/debug to check driver debug messages. 300*4882a593Smuzhiyun 301*4882a593Smuzhiyun Update /proc/sys/kernel/printk to change message log levels. 302*4882a593Smuzhiyun For example, 303*4882a593Smuzhiyun echo 6 > /proc/sys/kernel/printk (messages with a higher priority than 6 304*4882a593Smuzhiyun will be printed to the console) 305*4882a593Smuzhiyun echo 15 > /proc/sys/kernel/printk (all messages will be printed to console) 306*4882a593Smuzhiyun 307*4882a593Smuzhiyun4) FOR FW RELOAD 308*4882a593Smuzhiyun a) Enable parallel firmware download in driver parameter 309*4882a593Smuzhiyun insmod sdxxx.ko fw_serial=0 310*4882a593Smuzhiyun 311*4882a593Smuzhiyun b) default fw name for parallel firmware download 312*4882a593Smuzhiyun sd8887_wlan_a2.bin 313*4882a593Smuzhiyun 314*4882a593Smuzhiyun c) Trigger FW reload 315*4882a593Smuzhiyun echo "fw_reload=1" > /proc/mwlan/adapterX/config trigger inband firmware reset and reload firmware 316*4882a593Smuzhiyun echo "fw_reload=2" > /proc/mwlan/adapterX/config trigger firmware reload 317*4882a593Smuzhiyun echo "fw_reload=3" > /proc/mwlan/adapterX/config set firmware reload flag in driver. 318*4882a593Smuzhiyun echo "fw_reload=4" > /proc/mwlan/config trigger pcie FLR and reload firmware. 319*4882a593Smuzhiyun 320*4882a593Smuzhiyun (Note: This feature will be supported on Robin3 and KF2. 321*4882a593Smuzhiyun For CAC-A2, it only work with the board which supports parallel fw download) 322*4882a593Smuzhiyun 323*4882a593Smuzhiyun5) FOR RF test mode commands: 324*4882a593Smuzhiyun 325*4882a593Smuzhiyun Following commands are used to perform RF testing of the wifi chipset. 326*4882a593Smuzhiyun Please not that these test mode commands can only be issued while the 327*4882a593Smuzhiyun device is in disconnected state and the uAP BSS is inactive. 328*4882a593Smuzhiyun Normal wifi operations cannot be used on entering RF Test Mode. 329*4882a593Smuzhiyun 330*4882a593Smuzhiyun Enter RF Test Mode: 331*4882a593Smuzhiyun echo "rf_test_mode=1" > /proc/mwlan/adapterX/config 332*4882a593Smuzhiyun 333*4882a593Smuzhiyun Exit RF Test Mode: 334*4882a593Smuzhiyun echo "rf_test_mode=0" > /proc/mwlan/adapterX/config 335*4882a593Smuzhiyun Please note that after exiting the RF Test Mode, the FW needs to be 336*4882a593Smuzhiyun reset in order to use normal wifi connectivity. 337*4882a593Smuzhiyun 338*4882a593Smuzhiyun To get the set of available RF Test Mode commands, currently set 339*4882a593Smuzhiyun parameters values for each command and the output, 340*4882a593Smuzhiyun cat /proc/mwlan/adapterX/config 341*4882a593Smuzhiyun 342*4882a593Smuzhiyun Set Tx Antenna 343*4882a593Smuzhiyun For 1x1 chipsets, 1:Main, 2:Aux when antenna diversity is supported 344*4882a593Smuzhiyun For 2x2 chipsets, 1:Path A, 2: Path B, 3: Path A+B 345*4882a593Smuzhiyun Both Tx and Rx must be set to same antenna path 346*4882a593Smuzhiyun echo "tx_antenna=1" > /proc/mwlan/adapterX/config 347*4882a593Smuzhiyun 348*4882a593Smuzhiyun Set Rx Antenna 349*4882a593Smuzhiyun For 1x1 chipsets, 1:Main, 2:Aux when antenna diversity is supported 350*4882a593Smuzhiyun For 2x2 chipsets, 1:Path A, 2:Path B, 3:Path A+B 351*4882a593Smuzhiyun Both Tx and Rx must be set to same antenna path 352*4882a593Smuzhiyun echo "rx_antenna=1" > /proc/mwlan/adapterX/config 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun Set RF band (0:2G, 1:5G) 355*4882a593Smuzhiyun For 2G, channel will be reset to 6, while for 5G, to channel 36 356*4882a593Smuzhiyun echo "band=0" > /proc/mwlan/adapterX/config 357*4882a593Smuzhiyun 358*4882a593Smuzhiyun Set RF bandwidth (0:20MHz, 1:40MHz, 4:80MHz) 359*4882a593Smuzhiyun echo "bw=0" > /proc/mwlan/adapterX/config 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun Set RF channel 362*4882a593Smuzhiyun echo "channel=6" > /proc/mwlan/adapterX/config 363*4882a593Smuzhiyun 364*4882a593Smuzhiyun Set Radio Mode 365*4882a593Smuzhiyun echo "radio_mode=14 4" > /proc/mwlan/adapterX/config 366*4882a593Smuzhiyun 367*4882a593Smuzhiyun Get and reset packet error rate 368*4882a593Smuzhiyun echo "get_and_reset_per" > /proc/mwlan/adapterX/config 369*4882a593Smuzhiyun 370*4882a593Smuzhiyun Set Tx Power 371*4882a593Smuzhiyun This command will set power only if caldata is already loaded in the FW. 372*4882a593Smuzhiyun Power (0 to 24 dBm) 373*4882a593Smuzhiyun Modulation (0: CCK, 1:OFDM, 2:MCS) 374*4882a593Smuzhiyun Path ID (0: PathA, 1:PathB, 2:PathA+B) 375*4882a593Smuzhiyun echo "tx_power=16 2 0" > /proc/mwlan/adapterX/config 376*4882a593Smuzhiyun 377*4882a593Smuzhiyun Set MFG HE TB Tx to configure Trigger based TX reponse 378*4882a593Smuzhiyun Enable Tx (0:disable, 1:enable) 379*4882a593Smuzhiyun Q num (0-7 : TCQs 0-7, 17-20: AXQs 0-3) 380*4882a593Smuzhiyun AID (Association ID as applicable) 381*4882a593Smuzhiyun AXQ MU Timer(to set the MU EDCA Timer for the Queue) 382*4882a593Smuzhiyun Tx Power (-11 to 9 dBm) 383*4882a593Smuzhiyun echo "he_tb_tx=1 1 5 400 10" > /proc/mwlan/adapterX/config 384*4882a593Smuzhiyun 385*4882a593Smuzhiyun Set Tx Continuous Mode 386*4882a593Smuzhiyun Start (0:disable, 1:enable) 387*4882a593Smuzhiyun Continuous Wave Mode (0:disable, 1:enable) 388*4882a593Smuzhiyun Payload Pattern (0 to 0xFFFFFFFF) 389*4882a593Smuzhiyun CS Mode (Applicable only when continuous wave is disabled) 390*4882a593Smuzhiyun (0:disable, 1:enable) 391*4882a593Smuzhiyun Active SubChannel (0:low, 1:upper, 3:both) 392*4882a593Smuzhiyun Tx Data Rate (Rate Index corresponding to legacy/HT/VHT rates) 393*4882a593Smuzhiyun 394*4882a593Smuzhiyun Example: To start continuous wave (tone) mode, first stop any ongoing 395*4882a593Smuzhiyun Tx and then start wave mode: 396*4882a593Smuzhiyun step1: echo "tx_continuous=0" > /proc/mwlan/adapterX/config 397*4882a593Smuzhiyun step2: echo "tx_continuous=1 1 0xAAA 0 3 7" > /proc/mwlan/adapterX/config 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun Example: To start continuous packet mode, first stop any ongoing Tx and 400*4882a593Smuzhiyun then start pkt mode: 401*4882a593Smuzhiyun step1: echo "tx_continuous=0" > /proc/mwlan/adapterX/config 402*4882a593Smuzhiyun step2: echo "tx_continuous=1 0 0xAAA 0 3 7" > /proc/mwlan/adapterX/config 403*4882a593Smuzhiyun 404*4882a593Smuzhiyun stop: 405*4882a593Smuzhiyun echo "tx_continuous=0" > /proc/mwlan/adapterX/config 406*4882a593Smuzhiyun 407*4882a593Smuzhiyun Set Tx Frame 408*4882a593Smuzhiyun Start (0:disable, 1:enable) 409*4882a593Smuzhiyun Tx Data Rate (Rate Index corresponding to legacy/HT/VHT rates) 410*4882a593Smuzhiyun Payload Pattern (0 to 0xFFFFFFFF) 411*4882a593Smuzhiyun Payload Length (1 to 0x400) 412*4882a593Smuzhiyun Adjust Burst SIFS Gap (0:disable, 1:enable) 413*4882a593Smuzhiyun Burst SIFS in us (0 to 255us) 414*4882a593Smuzhiyun Short Preamble (0:disable, 1:enable) 415*4882a593Smuzhiyun Active SubChannel (0:low, 1:upper, 3:both) 416*4882a593Smuzhiyun Short GI (0:disable, 1:enable) 417*4882a593Smuzhiyun Adv Coding (0:disable, 1:enable) 418*4882a593Smuzhiyun Beamforming (0:disable, 1:enable) 419*4882a593Smuzhiyun GreenField Mode (0:disable, 1:enable) 420*4882a593Smuzhiyun STBC (0:disable, 1:enable) 421*4882a593Smuzhiyun NumPkt (Set to default value -1) 422*4882a593Smuzhiyun MaxPktExt (Set to default value -1) 423*4882a593Smuzhiyun BeamChange (Set to default value -1) 424*4882a593Smuzhiyun DCM (Set to default value -1) 425*4882a593Smuzhiyun Doppler (Set to default value -1) 426*4882a593Smuzhiyun MidamblePeriod (Set to default value -1) 427*4882a593Smuzhiyun QNum (Set to default value 1) 428*4882a593Smuzhiyun BSSID (xx:xx:xx:xx:xx:xx) 429*4882a593Smuzhiyun 430*4882a593Smuzhiyun Example: To start Tx frame with duty cycle, first stop any ongoing Tx 431*4882a593Smuzhiyun and then start Tx frame: 432*4882a593Smuzhiyun echo "tx_frame=0" > /proc/mwlan/adapterX/config 433*4882a593Smuzhiyun echo "tx_frame=1 7 0xAAA 0x100 1 20 0 0 0 0 0 0 0 05:43:3f:c4:51" > /proc/mwlan/adapterX/config 434*4882a593Smuzhiyun 435*4882a593Smuzhiyun hssetpara 436*4882a593Smuzhiyun This command is used to set host sleep parameters. 437*4882a593Smuzhiyun Example: 438*4882a593Smuzhiyun echo "hssetpara=2 0xff 0xc8 3 400" > /proc/mwlan/adapter0/config 439*4882a593Smuzhiyun echo "hssetpara=2 1 0xc8 3 400 " > /proc/mwlan/adapter0/config 440*4882a593Smuzhiyun 441*4882a593Smuzhiyun=============================================================================== 442*4882a593Smuzhiyun U S E R M A N U A L F O R MLANUTL 443*4882a593Smuzhiyun 444*4882a593SmuzhiyunNAME 445*4882a593Smuzhiyun mlanutl - configure the additional parameters available for NXP mdriver. 446*4882a593Smuzhiyun 447*4882a593SmuzhiyunSYNOPSIS 448*4882a593Smuzhiyun mlanutl -v 449*4882a593Smuzhiyun mlanutl <mlanX|uapX|wfdx> <command> [parameters] ... 450*4882a593Smuzhiyun 451*4882a593Smuzhiyun mlanutl mlanX verext 452*4882a593Smuzhiyun mlanutl mlanX version 453*4882a593Smuzhiyun mlanutl mlanX hostcmd <conf> generate_raw <raw_data_file> 454*4882a593Smuzhiyun mlanutl mlanX hostcmd <send_om.conf> send_om_set 455*4882a593Smuzhiyun mlanutl mlanX getdatarate 456*4882a593Smuzhiyun mlanutl uapX getdatarate 457*4882a593Smuzhiyun mlanutl mlanX drvdbg [n] 458*4882a593Smuzhiyun mlanutl mlanX getlog 459*4882a593Smuzhiyun mlanutl mlanX getsignal [m] [n] 460*4882a593Smuzhiyun mlanutl mlanX signalextcfg [m] 461*4882a593Smuzhiyun mlanutl mlanX getsignalextv2 [m] 462*4882a593Smuzhiyun mlanutl mlanX getsignalext [m] 463*4882a593Smuzhiyun mlanutl mlanX get_txpwrlimit <n> [raw_data_file] 464*4882a593Smuzhiyun mlanutl mlanX aggrpriotbl [<m0> <n0> <m1> <n1> ... <m7> <n7>] 465*4882a593Smuzhiyun mlanutl uapX aggrpriotbl [<m0> <n0> <m1> <n1> ... <m7> <n7>] 466*4882a593Smuzhiyun mlanutl mlanX addbapara [<m> <n> <o> <p> <q>] 467*4882a593Smuzhiyun mlanutl uapX addbapara [<m> <n> <o> <p> <q>] 468*4882a593Smuzhiyun mlanutl mlanX addbareject [<m0> <m1> ... <m7>] 469*4882a593Smuzhiyun mlanutl uapX addbareject [<m0> <m1> ... <m7>] 470*4882a593Smuzhiyun mlanutl mlanX dyn_bw [n] 471*4882a593Smuzhiyun mlanutl mlanX vhtcfg <j> <k> [l] [m] [n] [o] 472*4882a593Smuzhiyun mlanutl uapX vhtcfg <j> <k> [l] [m] [n] [o] 473*4882a593Smuzhiyun mlanutl mlanX httxcfg [<m>] [<n>] 474*4882a593Smuzhiyun mlanutl mlanX htcapinfo [<m>] [<n>] 475*4882a593Smuzhiyun mlanutl mlanX 11axcfg [config/11axcfg.conf] 476*4882a593Smuzhiyun mlanutl mlanX 11axcmd <subcmd> <value> 477*4882a593Smuzhiyun mlanutl mlanX txratecfg [l] [m] [n] [o] 478*4882a593Smuzhiyun mlanutl uapX txratecfg [l] [m] [n] [o] 479*4882a593Smuzhiyun mlanutl mlanX txwatchdog [l] 480*4882a593Smuzhiyun mlanutl uapX txwatchdog [l] 481*4882a593Smuzhiyun mlanutl mlanX hssetpara condition [GPIO# [gap]] [ind_GPIO# [level]] 482*4882a593Smuzhiyun mlanutl mlanX mefcfg <mef.conf> 483*4882a593Smuzhiyun mlanutl mlanX cloud_keep_alive <keep_alive.conf> <start/stop/reset> 484*4882a593Smuzhiyun mlanutl mlanX min_ba_threshold <n> 485*4882a593Smuzhiyun mlanutl mlanX 11dcfg 486*4882a593Smuzhiyun mlanutl mlanX 11dclrtbl 487*4882a593Smuzhiyun mlanutl mlanX addts <filename.conf> <section# of tspec> <timeout in ms> 488*4882a593Smuzhiyun mlanutl mlanX amsduaggrctrl <n> 489*4882a593Smuzhiyun mlanutl mlanX antcfg [m] [n] 490*4882a593Smuzhiyun mlanutl mlanX/uapX mimoswitch [tx_antmode] [rx_antmode] 491*4882a593Smuzhiyun mlanutl mlanX arpfilter <arpfilter.conf> 492*4882a593Smuzhiyun mlanutl mlanX assocctrl <j> [k] [l] [m] [n] 493*4882a593Smuzhiyun mlanutl mlanX assocessid <"[essid]"> 494*4882a593Smuzhiyun mlanutl mlanX assocessid_bssid <"[bssid] [essid]"> 495*4882a593Smuzhiyun mlanutl mlanX associate "<bssid> <ssid>" 496*4882a593Smuzhiyun mlanutl mlanX get_chnrgpwr [save_region_channel_power_data_file] 497*4882a593Smuzhiyun mlanutl mlanX comparergpwr <uncompressed file> [target_file] 498*4882a593Smuzhiyun mlanutl mlanX comparetrpc <target_file> <src_file> [display] 499*4882a593Smuzhiyun mlanutl mlanX getcfgchanlist 500*4882a593Smuzhiyun mlanutl mlanX authtype [n] 501*4882a593Smuzhiyun mlanutl mlanX autotdls [n] 502*4882a593Smuzhiyun mlanutl mlanX tdls_idle_time [n] 503*4882a593Smuzhiyun mlanutl uapX dfs_offload [n] 504*4882a593Smuzhiyun mlanutl mlanX bandcfg [l] [m] [n] 505*4882a593Smuzhiyun mlanutl mlanX bcninterval [n] 506*4882a593Smuzhiyun mlanutl wfdX bssrole [l] 507*4882a593Smuzhiyun mlanutl mlanX cfgdata <register type> [<conf file>] 508*4882a593Smuzhiyun mlanutl mlanX cfpcode [m] [n] 509*4882a593Smuzhiyun mlanutl mlanX changraph [<load | anpi | anpiload> <loops>] 510*4882a593Smuzhiyun mlanutl mlanX coex_rx_winsize [m] 511*4882a593Smuzhiyun mlanutl mlanX countrycode [l] 512*4882a593Smuzhiyun 513*4882a593Smuzhiyun mlanutl mlanX cfpinfo 514*4882a593Smuzhiyun mlanutl uapX cfpinfo 515*4882a593Smuzhiyun 516*4882a593Smuzhiyun mlanutl mlanX customie [[[<index>] <mask>] <IEBuffer>] 517*4882a593Smuzhiyun mlanutl mlanX deauth [l] 518*4882a593Smuzhiyun mlanutl uapX deauth [l] 519*4882a593Smuzhiyun mlanutl mlanX deepsleep [l] [m] 520*4882a593Smuzhiyun mlanutl mlanX delba <l> [<m> <n>] 521*4882a593Smuzhiyun mlanutl uapX delba <l> [<m> <n>] 522*4882a593Smuzhiyun mlanutl mlanX delts <filename.conf> <section# of tspec> 523*4882a593Smuzhiyun mlanutl mlanX dfstesting [<user_cac_pd> <user_nop_pd> <no_chan_change> <fixed_chan_num><cac_restart>] 524*4882a593Smuzhiyun mlanutl uapX clear_nop 525*4882a593Smuzhiyun mlanutl uapX nop_list 526*4882a593Smuzhiyun mlanutl uapX fake_radar 527*4882a593Smuzhiyun mlanutl uapX getchload <duration> 528*4882a593Smuzhiyun mlanutl dfsX dfs_cac <channel> [<bw> <cac-period>] 529*4882a593Smuzhiyun mlanutl dfsX autodfs <stop | start> [conf_file] 530*4882a593Smuzhiyun mlanutl mlanX dfs_repeater [n] 531*4882a593Smuzhiyun mlanutl mlanX dfs53cfg [n] 532*4882a593Smuzhiyun mlanutl uapX dfs_mode [n] 533*4882a593Smuzhiyun mlanutl mlanX esuppmode [l] [m] [n] 534*4882a593Smuzhiyun mlanutl mlanX extcapcfg [<ext_cap>] 535*4882a593Smuzhiyun mlanutl mlanX fwmacaddr [mac_addr] 536*4882a593Smuzhiyun mlanutl mlanX getkey 537*4882a593Smuzhiyun mlanutl mlanX getscantable [ARGS] 538*4882a593Smuzhiyun mlanutl uapX getstalist 539*4882a593Smuzhiyun mlanutl uapX channel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth/num_pkts> 540*4882a593Smuzhiyun mlanutl uapX channel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth> 541*4882a593Smuzhiyun mlanutl mlanX hostcmd <11n_2040coex.conf> 2040coex 542*4882a593Smuzhiyun mlanutl mlanX hostcmd <auto_tx.conf> auto_tx_get 543*4882a593Smuzhiyun mlanutl mlanX hostcmd <auto_tx.conf> auto_tx_unreg 544*4882a593Smuzhiyun mlanutl mlanX hostcmd <bg_scan.conf> bgscfg 545*4882a593Smuzhiyun 546*4882a593Smuzhiyun mlanutl mlanX hostcmd <pkt_coalescing.conf> coalesce_cfg 547*4882a593Smuzhiyun mlanutl mlanX hostcmd <ed_mac_ctrl.conf> ed_mac_ctrl 548*4882a593Smuzhiyun mlanutl mlanX hostcmd <crypto_test.conf> crypto_test 549*4882a593Smuzhiyun mlanutl mlanX hostcmd <auto_tx.conf> nat_keep_alive 550*4882a593Smuzhiyun mlanutl mlanX hostcmd <pad_cfg.conf> pad_cfg_get 551*4882a593Smuzhiyun mlanutl mlanX hostcmd <pad_cfg.conf> pad_cfg_set 552*4882a593Smuzhiyun mlanutl mlanX hostcmd <requesttpc.conf> requesttpc 553*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> mode_get 554*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> mode_timeshare 555*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> mode_spatial 556*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> mode_none 557*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> mode_bca 558*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> gpio_cfg 559*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> external_coex_config 560*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> external_coex_pta_config 561*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> external_coex_uart_config 562*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> generictime 563*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> a2dptime 564*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> inquirytim 565*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> ap_generictime 566*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> ap_a2dptime 567*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> ap_inquirytime 568*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> get_bca_arb_config 569*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> set_en_bca_arb_config 570*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> set_dis_bca_arb_config 571*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> set_wlan_traffic_priority 572*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> get_wlan_traffic_priority 573*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> get_wlan_stats 574*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> get_15_4_stats 575*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> get_bt_stats 576*4882a593Smuzhiyun mlanutl mlanX hostcmd <coex_int_api.conf> get_ble_stats 577*4882a593Smuzhiyun mlanutl mlanX hostcmd <sdio_pulldown.conf> sdio_pulldown_disable 578*4882a593Smuzhiyun mlanutl mlanX hostcmd <sdio_pulldown.conf> sdio_pulldown_get 579*4882a593Smuzhiyun mlanutl mlanX hostcmd <sdio_pulldown.conf> sdio_pulldown_set 580*4882a593Smuzhiyun mlanutl mlanX hostcmd <subevent.conf> subevent_get 581*4882a593Smuzhiyun mlanutl mlanX hostcmd <subevent.conf> subevent_set 582*4882a593Smuzhiyun mlanutl mlanX hostcmd <txpwrlimit_cfg.conf> txpwrlimit_2g_cfg_set 583*4882a593Smuzhiyun mlanutl mlanX hostcmd <txpwrlimit_cfg.conf> txpwrlimit_5g_cfg_set 584*4882a593Smuzhiyun mlanutl mlanX hostcmd <txpwrlimit_cfg.conf> txpwrlimit_cfg_get 585*4882a593Smuzhiyun mlanutl mlanX hostcmd <txrate_cfg.conf> txrate_cfg_get 586*4882a593Smuzhiyun mlanutl mlanX hostcmd <txrate_cfg.conf> txrate_cfg_set_bg 587*4882a593Smuzhiyun mlanutl mlanX hostcmd <txrate_cfg.conf> txrate_cfg_set_bgn 588*4882a593Smuzhiyun mlanutl mlanX hostcmd <conf> generate_raw <raw_data_file> 589*4882a593Smuzhiyun mlanutl mlanX hostcmd <fwdump.conf> fwdump 590*4882a593Smuzhiyun 591*4882a593Smuzhiyun mlanutl mlanX hostcmd <debug.conf> stop_su 592*4882a593Smuzhiyun mlanutl mlanX hostcmd <debug.conf> start_su 593*4882a593Smuzhiyun 594*4882a593Smuzhiyun mlanutl mlanX hotspotcfg [<bitmap>] 595*4882a593Smuzhiyun mlanutl mlanX hscfg [condition [[GPIO# [gap]]]] [ind_GPIO# [level]] 596*4882a593Smuzhiyun mlanutl mlanX mgmtfilter <mgmtfilter.conf> 597*4882a593Smuzhiyun mlanutl mlanX auto_arp [n] 598*4882a593Smuzhiyun mlanutl mlanX htstreamcfg [n] 599*4882a593Smuzhiyun mlanutl mlanX httxbfcap [cap] 600*4882a593Smuzhiyun mlanutl mlanX httxbfcfg "<action>[;GlobalData/tsData/interval/txPeerData/snrData]" 601*4882a593Smuzhiyun mlanutl mlanX inactivityto <n> <m> <l> [k] 602*4882a593Smuzhiyun mlanutl mlanX ipaddr ["<op>;<ipaddr>"] 603*4882a593Smuzhiyun mlanutl mlanX linkstats 604*4882a593Smuzhiyun mlanutl mlanX listeninterval [l] 605*4882a593Smuzhiyun mlanutl mlanX macctrl [n] 606*4882a593Smuzhiyun mlanutl uapX macctrl [n] 607*4882a593Smuzhiyun mlanutl mlanX memrdwr <address> [value] 608*4882a593Smuzhiyun mlanutl mlanX miracastcfg [l] [m] [n] 609*4882a593Smuzhiyun mlanutl mlanX mgmtframectrl [<mask>] 610*4882a593Smuzhiyun mlanutl uapX mgmtframectrl [<mask>] 611*4882a593Smuzhiyun mlanutl mlanX mgmtframetx <mgmt_frame.conf> 612*4882a593Smuzhiyun mlanutl mlanX mpactrl [tx_ena] [rx_ena] [tx_size] [rx_size] [tx_ports] [rx_ports] 613*4882a593Smuzhiyun mlanutl mlanX netmon [<act> [<filter> <band> <chan> <opt>]] 614*4882a593Smuzhiyun mlanutl mlanX monitormode [l] 615*4882a593Smuzhiyun mlanutl mlanX offchannel [<l> <m> <n> <bandwidth>] 616*4882a593Smuzhiyun mlanutl mlanX otpuserdata <l> 617*4882a593Smuzhiyun mlanutl mlanX passphrase [l] 618*4882a593Smuzhiyun mlanutl mlanX pb_bypass [data_1, data_2, ... data_n] 619*4882a593Smuzhiyun mlanutl mlanX pcieregrw <offset> [value] 620*4882a593Smuzhiyun mlanutl mlanX pciebar0regrw <offset> [value] 621*4882a593Smuzhiyun mlanutl mlanX pmfcfg <mfpc> <mfpr> 622*4882a593Smuzhiyun mlanutl mlanX port_ctrl [n] 623*4882a593Smuzhiyun mlanutl mlanX powercons [n] 624*4882a593Smuzhiyun mlanutl mlanX pscfg [k] [d] [l] ... 625*4882a593Smuzhiyun mlanutl mlanX bcntimeoutcfg [l] [m] [o] [p] 626*4882a593Smuzhiyun mlanutl mlanX psmode [l] 627*4882a593Smuzhiyun 628*4882a593Smuzhiyun mlanutl <interface> robustcoex <gpiocfg> [Enable/Disable] [gpionum] [gpiopolarity] 629*4882a593Smuzhiyun mlanutl mlanX qconfig def [Queue Id: 0-3] 630*4882a593Smuzhiyun mlanutl mlanX qconfig get [Queue Id: 0-3] 631*4882a593Smuzhiyun mlanutl mlanX qconfig set msdu <lifetime in TUs> [Queue Id: 0-3] 632*4882a593Smuzhiyun mlanutl mlanX qoscfg 633*4882a593Smuzhiyun mlanutl mlanX qstatus 634*4882a593Smuzhiyun mlanutl mlanX radioctrl [n] 635*4882a593Smuzhiyun mlanutl mlanX rdeeprom <offset> <length> 636*4882a593Smuzhiyun mlanutl mlanX reassoctrl [n] 637*4882a593Smuzhiyun mlanutl mlanX regioncode [n] 638*4882a593Smuzhiyun mlanutl mlanX regrdwr <type> <offset> [value] 639*4882a593Smuzhiyun mlanutl mlanX rejectaddbareq [conditions] 640*4882a593Smuzhiyun mlanutl uapX rejectaddbareq [conditions] 641*4882a593Smuzhiyun mlanutl mlanX scancfg [t] [m] [p] [s] [a] [b] [c] [ext] [gap] 642*4882a593Smuzhiyun mlanutl mlanX sdcmd52rw <FN no.> <address> [data] 643*4882a593Smuzhiyun mlanutl mlanX sdcmd53rw <FN no.> <address> <mode> <blksize> <blknum> [data1] ... [dataN] 644*4882a593Smuzhiyun mlanutl mlanX sdioclock <n> 645*4882a593Smuzhiyun mlanutl mlanX setuserscan [ARGS] 646*4882a593Smuzhiyun mlanutl mlanX cancelscan 647*4882a593Smuzhiyun mlanutl mlanX sleepparams [<p1> <p2> <p3> <p4> <p5> <p6>] 648*4882a593Smuzhiyun mlanutl mlanX sleeppd [n] 649*4882a593Smuzhiyun mlanutl mlanX sysclock [clk1] [clk2] [clk3] [clk4] 650*4882a593Smuzhiyun mlanutl mlanX tcpackenh [l] [m] 651*4882a593Smuzhiyun mlanutl mlanX tdls_channel_switch <tdls.conf> 652*4882a593Smuzhiyun mlanutl mlanX tdls_config <0/1> 653*4882a593Smuzhiyun mlanutl mlanX tdls_cs_params <tdls.conf> 654*4882a593Smuzhiyun mlanutl mlanX tdls_debug "allow_weak_security" <0/1> 655*4882a593Smuzhiyun mlanutl mlanX tdls_debug "cs_im_return" <0/1> 656*4882a593Smuzhiyun mlanutl mlanX tdls_debug "fail_setup_confirm" <0/1> 657*4882a593Smuzhiyun mlanutl mlanX tdls_debug "higher_lower_mac" <0/1> 658*4882a593Smuzhiyun mlanutl mlanX tdls_debug "ignore_key_expiry" <0/1> 659*4882a593Smuzhiyun mlanutl mlanX tdls_debug "setup_existing_link" <0/1> 660*4882a593Smuzhiyun mlanutl mlanX tdls_debug "setup_with_prohibited" <0/1> 661*4882a593Smuzhiyun mlanutl mlanX tdls_debug "stop_rx" <0/1> 662*4882a593Smuzhiyun mlanutl mlanX tdls_debug "wrong_bss" <0/1> 663*4882a593Smuzhiyun mlanutl mlanX tdls_disable_cs <0/1> 664*4882a593Smuzhiyun mlanutl mlanX tdls_discovery <tdls.conf> 665*4882a593Smuzhiyun mlanutl mlanX tdls_link_status 666*4882a593Smuzhiyun mlanutl mlanX tdls_powermode <tdls.conf> 667*4882a593Smuzhiyun mlanutl mlanX tdls_setinfo <tdls.conf> 668*4882a593Smuzhiyun mlanutl mlanX tdls_setup <tdls.conf> 669*4882a593Smuzhiyun mlanutl mlanX tdls_stop_channel_switch <tdls.conf> 670*4882a593Smuzhiyun mlanutl mlanX tdls_teardown <tdls.conf> 671*4882a593Smuzhiyun mlanutl mlanX thermal 672*4882a593Smuzhiyun mlanutl mlanX ts_status 673*4882a593Smuzhiyun mlanutl mlanX tsf 674*4882a593Smuzhiyun mlanutl mlanX txaggrctrl [m] 675*4882a593Smuzhiyun mlanutl mlanX txbufcfg 676*4882a593Smuzhiyun mlanutl mlanX aggrctrl [l] 677*4882a593Smuzhiyun mlanutl mlanX usbaggrctrl [l] [m] [n] [o] [p] [q] [r] [s] 678*4882a593Smuzhiyun mlanutl mlanX usbresume 679*4882a593Smuzhiyun mlanutl mlanX usbsuspend 680*4882a593Smuzhiyun mlanutl <interface> per_pkt_cfg [tx_rx_control] [type_num] [ether_type1 ether_type2 ...] [tx_rx_control] [type_num] [ether_type1 ether_type2 ...] 681*4882a593Smuzhiyun mlanutl <interface> dot11_txrx <send/recv> <options> 682*4882a593Smuzhiyun mlanutl mlanX txrxhistogram [action] [tx_rx_statics] 683*4882a593Smuzhiyun mlanutl uapX txrxhistogram [action] [tx_rx_statics] 684*4882a593Smuzhiyun mlanutl mlanX wakeupreason 685*4882a593Smuzhiyun mlanutl uapX wakeupreason 686*4882a593Smuzhiyun mlanutl mlanX warmreset 687*4882a593Smuzhiyun mlanutl mlanX wpssession [n] 688*4882a593Smuzhiyun mlanutl mlanX wmmcfg [n] 689*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg [AC_BE AIFSN ECW_MAX ECW_MIN TX_OP] 690*4882a593Smuzhiyun [AC_BK AIFSN ECW_MAX ECW_MIN TX_OP] 691*4882a593Smuzhiyun [AC_VI AIFSN ECW_MAX ECW_MIN TX_OP] 692*4882a593Smuzhiyun [AC_VO AIFSN ECW_MAX ECW_MIN TX_OP] 693*4882a593Smuzhiyun mlanutl mlanX wwscfg [m] 694*4882a593Smuzhiyun mlanutl p2pX cfg_noa [h] [i] [j] [k] [l] 695*4882a593Smuzhiyun mlanutl p2pX cfg_opp_ps [m] [n] 696*4882a593Smuzhiyun mlanutl mlanX get_sensor_temp 697*4882a593Smuzhiyun mlanutl <inteface> indrstcfg <ir_mode> [gpio_pin] 698*4882a593Smuzhiyun 699*4882a593Smuzhiyun 700*4882a593Smuzhiyun mlanutl uapX ctrldeauth <n> 701*4882a593Smuzhiyun 702*4882a593Smuzhiyun mlanutl mlanX/uapX bootsleep <1/0> 703*4882a593Smuzhiyun 704*4882a593Smuzhiyun mlanutl mlanX ssu [mode] [ssu file] 705*4882a593Smuzhiyun 706*4882a593Smuzhiyun mlanutl mlanX csi <disable/enable (config file)> 707*4882a593Smuzhiyun 708*4882a593Smuzhiyun mlanutl mlanX arb [mode] 709*4882a593Smuzhiyun 710*4882a593Smuzhiyun mlanutl mlanX dmcs <subcmd> [value] 711*4882a593Smuzhiyun 712*4882a593Smuzhiyun mlanutl mlanX/uapX range_ext [mode] 713*4882a593Smuzhiyun mlanutl mlanX twt_setup [config/twt.conf] 714*4882a593Smuzhiyun mlanutl mlanX twt_teardown [config/twt.conf] 715*4882a593Smuzhiyun mlanutl <interface> rx_abort_cfg [enable] [rssi_threshold] 716*4882a593Smuzhiyun mlanutl <interface> rx_abort_cfg_ext [enable] [margin ceil_thresh] 717*4882a593Smuzhiyun mlanutl <interface> tx_ampdu_prot_mode [mode] 718*4882a593Smuzhiyun mlanutl <interface> rate_adapt_cfg [low_thresh high_thresh timer_interval] 719*4882a593Smuzhiyun mlanutl <interface> cck_desense_cfg [mode] [margin ceil_thresh] [num_on_intervals num_off_intervals] 720*4882a593Smuzhiyun mlanutl mlanX/uapX lpm [mode] 721*4882a593Smuzhiyun mlanutl <interface> dot11mc_unassoc_ftm_cfg [enable] 722*4882a593Smuzhiyun mlanutl mlanX tp_state [mode] [drop_point] 723*4882a593Smuzhiyun mlanutl mlanX/uapX clocksync [j][k] [l] [m] [n] 724*4882a593Smuzhiyun mlanutl mlanX/uapX gettsfinfo [j] 725*4882a593Smuzhiyun mlanutl uapX backupchan [j] 726*4882a593Smuzhiyun mlanutl uapX targetchan [j] 727*4882a593Smuzhiyun mlanutl mlanX ips_cfg [1/0] 728*4882a593Smuzhiyun mlanutl mlanX/uapX mcast_aggr_group [action] [mcast_addr] 729*4882a593Smuzhiyun mlanutl mlanX/uapX mc_aggr_cfg [i][j] 730*4882a593Smuzhiyun mlanutl uapX mcast_tx <mcast_tx.conf> 731*4882a593Smuzhiyun mlanutl <interface> getuuid 732*4882a593Smuzhiyun 733*4882a593SmuzhiyunDESCRIPTION 734*4882a593Smuzhiyun Those commands are used to send additional commands to the NXP MLAN 735*4882a593Smuzhiyun card via the Linux device driver. 736*4882a593Smuzhiyun 737*4882a593Smuzhiyun The mlanX parameter specifies the network device that is to be used to 738*4882a593Smuzhiyun perform this command on. It could be mlan0, mlan1 etc. 739*4882a593Smuzhiyun 740*4882a593Smuzhiyunverext 741*4882a593Smuzhiyun Retrieve and display an extended version string from the firmware 742*4882a593Smuzhiyun 743*4882a593Smuzhiyun Usage: 744*4882a593Smuzhiyun mlanutl mlanX verext [#] 745*4882a593Smuzhiyun 746*4882a593Smuzhiyun where [#] is an optional argument to retrieve a specific version string, 747*4882a593Smuzhiyun omission of the argument retrieves the 0 indexed string. 748*4882a593Smuzhiyun 749*4882a593Smuzhiyunversion 750*4882a593Smuzhiyun This is used to get the current version of the driver and the firmware. 751*4882a593Smuzhiyun 752*4882a593Smuzhiyundrvdbg 753*4882a593Smuzhiyun This command is used to set/get the bit masks of driver debug message control. 754*4882a593Smuzhiyun 755*4882a593Smuzhiyun Usage: 756*4882a593Smuzhiyun mlanutl mlanX drvdbg [n] 757*4882a593Smuzhiyun 758*4882a593Smuzhiyun Where the parameter <n> is the generic debug message control bit mask. 759*4882a593Smuzhiyun The following types of driver debug messages can be dynamically enabled or 760*4882a593Smuzhiyun disabled by setting or clearing the corresponding bits, 761*4882a593Smuzhiyun bit 0: MMSG PRINTM(MMSG,...) 762*4882a593Smuzhiyun bit 1: MFATAL PRINTM(MFATAL,...) 763*4882a593Smuzhiyun bit 2: MERROR PRINTM(MERROR,...) 764*4882a593Smuzhiyun bit 3: MDATA PRINTM(MDATA,...) 765*4882a593Smuzhiyun bit 4: MCMND PRINTM(MCMND,...) 766*4882a593Smuzhiyun bit 5: MEVENT PRINTM(MEVENT,...) 767*4882a593Smuzhiyun bit 6: MINTR PRINTM(MINTR,...) 768*4882a593Smuzhiyun bit 7: MIOCTL PRINTM(MIOCTL,...) 769*4882a593Smuzhiyun ... 770*4882a593Smuzhiyun bit 16: MDAT_D PRINTM(MDAT_D,...), DBG_HEXDUMP(MDAT_D,...) 771*4882a593Smuzhiyun bit 17: MCMD_D PRINTM(MCMD_D,...), DBG_HEXDUMP(MCMD_D,...) 772*4882a593Smuzhiyun bit 18: MEVT_D PRINTM(MEVT_D,...), DBG_HEXDUMP(MEVT_D,...) 773*4882a593Smuzhiyun bit 19: MFW_D PRINTM(MFW_D,...), DBG_HEXDUMP(MFW_D,...) 774*4882a593Smuzhiyun bit 20: MIF_D PRINTM(MIF_D,...), DBG_HEXDUMP(MIF_D,...) 775*4882a593Smuzhiyun ... 776*4882a593Smuzhiyun bit 28: MENTRY PRINTM(MENTRY,...), ENTER(), LEAVE() 777*4882a593Smuzhiyun bit 29: MWARN PRINTM(MWARN,...) 778*4882a593Smuzhiyun bit 30: MINFO PRINTM(MINFO,...) 779*4882a593Smuzhiyun 780*4882a593Smuzhiyun If CONFIG_DEBUG=2, all kinds of debug messages can be configured. 781*4882a593Smuzhiyun 782*4882a593Smuzhiyun If CONFIG_DEBUG=1, all kinds of debug messages can be configured except 783*4882a593Smuzhiyun for MENTRY, MWARN and MINFO. By default MMSG, MFATAL and MERROR are enabled. 784*4882a593Smuzhiyun 785*4882a593Smuzhiyun Some special debug messages, 786*4882a593Smuzhiyun '*' // MLAN driver ISR is called (bit 6 MINTR enabled) 787*4882a593Smuzhiyun '|' // PS awake event is received (bit 5 MEVENT enabled) 788*4882a593Smuzhiyun '_' // PS sleep event is received (bit 5 MEVENT enabled) 789*4882a593Smuzhiyun '+' // PS sleep confirm is sent (bit 5 MEVENT enabled) 790*4882a593Smuzhiyun 791*4882a593Smuzhiyun Examples: 792*4882a593Smuzhiyun mlanutl mlan0 drvdbg : Get the current driver debug masks 793*4882a593Smuzhiyun mlanutl mlan0 drvdbg 0 : Disable all the debug messages 794*4882a593Smuzhiyun mlanutl mlan0 drvdbg 7 : Enable MMSG, MFATAL and MERROR messages 795*4882a593Smuzhiyun mlanutl mlan0 drvdbg 0x20037 : Enable MMSG, MFATAL, MEEROR, 796*4882a593Smuzhiyun MCMND, MEVENT and MCMD_D messages 797*4882a593Smuzhiyun mlanutl mlan0 drvdbg -1 : Enable all the debug messages 798*4882a593Smuzhiyun 799*4882a593Smuzhiyunhostcmd generate_raw 800*4882a593Smuzhiyun This command is used to generate the raw data(hostcommand block) for 801*4882a593Smuzhiyun hostcommand in <conf_file> and write that to file <raw_data_file> 802*4882a593Smuzhiyun 803*4882a593Smuzhiyun Usage: 804*4882a593Smuzhiyun mlanutl mlanX hostcmd <conf_file> generate_raw <raw_data_file> 805*4882a593Smuzhiyun 806*4882a593Smuzhiyunhostcmd send_om_set 807*4882a593Smuzhiyun This command is used to configure the STAUT to include OM control subfield 808*4882a593Smuzhiyun 809*4882a593Smuzhiyun Usage: 810*4882a593Smuzhiyun mlanutl mlanX hostcmd <send_om.conf> send_om_set 811*4882a593Smuzhiyun 812*4882a593Smuzhiyungetdatarate 813*4882a593Smuzhiyun This command is used to get the data rate being used in last Tx 814*4882a593Smuzhiyun packet and last Rx packet. 815*4882a593Smuzhiyun 816*4882a593Smuzhiyungetlog 817*4882a593Smuzhiyun This command is used to get the statistics available in the station. 818*4882a593Smuzhiyun Following stats are displayed:- 819*4882a593Smuzhiyun dot11MulticastTransmittedFrameCount Increments when the multicast bit is set in the destination 820*4882a593Smuzhiyun MAC address of a successfully transmitted MSDU 821*4882a593Smuzhiyun 822*4882a593Smuzhiyun dot11FailedCount Increments when an MSDU is not transmitted successfully 823*4882a593Smuzhiyun 824*4882a593Smuzhiyun dot11RetryCount Increments when an MSDU is successfully transmitted after one 825*4882a593Smuzhiyun or more retransmissions 826*4882a593Smuzhiyun 827*4882a593Smuzhiyun dot11MultipleRetryCount Increments when an MSDU is successfully transmitted after more 828*4882a593Smuzhiyun than one retransmission 829*4882a593Smuzhiyun 830*4882a593Smuzhiyun dot11FrameDuplicateCount Increments when a frame is received that the Sequence Control 831*4882a593Smuzhiyun field is indicating a duplicate count 832*4882a593Smuzhiyun 833*4882a593Smuzhiyun dot11RTSSuccessCount Increments when a CTS is received in response to an RTS 834*4882a593Smuzhiyun 835*4882a593Smuzhiyun dot11RTSFailureCount Increments when a CTS is not received in response to an RTS 836*4882a593Smuzhiyun 837*4882a593Smuzhiyun dot11ACKFaliureCount Increments when an ACK is not received when expected 838*4882a593Smuzhiyun 839*4882a593Smuzhiyun dot11ReceivedFragmentCount Increments for each successfully received MPDU of type Data or Management 840*4882a593Smuzhiyun 841*4882a593Smuzhiyun dot11MulticastReceivedFrameCount Increments when a MSDU is received with the multicast bit set in the destination MAC address 842*4882a593Smuzhiyun 843*4882a593Smuzhiyun dot11FCSErrorCount Increments when an FCS error is detected in a received MPDU 844*4882a593Smuzhiyun 845*4882a593Smuzhiyun dot11TransmittedFrameCount Increments for each successfully transmitted MSDU 846*4882a593Smuzhiyun 847*4882a593Smuzhiyun dot11WeplcvErrCnt Increment when WEP (use of WEP/TKIP is not recommended anymore)decryption error for key index 0.3 848*4882a593Smuzhiyun 849*4882a593Smuzhiyun beaconReceivedCnt Increments when received beacon 850*4882a593Smuzhiyun 851*4882a593Smuzhiyun beaconMissedCnt Increments when beacon missed 852*4882a593Smuzhiyun 853*4882a593Smuzhiyun dot11TransmittedFrameCount Increments for each successfully transmitted MSDU 854*4882a593Smuzhiyun 855*4882a593Smuzhiyun dot11QosTransmittedFragmentCount Increments when a corresponding UP's MPDU transmitted successfully 856*4882a593Smuzhiyun 857*4882a593Smuzhiyun dot11QosFailedCount Increments when a corresponding UP's MSDU not transmitted successfully 858*4882a593Smuzhiyun 859*4882a593Smuzhiyun dot11QosRetryCount Increment when a corresponding UP's MSDU transmitted successfully after one or more retransmission 860*4882a593Smuzhiyun 861*4882a593Smuzhiyun dot11QosMultipleRetryCount Increments when a corresponding UP's MSDU is successfully transmitted after more than one retransmission 862*4882a593Smuzhiyun 863*4882a593Smuzhiyun dot11QosFrameDuplicateCount Increments when a corresponding UP's frame is received that the Sequence 864*4882a593Smuzhiyun Control field is indicating a duplicate frame 865*4882a593Smuzhiyun 866*4882a593Smuzhiyun dot11QosRTSSuccessCount Increments when a CTS is received in response to an RTS, which is sent for a corresponding UP's Qos frame 867*4882a593Smuzhiyun 868*4882a593Smuzhiyun dot11QosRTSFailureCount Increments when a CTS is not received in response to an RTS, which is sent for a corresponding UP's 869*4882a593Smuzhiyun Qos frame 870*4882a593Smuzhiyun 871*4882a593Smuzhiyun dot11QosACKFailureCount Increments when an ACK is not received when expected for a corresponding UP's Qos frame 872*4882a593Smuzhiyun 873*4882a593Smuzhiyun dot11QosReceivedFragmentCount Increments when a corresponding UP's MPDU received 874*4882a593Smuzhiyun 875*4882a593Smuzhiyun dot11QosTransmittedFrameCount Increments when a corresponding UP's MSDU transmitted 876*4882a593Smuzhiyun 877*4882a593Smuzhiyun dot11QosDiscardedFrameCount Increments when a corresponding UP's MSDU not transmitted successfully 878*4882a593Smuzhiyun 879*4882a593Smuzhiyun dot11QosMPDUsReceivedCount Increments when a corresponding UP's MDPU received 880*4882a593Smuzhiyun 881*4882a593Smuzhiyun 882*4882a593Smuzhiyun dot11QosRetriesReceivedCount Increments when a corresponding UP's MDPU received which retry bit is set 883*4882a593Smuzhiyun 884*4882a593Smuzhiyun dot11RSNAStatsCMACICVErrors Increment when a MPDU discard by CMAC integrity check 885*4882a593Smuzhiyun 886*4882a593Smuzhiyun dot11RSNAStatsCMACReplays Increments when a MPDU discarded by the CMAC replay error 887*4882a593Smuzhiyun 888*4882a593Smuzhiyun dot11RSNAStatsRobustMgmtCCMPReplays Increments when a robust management frame discarded by CCMP replay error 889*4882a593Smuzhiyun 890*4882a593Smuzhiyun dot11RSNAStatsTKIPICVErrors Increments when a MPDU discarded by TKIP ICV error //(use of WEP/TKIP is not recommended anymore) 891*4882a593Smuzhiyun 892*4882a593Smuzhiyun dot11RSNAStatsTKIPReplays Increments when a MPDU discarded by TKIP replay error //(use of WEP/TKIP is not recommended anymore) 893*4882a593Smuzhiyun 894*4882a593Smuzhiyun dot11RSNAStatsCCMPDecryptErrors Increments when a MPDU discarded by CCMP decryption error 895*4882a593Smuzhiyun 896*4882a593Smuzhiyun dot11RSNAStatsCCMPReplays Increments when a MPDU discarded by CCMP replay error 897*4882a593Smuzhiyun 898*4882a593Smuzhiyun dot11TransmittedAMSDUCount Increments when a A-MSDU transmitted successfully 899*4882a593Smuzhiyun 900*4882a593Smuzhiyun dot11FailedAMSDUCount Increments when a A-MSDU not transmitted successfully 901*4882a593Smuzhiyun 902*4882a593Smuzhiyun dot11RetryAMSDUCount Increments when a A-MSDU is successfully transmitted after one or more retransmissions 903*4882a593Smuzhiyun 904*4882a593Smuzhiyun dot11MultipleRetryAMSDUCount Increments when a A-MSDU is successfully transmitted after more than one retransmissions 905*4882a593Smuzhiyun 906*4882a593Smuzhiyun dot11TransmittedOctetsInAMSDUCount Increments by the number of octets in the frame body 907*4882a593Smuzhiyun of an A-MSDU frame when an A-MSDU frame is successfully transmitted 908*4882a593Smuzhiyun 909*4882a593Smuzhiyun dot11AMSDUAckFailureCount Increments when an acknowledgment to an A-MSDU is not received when expected. 910*4882a593Smuzhiyun 911*4882a593Smuzhiyun dot11ReceivedAMSDUCount Increments when a A-MSDU frame received 912*4882a593Smuzhiyun 913*4882a593Smuzhiyun dot11ReceivedOctetsInAMSDUCount Increments by the number of octets in the frame body 914*4882a593Smuzhiyun of an A-MSDU frame when an A-MSDU frame is received 915*4882a593Smuzhiyun 916*4882a593Smuzhiyun dot11TransmittedAMPDUCount Increments when an A-MPDU is transmitted 917*4882a593Smuzhiyun 918*4882a593Smuzhiyun dot11TransmittedMPDUsInAMPDUCount Increments by the number of MPDUs in the A-MPDU when an A-MPDU is transmitted 919*4882a593Smuzhiyun 920*4882a593Smuzhiyun dot11TransmittedOctetsInAMPDUCount Increments by the number of octets in the A-MPDU frame when an A-MPDU frame is transmitted 921*4882a593Smuzhiyun 922*4882a593Smuzhiyun dot11AMPDUReceivedCount Increments when the MAC receives an A-MPDU from the PHY 923*4882a593Smuzhiyun 924*4882a593Smuzhiyun dot11MPDUInReceivedAMPDUCount Increments by the number of MPDUs received in the 925*4882a593Smuzhiyun A-MPDU when an A-MPDU is received 926*4882a593Smuzhiyun 927*4882a593Smuzhiyun dot11ReceivedOctetsInAMPDUCount Increments by the number of octets in the A-MPDU 928*4882a593Smuzhiyun frame when an A-MPDU frame is received 929*4882a593Smuzhiyun 930*4882a593Smuzhiyun dot11AMPDUDelimiterCRCErrorCount Increments when an MPDU delimiter has a CRC error when this is the first 931*4882a593Smuzhiyun CRC error in the received A-MPDU or when the previous delimiter has been decoded correctly 932*4882a593Smuzhiyun 933*4882a593Smuzhiyun Cmd Usage: mlanutl mlanX getlog ext 934*4882a593Smuzhiyun The above command is used with the argument "ext" to display the following error statistics:- 935*4882a593Smuzhiyun 936*4882a593Smuzhiyun rxStuckIssueCount-1 937*4882a593Smuzhiyun rxStuckIssueCount-2 938*4882a593Smuzhiyun rxStuckRecoveryCount 939*4882a593Smuzhiyun rxStuckTsf-1 940*4882a593Smuzhiyun rxStuckTsf-2 941*4882a593Smuzhiyun txWatchdogRecoveryCount 942*4882a593Smuzhiyun txWatchdogTsf-1 943*4882a593Smuzhiyun txWatchdogTsf-2 944*4882a593Smuzhiyun channelSwitchAnnouncementSent 945*4882a593Smuzhiyun channelSwitchState 946*4882a593Smuzhiyun registerClass 947*4882a593Smuzhiyun channelNumber 948*4882a593Smuzhiyun channelSwitchMode 949*4882a593Smuzhiyun RxResetRecoveryCount 950*4882a593Smuzhiyun RxIsr2NotDoneCnt 951*4882a593Smuzhiyun gdmaAbortCnt 952*4882a593Smuzhiyun gResetRxMacCnt 953*4882a593Smuzhiyun gOwnrshpCtlErrCnt 954*4882a593Smuzhiyun gOwnrshpBcnErrCnt 955*4882a593Smuzhiyun gOwnrshpMgtErrCnt 956*4882a593Smuzhiyun gOwnrshpDatErrCnt 957*4882a593Smuzhiyun 958*4882a593Smuzhiyungetsignal 959*4882a593Smuzhiyun This command gets the last and average value of RSSI, SNR and NF of 960*4882a593Smuzhiyun Beacon and Data. 961*4882a593Smuzhiyun Note: This command is available only when STA is connected. 962*4882a593Smuzhiyun 963*4882a593Smuzhiyun where value of m is: 964*4882a593Smuzhiyun 1 -- RSSI (Receive Signal Strength Indication) 965*4882a593Smuzhiyun 2 -- SNR (Signal to Noise Ratio) 966*4882a593Smuzhiyun 3 -- NF (Noise Floor) 967*4882a593Smuzhiyun where value of n is: 968*4882a593Smuzhiyun 1 -- Beacon last 969*4882a593Smuzhiyun 2 -- Beacon average 970*4882a593Smuzhiyun 3 -- Data last 971*4882a593Smuzhiyun 4 -- Data average 972*4882a593Smuzhiyun 973*4882a593Smuzhiyun Examples: 974*4882a593Smuzhiyun mlanutl mlan0 getsignal 1 : Get the RSSI info (beacon last, beacon 975*4882a593Smuzhiyun average, data last and data average) 976*4882a593Smuzhiyun mlanutl mlan0 getsignal 3 4 : Get the NF of data average 977*4882a593Smuzhiyun mlanutl mlan0 getsignal 2 1 : Get the SNR of beacon last 978*4882a593Smuzhiyun mlanutl mlan0 getsignal : Get all of the signal info 979*4882a593Smuzhiyun mlan0 getsignal:-32 -33 -35 -36 67 59 63 56 -99 -92 -98 -92 980*4882a593Smuzhiyun RSSI info: beacon last -32, beacon average -33, data last -35, data average -36 981*4882a593Smuzhiyun SNR info: beacon last 67, beacon average 59, data last 63, data average 56 982*4882a593Smuzhiyun NF info: beacon last -99, beacon average -92, data last -98, data average -92 983*4882a593Smuzhiyun 984*4882a593Smuzhiyungetsignalext 985*4882a593Smuzhiyun This command gets the last and average value of RSSI, SNR and NF of 986*4882a593Smuzhiyun Beacon and Data of spectific antenna path. 987*4882a593Smuzhiyun Note: This command is available only when STA is connected. 988*4882a593Smuzhiyun Driver will enable signalext and collect signal information for one second 989*4882a593Smuzhiyun 990*4882a593Smuzhiyun where value of m is: 991*4882a593Smuzhiyun 1 -- PATH A 992*4882a593Smuzhiyun 2 -- PATH B 993*4882a593Smuzhiyun 3 -- PATH A+B 994*4882a593Smuzhiyun 995*4882a593Smuzhiyun Examples: 996*4882a593Smuzhiyun mlanutl mlan0 getsignalext :Get All path's signal. 997*4882a593Smuzhiyun mlanutl maln0 getsignalext 3 :Get path A+B signal 998*4882a593Smuzhiyun mlanutl maln0 getsignalext 1 :Get path A signal 999*4882a593Smuzhiyun mlanutl mlan0 getsignalext 2 :Get path B signal 1000*4882a593Smuzhiyun 1001*4882a593Smuzhiyun PATH A: -46 -46 -49 -49 65 45 39 42 -111 -91 -88 -91 1002*4882a593Smuzhiyun 1003*4882a593Smuzhiyun PATH A: RSSI info: beacon last -46, beacon average -46, data last -49, data average -49 1004*4882a593Smuzhiyun SNR info: beacon last 65, beacon average 45, data last 39, data average 42 1005*4882a593Smuzhiyun NF info: beacon last -111, beacon average -91, data last -88, data average -91 1006*4882a593Smuzhiyun 1007*4882a593Smuzhiyunsignalextcfg 1008*4882a593Smuzhiyun This command is used to enable/disable signalext 1009*4882a593Smuzhiyun Usage: 1010*4882a593Smuzhiyun mlanutl mlanX signalextcfg [m] 1011*4882a593Smuzhiyun where the value of [m] is: 1012*4882a593Smuzhiyun 1 -- enable signalext in firmware 1013*4882a593Smuzhiyun 0 -- disable signalext in firmware 1014*4882a593Smuzhiyun Examples: 1015*4882a593Smuzhiyun mlanutl mlan0 signalextcfg 1 : Enable signalext in firmware 1016*4882a593Smuzhiyun mlanutl mlan0 signalextcfg 0 : Disable signalext in firmware 1017*4882a593Smuzhiyun 1018*4882a593Smuzhiyungetsignalextv2 1019*4882a593Smuzhiyun This command gets the last and average value of RSSI, SNR and NF of 1020*4882a593Smuzhiyun Beacon and Data of spectific antenna path. 1021*4882a593Smuzhiyun Note: This command is available only when STA is connected. 1022*4882a593Smuzhiyun "mlanutl mlanX signalextcfg 1" command needs to be issued before issuing this command 1023*4882a593Smuzhiyun 1024*4882a593Smuzhiyun where value of m is: 1025*4882a593Smuzhiyun 1 -- PATH A 1026*4882a593Smuzhiyun 2 -- PATH B 1027*4882a593Smuzhiyun 3 -- PATH A+B 1028*4882a593Smuzhiyun 1029*4882a593Smuzhiyun Examples: 1030*4882a593Smuzhiyun mlanutl mlan0 getsignalextv2 :Get All path's signal. 1031*4882a593Smuzhiyun mlanutl maln0 getsignalextv2 3 :Get path A+B signal 1032*4882a593Smuzhiyun mlanutl maln0 getsignalextv2 1 :Get path A signal 1033*4882a593Smuzhiyun mlanutl mlan0 getsignalextv2 2 :Get path B signal 1034*4882a593Smuzhiyun 1035*4882a593Smuzhiyun PATH A: -46 -46 -49 -49 65 45 39 42 -111 -91 -88 -91 1036*4882a593Smuzhiyun 1037*4882a593Smuzhiyun PATH A: RSSI info: beacon last -46, beacon average -46, data last -49, data average -49 1038*4882a593Smuzhiyun SNR info: beacon last 65, beacon average 45, data last 39, data average 42 1039*4882a593Smuzhiyun NF info: beacon last -111, beacon average -91, data last -88, data average -91 1040*4882a593Smuzhiyun 1041*4882a593Smuzhiyunget_txpwrlimit 1042*4882a593Smuzhiyun This command is used to get the txpwrlimit table in FW 1043*4882a593SmuzhiyunUsage: 1044*4882a593Smuzhiyun mlanutl mlanX get_txpwrlimit <n> [raw_data_file] 1045*4882a593Smuzhiyun where <n> 1046*4882a593Smuzhiyun 0: Get 2.4G txpwrlimit table 1047*4882a593Smuzhiyun 0x10: Get 5G sub0 txpwrlimit table 1048*4882a593Smuzhiyun 0x11: Get 5G sub1 txpwrlimit table 1049*4882a593Smuzhiyun 0x12: Get 5G sub2 txpwrlimit table 1050*4882a593Smuzhiyun 0x13: Get 5G sub3 txpwrlimit table 1051*4882a593Smuzhiyun 0x1f: Get all 5G txpwrlimit table 1052*4882a593Smuzhiyun 0xff: Get both 2G and 5G txpwrlimit table 1053*4882a593Smuzhiyun <raw_data_file> driver will save fw raw data to this file. 1054*4882a593Smuzhiyun 1055*4882a593Smuzhiyun Examples: 1056*4882a593Smuzhiyun mlanutl mlan0 get_txpwrlimit 0 : Get 2G txpwrlimit table. 1057*4882a593Smuzhiyun mlanutl mlan0 get_txpwrlimit 0x10 : Get 5G sub band0 txpwrlimit table 1058*4882a593Smuzhiyun mlanutl mlan0 get_txpwrlimit 0xff txpwrlimit.bin : Get both 2G/5G txpwrlimit table and save to txpwrlimit.bin 1059*4882a593Smuzhiyun 1060*4882a593Smuzhiyunaggrpriotbl 1061*4882a593Smuzhiyun This command is used set/get the priority table for AMPDU/AMSDU traffic per tid. 1062*4882a593Smuzhiyun This command can also be used to disable AMPDU/AMSDU for a given tid. 1063*4882a593Smuzhiyun In case of AMPDU this priority table will be used to setup block ack (to make 1064*4882a593Smuzhiyun sure the highest priority tid always uses AMPDU as we have limited AMPDU streams) 1065*4882a593Smuzhiyun 1066*4882a593Smuzhiyun where <m0> <n0> <m1> <n1> ... <m7> <n7> 1067*4882a593Smuzhiyun 1068*4882a593Smuzhiyun <mx> - This is priority for Tid0 for AMPDU packet. A priority could be any 1069*4882a593Smuzhiyun values between 0 - 7, 0xff to disable aggregation. 1070*4882a593Smuzhiyun <nx> - This is priority for Tid0 for AMSDU packet. A priority could be any 1071*4882a593Smuzhiyun values between 0 - 7, 0xff to disable aggregation. 1072*4882a593Smuzhiyun 1073*4882a593Smuzhiyun eg: 1074*4882a593Smuzhiyun mlanutl mlanX aggrpriotbl - This command will get the current Priority table for AMPDU and AMSDU. 1075*4882a593Smuzhiyun <2 2 0 0 1 1 3 3 4 4 5 5 255 255 255 255>. This is read as 1076*4882a593Smuzhiyun <"Prio for AMPDU for Tid0" "Prio for AMSDU for Tid0" 1077*4882a593Smuzhiyun "Prio for AMPDU for Tid1" "Prio for AMSDU for Tid1" and so on 1078*4882a593Smuzhiyun mlanutl mlanX aggrpriotbl 2 2 0 0 1 1 3 3 4 4 5 5 255 255 255 255 - 1079*4882a593Smuzhiyun This will set the priority table for AMPDU and AMSDU 1080*4882a593Smuzhiyun Priority for Tid0/AMPDU = 2, Tid0/AMSDU = 2, Tid1/AMPDU = 0, Tid1/AMSDU = 0 1081*4882a593Smuzhiyun and so on. Aggregation for Tid6 and Tid7 are disabled. 1082*4882a593Smuzhiyun Here higher the priority number, higher the priority (i.e. 7 1083*4882a593Smuzhiyun has higher priority than 6). Similarly for AMSDU. 1084*4882a593Smuzhiyun mlanutl mlanX aggrpriotbl 0xff 2 0xff 0 0xff 1 0xff 3 0xff 4 0xff 5 0xff 0xff 0xff 0xff - This will disable 1085*4882a593Smuzhiyun AMPDU for all the TIDs but will still keep AMSDU enabled to Tid0 to Tid5 1086*4882a593Smuzhiyun 1087*4882a593Smuzhiyun The default setting is 2 255 0 255 1 255 3 255 4 255 5 255 255 255 255 255. 1088*4882a593Smuzhiyun 1089*4882a593Smuzhiyun A delBA should be seen in case a disable happens on a TID for which AMPDU stream 1090*4882a593Smuzhiyun is currently setup. 1091*4882a593Smuzhiyun 1092*4882a593Smuzhiyun Note:- This command should only be issue in disconnected state. 1093*4882a593Smuzhiyun 1094*4882a593Smuzhiyunaddbapara 1095*4882a593Smuzhiyun This command can be used to update the default ADDBA parameters. 1096*4882a593Smuzhiyun 1097*4882a593Smuzhiyun where <m> is <timeout> 1098*4882a593Smuzhiyun <timeout> - This is the block ack timeout for ADDBA request. 1099*4882a593Smuzhiyun 0 : Disable (recommended for throughput test) 1100*4882a593Smuzhiyun 1 - 65535 : Block Ack Timeout in TU 1101*4882a593Smuzhiyun 1102*4882a593Smuzhiyun where <n> is <txwinsize> 1103*4882a593Smuzhiyun <txwinsize> - Window size for ADDBA request. (16 is recommended and default value) 1104*4882a593Smuzhiyun 1105*4882a593Smuzhiyun where <o> is <rxwinsize> 1106*4882a593Smuzhiyun <rxwinsize> - Window size for ADDBA response. (48 is recommended and 32 is default value) 1107*4882a593Smuzhiyun (16 is recommended for IWNCOMM AP in WAPI throughput test) 1108*4882a593Smuzhiyun 1109*4882a593Smuzhiyun Current window size limit for Tx as well as Rx is 1023. 1110*4882a593Smuzhiyun 1111*4882a593Smuzhiyun where <p> is <txamsdu> 1112*4882a593Smuzhiyun <txamsdu> - amsdu support for ADDBA request. (1 is default value) 1113*4882a593Smuzhiyun 0: disable amsdu in ADDBA request 1114*4882a593Smuzhiyun 1: enable amsdu in ADDBA request 1115*4882a593Smuzhiyun 1116*4882a593Smuzhiyun where <q> is <rxamsdu> 1117*4882a593Smuzhiyun <rxamsdu> - amsdu support for ADDBA response. (1 is default value) 1118*4882a593Smuzhiyun 0: disable amsdu in ADDBA response 1119*4882a593Smuzhiyun 1: enable amsdu in ADDBA response 1120*4882a593Smuzhiyun 1121*4882a593Smuzhiyun eg: 1122*4882a593Smuzhiyun mlanutl mlanX addbapara - This command will get the current addba params 1123*4882a593Smuzhiyun mlanutl mlanX addbapara 1000 64 8 0 0 - This will change the ADDBA timeout to (1000 * 1024) us, 1124*4882a593Smuzhiyun txwinsize to 64 and rxwinsize to 8 and disable amdsu in ADDBA request/response. 1125*4882a593Smuzhiyun 1126*4882a593Smuzhiyun The default setting is 65535 16 32 1 1. 1127*4882a593Smuzhiyun 1128*4882a593Smuzhiyun In case the ADDBA timeout value is updated then a ADDBA is sent for all streams 1129*4882a593Smuzhiyun to update the timeout value. 1130*4882a593Smuzhiyun 1131*4882a593Smuzhiyun In case txwinsize and/or rxwinsize is updated, the effect could only be seen on 1132*4882a593Smuzhiyun next ADDBA request/response. The current streams will not be affected with this 1133*4882a593Smuzhiyun change. 1134*4882a593Smuzhiyun 1135*4882a593Smuzhiyun In case of txamsdu/rxamsdu is updated, the effect could only be seen on 1136*4882a593Smuzhiyun next ADDBA request/response. The current streams will not be affected with this 1137*4882a593Smuzhiyun change. AMSDU in AMPDU stream will be enabled when AP support this feature 1138*4882a593Smuzhiyun and AMSDU is enabled in aggrpriotbl. 1139*4882a593Smuzhiyun 1140*4882a593Smuzhiyunaddbareject 1141*4882a593Smuzhiyun This command is used set/get the addbareject table for all the TIDs. 1142*4882a593Smuzhiyun This command can also be used to enable rejection of ADDBA requests for a given tid. 1143*4882a593Smuzhiyun 1144*4882a593Smuzhiyun where <m0> <m1> ... <m7> 1145*4882a593Smuzhiyun 1146*4882a593Smuzhiyun <mX> - This can be 0/1 for TidX. 1 enables rejection of ADDBA request for TidX and 1147*4882a593Smuzhiyun 0 would accept any ADDBAs for TidX. 1148*4882a593Smuzhiyun 1149*4882a593Smuzhiyun eg: 1150*4882a593Smuzhiyun mlanutl mlanX addbareject - This command will get the current table. 1151*4882a593Smuzhiyun [0 0 0 0 0 0 0 0]. ADDBA would be accepted for all TIDs. This is the default state. 1152*4882a593Smuzhiyun 1153*4882a593Smuzhiyun mlanutl mlanX addbareject 0 0 1 1 0 0 0 0 - This command will accept ADDBA requests for 1154*4882a593Smuzhiyun Tid [0,1,4,5,6,7] and reject ADDBA requests for Tid [2,3] 1155*4882a593Smuzhiyun 1156*4882a593Smuzhiyun mlanutl mlanX addbareject 1 1 1 1 1 1 1 1 - This will enable rejection of ADDBA requests for 1157*4882a593Smuzhiyun all Tids. 1158*4882a593Smuzhiyun 1159*4882a593Smuzhiyun Note:- This command should only be issue in disconnected state. 1160*4882a593Smuzhiyun 1161*4882a593Smuzhiyunvhtcfg 1162*4882a593Smuzhiyun This command is used to set and get various 11ac specific configuration 1163*4882a593Smuzhiyun for transmission and reception. For the SET operation, all paramaters 1164*4882a593Smuzhiyun may be applied. For the GET operation, only the first two parameters are applied. 1165*4882a593Smuzhiyun The 6th argument "rx_mcs_set" can be used to disbale/enable 802.11ac. 1166*4882a593Smuzhiyun 1167*4882a593Smuzhiyun where <j> is <band> 1168*4882a593Smuzhiyun <band> - This is the band setting for the vhtcfg 1169*4882a593Smuzhiyun 0: Settings for both 2.4G and 5G bands (for SET operation, 11N BW only) 1170*4882a593Smuzhiyun 1: Settings for 2.4G band (for 11N BW only) 1171*4882a593Smuzhiyun 2: Settings for 5G band 1172*4882a593Smuzhiyun 1173*4882a593Smuzhiyun where <k> is <txrx> 1174*4882a593Smuzhiyun <txrx> - This parameter specifies the configuration of VHT operation for TX or/and VHT capabilities 1175*4882a593Smuzhiyun 0: Unspecified 1176*4882a593Smuzhiyun 1: configuration of VHT capabilities for Tx operations (STA only) 1177*4882a593Smuzhiyun 2: configuration of VHT capabilities for association (STA only) 1178*4882a593Smuzhiyun 3: configuration of VHT capabilities (uAP only) 1179*4882a593Smuzhiyun Note: For the STA, the VHT capabilities configuration is applied in association, 1180*4882a593Smuzhiyun whereas the VHT operations configuration is actually used in Tx. 1181*4882a593Smuzhiyun 1182*4882a593Smuzhiyun where [l] is <bwcfg> 1183*4882a593Smuzhiyun <bwcfg> - This parameter specifies the bandwidth (BW) configuration 1184*4882a593Smuzhiyun applied to the vhtcfg. 1185*4882a593Smuzhiyun If <txrx> is 1/3 (Tx operations), 1186*4882a593Smuzhiyun 0: Tx BW follows the BW (20/40 MHz) from 11N CFG 1187*4882a593Smuzhiyun 1: Tx BW follows the BW (80/160/80+80 MHz) from VHT Capabilities 1188*4882a593Smuzhiyun defined in <vhtcap> below for 5G band. 1189*4882a593Smuzhiyun If <txrx> is 2 (association), 1190*4882a593Smuzhiyun 0: Rx BW follows the BW (20/40 MHz) from 11N CFG 1191*4882a593Smuzhiyun 1: Rx BW follows the BW (80/160/80+80 MHz) from VHT Capabilities 1192*4882a593Smuzhiyun defined in <vhtcap> below for 5G band. 1193*4882a593Smuzhiyun 1194*4882a593Smuzhiyun where [m] is <vhtcap> 1195*4882a593Smuzhiyun <vhtcap> - This parameter specifies the VHT capabilities info if <txrx> is 2 (association) 1196*4882a593Smuzhiyun or the VHT Tx operations if <txrx> is 1 (Tx operations). 1197*4882a593Smuzhiyun The VHT Tx operation should be a subset of VHT capabilities for association. 1198*4882a593Smuzhiyun It is a bitmap and should be used as follows: 1199*4882a593Smuzhiyun 1200*4882a593Smuzhiyun Bit 31-30: Reserved and set to 0 1201*4882a593Smuzhiyun Bit 29: TX antenna pattern consistency 1202*4882a593Smuzhiyun 1: antenna pattern does not change 1203*4882a593Smuzhiyun 0: antenna pattern might change 1204*4882a593Smuzhiyun Bit 28: RX antenna pattern consistency 1205*4882a593Smuzhiyun 1: antenna pattern does not change 1206*4882a593Smuzhiyun 0: antenna pattern might change 1207*4882a593Smuzhiyun Bit 27-26: VHT link adaptation capable 1208*4882a593Smuzhiyun 0: no feedback of VHT MFB from the STA 1209*4882a593Smuzhiyun 1: unsolicted feedback of VHT MFB from the STA 1210*4882a593Smuzhiyun 2: both response and unsolicted feedback of VHT MFB 1211*4882a593Smuzhiyun from the STA 1212*4882a593Smuzhiyun 3: reserved and set to 0 1213*4882a593Smuzhiyun Bit 25-23: Maximum A-MPDU length exponent 1214*4882a593Smuzhiyun Bit 22: +HTC-VHT capable (1: enable. 0 disable) 1215*4882a593Smuzhiyun Bit 21: VHT TXOP PS 1216*4882a593Smuzhiyun Bit 20: MU beamformee capable (1: enable. 0 disable) 1217*4882a593Smuzhiyun Bit 19: MU beamformer capable (1: enable. 0 disable) 1218*4882a593Smuzhiyun Bit 18-16: Number of sounding dimensions (set to maximum-1 1219*4882a593Smuzhiyun if Bit 11 is 1. Otherwise, reserved and set to 0) 1220*4882a593Smuzhiyun Bit 15-13: Compressed steering number of beamformer 1221*4882a593Smuzhiyun antennas supported (set to maximum-1 if Bit 12 is 1. 1222*4882a593Smuzhiyun Otherwise, reserved and set to 0) 1223*4882a593Smuzhiyun Bit 12: SU beamformee capable (1: enable. 0 disable) 1224*4882a593Smuzhiyun Bit 11: SU beamformer capable (1: enable. 0 disable) 1225*4882a593Smuzhiyun Bit 10-8: Rx STBC 1226*4882a593Smuzhiyun 0: no support 1227*4882a593Smuzhiyun 1: support of 1 spatial stream 1228*4882a593Smuzhiyun 2: support of 1-2 streams 1229*4882a593Smuzhiyun 3: support of 1-3 spatial streams 1230*4882a593Smuzhiyun 4: support of 1-4 spatial streams 1231*4882a593Smuzhiyun 5-7: reserved and set to 0 1232*4882a593Smuzhiyun Bit 7: TX STBC (1: enable. 0 disable) 1233*4882a593Smuzhiyun Bit 6: Short GI for 160 and 80+80 MHz (1: enable. 0 disable) 1234*4882a593Smuzhiyun Bit 5: Short GI for 80 MHz (1: enable. 0 disable) 1235*4882a593Smuzhiyun Bit 4: Rx LDPC (1: enable. 0 disable) 1236*4882a593Smuzhiyun Bit 3-2: Supported channel width set. 1237*4882a593Smuzhiyun 0: no support of either 160 or 80+80 MHz. 1238*4882a593Smuzhiyun 1: support of 160 MHz 1239*4882a593Smuzhiyun 2: support of both 160 and 80+80 MHz. 1240*4882a593Smuzhiyun 3: reserved and set to 0. 1241*4882a593Smuzhiyun Bit 1-0: Maximum MPDU length 1242*4882a593Smuzhiyun 0: 3895 octets. 1243*4882a593Smuzhiyun 1: 7991 octets. 1244*4882a593Smuzhiyun 2: 11454 octets. 1245*4882a593Smuzhiyun 3: reserved and set to 0. 1246*4882a593Smuzhiyun 1247*4882a593Smuzhiyun Note: for the STA, if <txrx> is 1 (Tx operations), the bitmap for <vhtcap> may be simplied as follows: 1248*4882a593Smuzhiyun Bit 31-8: Reserved and set to 0 1249*4882a593Smuzhiyun Bit 7: Tx STBC (1: enable. 0 disable) 1250*4882a593Smuzhiyun Bit 6: Reserved and set to 0 1251*4882a593Smuzhiyun Bit 5: Short GI for 80 Mhz (1: enable. 0 disable) 1252*4882a593Smuzhiyun Bit 4: LDPC (1: enable. 0 disable) 1253*4882a593Smuzhiyun Bit 3-0: Reserved and set to 0 1254*4882a593Smuzhiyun 1255*4882a593Smuzhiyun where [n] is <tx_mcs_map>, 1256*4882a593Smuzhiyun <tx_mcs_map> - This parameter specifies the TX MCS map. It may not be used for the STA if <txrx> is 1 (Tx operations). 1257*4882a593Smuzhiyun It is a bitmap and should be used as following 1258*4882a593Smuzhiyun Bit 15-0: MCS map, which is defined as folows: 1259*4882a593Smuzhiyun Bit 15-14: Max MCS for 8 SS 1260*4882a593Smuzhiyun Bit 13-12: Max MCS for 7 SS 1261*4882a593Smuzhiyun Bit 11-10: Max MCS for 6 SS 1262*4882a593Smuzhiyun Bit 9-8: Max MCS for 5 SS 1263*4882a593Smuzhiyun Bit 7-6: Max MCS for 4 SS 1264*4882a593Smuzhiyun Bit 5-4: Max MCS for 3 SS 1265*4882a593Smuzhiyun Bit 3-2: Max MCS for 2 SS 1266*4882a593Smuzhiyun Bit 1-0: Max MCS for 1 SS 1267*4882a593Smuzhiyun 1268*4882a593Smuzhiyun where [o] is <rx_mcs_map>. 1269*4882a593Smuzhiyun <rx_mcs_map> - This parameter specifies the RX MCS map. It may not be used for the STA if <txrx> is 1 (Tx operations). 1270*4882a593Smuzhiyun It is a bitmap with the same sructure as for <tx_mcs_map> 1271*4882a593Smuzhiyun rx_mcs_map = 0xffff : FW will disable 802.11ac 1272*4882a593Smuzhiyun rx_mcs_map = others : FW will enable 802.11ac 1273*4882a593Smuzhiyun 1274*4882a593Smuzhiyun Note: The user setting of vhtcap may be overwritten by the driver 1275*4882a593Smuzhiyun if the setting of those fields is beyond the hardware capabilities. 1276*4882a593Smuzhiyun 1277*4882a593Smuzhiyun Examples: 1278*4882a593Smuzhiyun mlanutl mlan0 vhtcfg 2 1 : Get current VHT configuration in 5GHz for the STA. 1279*4882a593Smuzhiyun mlanutl mlan0 vhtcfg 2 2 : Get maximum VHT configuration in 5GHz for the STA. 1280*4882a593Smuzhiyun mlanutl mlan0 vhtcfg 2 1 1 0x000001f0 1281*4882a593Smuzhiyun : Set the Tx operations configuration in 5GHz for the STA, 1282*4882a593Smuzhiyun Tx BW follows the VHT Capabilities. 1283*4882a593Smuzhiyun mlanutl mlan0 vhtcfg 2 2 0 0x000001f0 0xfff5 0xfffa 1284*4882a593Smuzhiyun : Set the VHT capabilities configuration in 5GHz for the STA, 1285*4882a593Smuzhiyun the Tx supports MCS 0-8 for both 1 and 2 spatial streams, 1286*4882a593Smuzhiyun while the Rx supports MCS 0-9 for both 1 and 2 spatial streams. 1287*4882a593Smuzhiyun mlanutl uap0 vhtcfg 2 3 0 0x000001f0 0xfffa 0xfffa 1288*4882a593Smuzhiyun : Set the current/maximum VHT configuration in 5GHz for the uAP. 1289*4882a593Smuzhiyun Both Tx and Rx supports MCS 0-9 for both 1 and 2 spatial streams. 1290*4882a593Smuzhiyun mlanutl uap0 vhtcfg 2 3 0 0x000001b0 1291*4882a593Smuzhiyun : Set the VHT capability information in 5GHz for the uAP, and keep the Tx/Rx MCS Map same as before. 1292*4882a593Smuzhiyun 1293*4882a593Smuzhiyundyn_bw 1294*4882a593Smuzhiyun This command is used to set/get dynamic bandwidth. 1295*4882a593Smuzhiyun 1296*4882a593Smuzhiyun Usage: 1297*4882a593Smuzhiyun mlanutl mlanX dyn_bw [n] 1298*4882a593Smuzhiyun 1299*4882a593Smuzhiyun where <n> 1300*4882a593Smuzhiyun [BIT0] 1301*4882a593Smuzhiyun 0 = TxInfo Indicated BW Disable 1302*4882a593Smuzhiyun 1 = TxInfo Indicated BW Enable 1303*4882a593Smuzhiyun [BIT1] 1304*4882a593Smuzhiyun 0 = TxInfo Dynamatic BW Disable 1305*4882a593Smuzhiyun 1 = TxInfo Dynamatic BW Enable 1306*4882a593Smuzhiyun [BIT2] 1307*4882a593Smuzhiyun 0 = TxInfo Force send RTS Disable 1308*4882a593Smuzhiyun 1 = TxInfo Force send RTS Enable 1309*4882a593Smuzhiyun [BIT3] 1310*4882a593Smuzhiyun 0 = Mac Dynamic BW Operation Mode Disable (Static BW Operation Mode) 1311*4882a593Smuzhiyun 1 = Mac Dynamic BW Operation Mode Enable 1312*4882a593Smuzhiyun other bits reserved. 1313*4882a593Smuzhiyun 1314*4882a593Smuzhiyun If no parameter provided, get is performed. 1315*4882a593Smuzhiyun 1316*4882a593Smuzhiyun Examples: 1317*4882a593Smuzhiyun mlanutl mlan0 dyn_bw 0x1 : Enable TxInfo Indicated BW 1318*4882a593Smuzhiyun mlanutl mlan0 dyn_bw : get current setting 1319*4882a593Smuzhiyun 1320*4882a593Smuzhiyunhttxcfg 1321*4882a593Smuzhiyun This command is used to configure various 11n specific configuration 1322*4882a593Smuzhiyun for transmit (such as Short GI, Channel BW and Green field support) 1323*4882a593Smuzhiyun 1324*4882a593Smuzhiyun where <m> is <txcfg> 1325*4882a593Smuzhiyun This is a bitmap and should be used as following 1326*4882a593Smuzhiyun Bit 15-8: Reserved set to 0 1327*4882a593Smuzhiyun Bit 7: STBC enable/disable 1328*4882a593Smuzhiyun Bit 6: Short GI in 40 Mhz enable/disable 1329*4882a593Smuzhiyun Bit 5: Short GI in 20 Mhz enable/disable 1330*4882a593Smuzhiyun Bit 4: Green field enable/disable 1331*4882a593Smuzhiyun Bit 3-2: Reserved set to 1 1332*4882a593Smuzhiyun Bit 1: 20/40 Mhz enable disable. 1333*4882a593Smuzhiyun Bit 0: LDPC enable/disable 1334*4882a593Smuzhiyun 1335*4882a593Smuzhiyun When Bit 1 is set then firmware could transmit in 20Mhz or 40Mhz based 1336*4882a593Smuzhiyun on rate adaptation. When this bit is reset then firmware will only 1337*4882a593Smuzhiyun transmit in 20Mhz. 1338*4882a593Smuzhiyun 1339*4882a593Smuzhiyun where <n> is <band> 1340*4882a593Smuzhiyun <band> - This is the band info for <txcfg> settings. 1341*4882a593Smuzhiyun 0: Settings for both 2.4G and 5G bands 1342*4882a593Smuzhiyun 1: Settings for 2.4G band 1343*4882a593Smuzhiyun 2: Settings for 5G band 1344*4882a593Smuzhiyun 1345*4882a593Smuzhiyun Example: 1346*4882a593Smuzhiyun mlanutl mlanX httxcfg 1347*4882a593Smuzhiyun This will display HT Tx configuration for 2.4G and 5G band. 1348*4882a593Smuzhiyun 1349*4882a593Smuzhiyun mlanutl mlanX httxcfg 0x62 1350*4882a593Smuzhiyun This will enable 20/40 and Short GI but will disable Green field for 2.4G and 5G band. 1351*4882a593Smuzhiyun 1352*4882a593Smuzhiyun mlanutl mlanX httxcfg 0x30 1 1353*4882a593Smuzhiyun This will enable Short GI 20 Mhz and Green field for 2.4G band. 1354*4882a593Smuzhiyun 1355*4882a593Smuzhiyun The default value is 0x20 for 2.4G and 0x62 for 5G. 1356*4882a593Smuzhiyun 1357*4882a593Smuzhiyun Note:- If 20/40 MHz support is disabled in htcapinfo, device will not transmit 1358*4882a593Smuzhiyun in 40 MHz even 20/40 MHz is enabled in httxcfg. 1359*4882a593Smuzhiyun 1360*4882a593Smuzhiyunhtcapinfo 1361*4882a593Smuzhiyun This command is used to configure some of parameters in HTCapInfo IE 1362*4882a593Smuzhiyun (such as Short GI, Channel BW, and Green field support) 1363*4882a593Smuzhiyun 1364*4882a593Smuzhiyun where <m> is <capinfo> 1365*4882a593Smuzhiyun <capinfo> - This is a bitmap and should be used as following 1366*4882a593Smuzhiyun Bit 29: Green field enable/disable 1367*4882a593Smuzhiyun Bit 26: Rx STBC Support enable/disable. (As we support 1368*4882a593Smuzhiyun single spatial stream only 1 bit is used for Rx STBC) 1369*4882a593Smuzhiyun Bit 25: Tx STBC support enable/disable. 1370*4882a593Smuzhiyun Bit 24: Short GI in 40 Mhz enable/disable 1371*4882a593Smuzhiyun Bit 23: Short GI in 20 Mhz enable/disable 1372*4882a593Smuzhiyun Bit 22: Rx LDPC enable/disable 1373*4882a593Smuzhiyun Bit 17: 20/40 Mhz enable disable. 1374*4882a593Smuzhiyun Bit 8: Enable/disable 40Mhz Intolarent bit in ht capinfo. 1375*4882a593Smuzhiyun 0 will reset this bit and 1 will set this bit in 1376*4882a593Smuzhiyun htcapinfo attached in assoc request. 1377*4882a593Smuzhiyun All others are reserved and should be set to 0. 1378*4882a593Smuzhiyun 1379*4882a593Smuzhiyun Setting of any other bits will return error. 1380*4882a593Smuzhiyun 1381*4882a593Smuzhiyun where <n> is <band> 1382*4882a593Smuzhiyun <band> - This is the band info for <capinfo> settings. 1383*4882a593Smuzhiyun 0: Settings for both 2.4G and 5G bands 1384*4882a593Smuzhiyun 1: Settings for 2.4G band 1385*4882a593Smuzhiyun 2: Settings for 5G band 1386*4882a593Smuzhiyun 1387*4882a593Smuzhiyun Example: 1388*4882a593Smuzhiyun mlanutl mlanX htcapinfo 1389*4882a593Smuzhiyun This will display HT capabilties information. 1390*4882a593Smuzhiyun If the information for 2.4G and 5G is different, 1391*4882a593Smuzhiyun the first value is for 2.4G and the second value is for 5G. 1392*4882a593Smuzhiyun Otherwise, it will display a single value for both bands. 1393*4882a593Smuzhiyun 1394*4882a593Smuzhiyun mlanutl mlanX htcapinfo 0x1820000 1395*4882a593Smuzhiyun This will enable Short GI, Channel BW to 20/40 and disable Green field support for 2.4G and 5G band. 1396*4882a593Smuzhiyun 1397*4882a593Smuzhiyun mlanutl mlanX htcapinfo 0x800000 2 1398*4882a593Smuzhiyun This will enable Short GI, Channel BW to 20 only, No Rx STBC support and disable Green field support for 5G band. 1399*4882a593Smuzhiyun 1400*4882a593Smuzhiyun The default value is 0x4800000 for 2.4G and 0x5820000 for 5G. 1401*4882a593Smuzhiyun 1402*4882a593Smuzhiyun Note:- This command can be issued any time but it will only come to effect from 1403*4882a593Smuzhiyun next association. (as HTCapInfo is sent only during Association). 1404*4882a593Smuzhiyun 1405*4882a593Smuzhiyun11axcfg 1406*4882a593Smuzhiyun This command is used to config 11ax HE capability using conf file. 1407*4882a593Smuzhiyun 1408*4882a593Smuzhiyun Usage: 1409*4882a593Smuzhiyun mlanutl mlanX 11axcfg [conf file] 1410*4882a593Smuzhiyun 1411*4882a593Smuzhiyun Example: 1412*4882a593Smuzhiyun mlanutl mlan0 11axcfg config/11axcfg.conf 1413*4882a593Smuzhiyun mlanutl uap0 11axcfg config/11axcfg.conf 1414*4882a593Smuzhiyun 1415*4882a593Smuzhiyun11axcmd 1416*4882a593Smuzhiyun This command is used to config 11ax HE capability using command. 1417*4882a593Smuzhiyun 1418*4882a593Smuzhiyun Usage: 1419*4882a593Smuzhiyun mlanutl <mlanX|uapX> 11axcmd <subcmd> [value_1] [value_2] 1420*4882a593Smuzhiyun <subcmd = obss_pd_offset > : spatial reuse configuration 1421*4882a593Smuzhiyun set obss_pd offset, [value_1] = NON_SRG_OffSET, [value_2] = SRG_OFFSET 1422*4882a593Smuzhiyun 1423*4882a593Smuzhiyun <subcmd = enable_sr > : spatial reuse configuration 1424*4882a593Smuzhiyun control SR, [value_1]= 1 is enable SR, [value_1] = 0 is disable SR 1425*4882a593Smuzhiyun 1426*4882a593Smuzhiyun <subcmd = beam_change > : enable/disable beam change 1427*4882a593Smuzhiyun enable beam_change when [value_1 = 0] 1428*4882a593Smuzhiyun disable beam_change when [value_1 = 1] 1429*4882a593Smuzhiyun 1430*4882a593Smuzhiyun <subcmd = enable_htc > : enable/disable HTC transmission 1431*4882a593Smuzhiyun enable transmission of HTC when [value_1 = 1] 1432*4882a593Smuzhiyun disable transmission of HTC when [value_1 = 0] 1433*4882a593Smuzhiyun 1434*4882a593Smuzhiyun <subcmd = txop_rts > : set/get RTS threshold 1435*4882a593Smuzhiyun This subcmd applies to uapX only. uAP uses it to manage the RTS/CTS used by associated non-AP HE STA 1436*4882a593Smuzhiyun set TXOP duration RTS Threshold when [value_1 = <threshold>]. If <threshold> = 1023, disable TXOP duration RTS 1437*4882a593Smuzhiyun get TXOP duration RTS Threshold without value_1 and value_2 1438*4882a593Smuzhiyun Where <threshold> is: 1439*4882a593Smuzhiyun Bit 0-9: TXOP RTS Threshold 1440*4882a593Smuzhiyun <subcmd = tx_omi > : set/get omi value 1441*4882a593Smuzhiyun used for OMI transmission in MAC header HTC+ field, please see 11ax spec for OMI definition 1442*4882a593Smuzhiyun set OMI when [value_1 = <omi>], where <omi> is defined as: 1443*4882a593Smuzhiyun Bit 0-2: Rx NSS 1444*4882a593Smuzhiyun Bit 3-4: Channel Width 1445*4882a593Smuzhiyun Bit 6 : Tx NSTS (applies to client mode only) 1446*4882a593Smuzhiyun All other bits are not supported currently. 1447*4882a593Smuzhiyun get OMI without value_1 and value_2 1448*4882a593Smuzhiyun 1449*4882a593Smuzhiyun <subcmd = obssnbru_toltime> : set/get OBSS narrow band RU tolerance time value in seconds 1450*4882a593Smuzhiyun set tolerance time when [value_1 = <time>], where <time> indicates: 1451*4882a593Smuzhiyun the minimum time that needs to pass since the reception of the last beacon frame from an OBSS AP that 1452*4882a593Smuzhiyun did not indicate tolerance to narrow bandwidth RU in OFDMA before the STA transmits an HE TB PPDU in a 1453*4882a593Smuzhiyun 26-tine RU allocated by a trigger frame from the HE AP. 1454*4882a593Smuzhiyun valid value range [1..3600] in seconds. Any value more than 3600 will disable this feature. 1455*4882a593Smuzhiyun By default this feature is currently disabled. 1456*4882a593Smuzhiyun Example : 1457*4882a593Smuzhiyun mlanutl mlan0 11axcmd obss_pd_offset 2 3 : set obss_pd offset of spatial reuse, NON_SRG_OffSET = 2, SRG_OFFSET = 3 1458*4882a593Smuzhiyun mlanutl mlan0 11axcmd obss_pd_offset : get obss_pd offset of spatial reuse 1459*4882a593Smuzhiyun mlanutl mlan0 11axcmd enable_sr 1 : enable spatial reuse 1460*4882a593Smuzhiyun mlanutl mlan0 11axcmd beam_change 0 : enable beam change 1461*4882a593Smuzhiyun mlanutl mlan0 11axcmd enable_htc 1 : enable transmission of HTC 1462*4882a593Smuzhiyun mlanutl uap0 11axcmd txop_rts 0x34 : set RTS threshold value to 0x34 1463*4882a593Smuzhiyun mlanutl uap0 11axcmd txop_rts : get RTS threshold value 1464*4882a593Smuzhiyun mlanutl mlan0 11axcmd tx_omi 0x41 : set omi value to 0x41 1465*4882a593Smuzhiyun mlanutl mlan0 11axcmd tx_omi : get omi value 1466*4882a593Smuzhiyun mlanutl mlan0 11axcmd obssnbru_toltime 1800 : set OBSSNBRU tolerance time to 1800 seconds 1467*4882a593Smuzhiyun mlanutl mlan0 11axcmd obssnbru_toltime 3601 : disable OBSSNBRU tolerance time 1468*4882a593Smuzhiyun mlanutl mlan0 11axcmd obssnbru_toltime : get OBSSNBRU tolerance time 1469*4882a593Smuzhiyun 1470*4882a593Smuzhiyuntxratecfg 1471*4882a593Smuzhiyun This command is used to set/get the transmit data rate. 1472*4882a593Smuzhiyun 1473*4882a593Smuzhiyun Note: 1474*4882a593Smuzhiyun 1) The data rate can be set only after association. 1475*4882a593Smuzhiyun 1476*4882a593Smuzhiyun 2) If the reassoc is OFF driver reset the data rate to auto if the connection state is disconnected. 1477*4882a593Smuzhiyun Please note that user has to re-issue the set data rate command if the driver is disconnected. 1478*4882a593Smuzhiyun 1479*4882a593Smuzhiyun 3) If the reassoc is ON driver remembers the data rate set by the user, if the driver is 1480*4882a593Smuzhiyun disconnected user does not have to re-issue the set data rate again. 1481*4882a593Smuzhiyun 1482*4882a593Smuzhiyun 4) Parameter [o] is optional. If [o] is not given, it will be set as 0xffff. 1483*4882a593Smuzhiyun 1484*4882a593Smuzhiyun Where 1485*4882a593Smuzhiyun [l] is <format> 1486*4882a593Smuzhiyun <format> - This parameter specifies the data rate format used in this command 1487*4882a593Smuzhiyun 0: LG 1488*4882a593Smuzhiyun 1: HT 1489*4882a593Smuzhiyun 2: VHT 1490*4882a593Smuzhiyun 3: HE 1491*4882a593Smuzhiyun 0xff: Auto 1492*4882a593Smuzhiyun 1493*4882a593Smuzhiyun [m] is <index> 1494*4882a593Smuzhiyun <index> - This parameter specifies the rate or MCS index 1495*4882a593Smuzhiyun If <format> is 0 (LG), 1496*4882a593Smuzhiyun 0 1 Mbps 1497*4882a593Smuzhiyun 1 2 Mbps 1498*4882a593Smuzhiyun 2 5.5 Mbps 1499*4882a593Smuzhiyun 3 11 Mbps 1500*4882a593Smuzhiyun 4 6 Mbps 1501*4882a593Smuzhiyun 5 9 Mbps 1502*4882a593Smuzhiyun 6 12 Mbps 1503*4882a593Smuzhiyun 7 18 Mbps 1504*4882a593Smuzhiyun 8 24 Mbps 1505*4882a593Smuzhiyun 9 36 Mbps 1506*4882a593Smuzhiyun 10 48 Mbps 1507*4882a593Smuzhiyun 11 54 Mbps 1508*4882a593Smuzhiyun If <format> is 1 (HT), 1509*4882a593Smuzhiyun 0 MCS0 1510*4882a593Smuzhiyun 1 MCS1 1511*4882a593Smuzhiyun 2 MCS2 1512*4882a593Smuzhiyun 3 MCS3 1513*4882a593Smuzhiyun 4 MCS4 1514*4882a593Smuzhiyun 5 MCS5 1515*4882a593Smuzhiyun 6 MCS6 1516*4882a593Smuzhiyun 7 MCS7 1517*4882a593Smuzhiyun 8 MCS8 1518*4882a593Smuzhiyun 9 MCS9 1519*4882a593Smuzhiyun 10 MCS10 1520*4882a593Smuzhiyun 11 MCS11 1521*4882a593Smuzhiyun 12 MCS12 1522*4882a593Smuzhiyun 13 MCS13 1523*4882a593Smuzhiyun 14 MCS14 1524*4882a593Smuzhiyun 15 MCS15 1525*4882a593Smuzhiyun If <format> is 2 (VHT), 1526*4882a593Smuzhiyun 0 MCS0 1527*4882a593Smuzhiyun 1 MCS1 1528*4882a593Smuzhiyun 2 MCS2 1529*4882a593Smuzhiyun 3 MCS3 1530*4882a593Smuzhiyun 4 MCS4 1531*4882a593Smuzhiyun 5 MCS5 1532*4882a593Smuzhiyun 6 MCS6 1533*4882a593Smuzhiyun 7 MCS7 1534*4882a593Smuzhiyun 8 MCS8 1535*4882a593Smuzhiyun 9 MCS9 1536*4882a593Smuzhiyun If <format> is 3 (HE), 1537*4882a593Smuzhiyun 0 MCS0 1538*4882a593Smuzhiyun 1 MCS1 1539*4882a593Smuzhiyun 2 MCS2 1540*4882a593Smuzhiyun 3 MCS3 1541*4882a593Smuzhiyun 4 MCS4 1542*4882a593Smuzhiyun 5 MCS5 1543*4882a593Smuzhiyun 6 MCS6 1544*4882a593Smuzhiyun 7 MCS7 1545*4882a593Smuzhiyun 8 MCS8 1546*4882a593Smuzhiyun 9 MCS9 1547*4882a593Smuzhiyun 10 MCS10 1548*4882a593Smuzhiyun 11 MCS11 1549*4882a593Smuzhiyun [n] is <nss> 1550*4882a593Smuzhiyun <nss> - This parameter specifies the NSS. It is valid for VHT 1551*4882a593Smuzhiyun If <format> is 2 (VHT), 1552*4882a593Smuzhiyun 1 NSS1 1553*4882a593Smuzhiyun 2 NSS2 1554*4882a593Smuzhiyun [n] is <nss> 1555*4882a593Smuzhiyun <nss> - This parameter specifies the NSS. It is valid for HE 1556*4882a593Smuzhiyun If <format> is 3 (HE), 1557*4882a593Smuzhiyun 1 NSS1 1558*4882a593Smuzhiyun 2 NSS2 1559*4882a593Smuzhiyun [o] is <rate setting, only support 9098/9097/9xxx chips> 1560*4882a593Smuzhiyun Bit0 - 1: indicate preambleType 1561*4882a593Smuzhiyun For legacy 11b: preemble type 1562*4882a593Smuzhiyun 00 = long 1563*4882a593Smuzhiyun 01 = short 1564*4882a593Smuzhiyun 10/11 = reserved 1565*4882a593Smuzhiyun For legacy 11g: reserved 1566*4882a593Smuzhiyun For 11n: Green field PPDU indicator 1567*4882a593Smuzhiyun 00 = HT-mix 1568*4882a593Smuzhiyun 01 = HT-GF 1569*4882a593Smuzhiyun 10/11 = reserved. 1570*4882a593Smuzhiyun For 11ac: reserved. 1571*4882a593Smuzhiyun For 11ax: 1572*4882a593Smuzhiyun 00 = HE-SU 1573*4882a593Smuzhiyun 01 = HE-EXT-SU 1574*4882a593Smuzhiyun others are reserved 1575*4882a593Smuzhiyun 1576*4882a593Smuzhiyun Bit 2 - 4 : indicate BW: 1577*4882a593Smuzhiyun For HE ER: 1578*4882a593Smuzhiyun 0 = 242-tone RU 1579*4882a593Smuzhiyun 1 = upper frequency 106-tone RU within the primary 20 MHz 1580*4882a593Smuzhiyun Otherwise: 1581*4882a593Smuzhiyun 0 = 20 MHz 1582*4882a593Smuzhiyun 1 = 40 MHz 1583*4882a593Smuzhiyun 2 = 80 MHz 1584*4882a593Smuzhiyun 3 = 160 MHz 1585*4882a593Smuzhiyun 1586*4882a593Smuzhiyun Bit 5 -6: indicate LTF + GI size 1587*4882a593Smuzhiyun For HT: 1588*4882a593Smuzhiyun 0 = normal 1589*4882a593Smuzhiyun 1 = Short GI 1590*4882a593Smuzhiyun For VHT: 1591*4882a593Smuzhiyun 01 = Short GI 1592*4882a593Smuzhiyun 11 = Short GI and Nsym mod 10=9 1593*4882a593Smuzhiyun 00 = otherwise 1594*4882a593Smuzhiyun For HE: 1595*4882a593Smuzhiyun 0 = 1xHELTF + GI0.8us 1596*4882a593Smuzhiyun 1 = 2xHELTF + GI0.8us 1597*4882a593Smuzhiyun 2 = 2xHELTF + GI1.6us 1598*4882a593Smuzhiyun 3 = 4xHELTF + GI0.8us if DCM = 1 and STBC = 1 1599*4882a593Smuzhiyun 4xHELTF + GI3.2us, otherwise. 1600*4882a593Smuzhiyun 1601*4882a593Smuzhiyun Bit 7: Indicate STBC: 1602*4882a593Smuzhiyun 0 = no STBC 1603*4882a593Smuzhiyun 1 = STBC 1604*4882a593Smuzhiyun 1605*4882a593Smuzhiyun Bit 8: indicate DCM: 1606*4882a593Smuzhiyun 0 = no DCM 1607*4882a593Smuzhiyun 1 = DCM 1608*4882a593Smuzhiyun 1609*4882a593Smuzhiyun Bit 9: indicate coding: 1610*4882a593Smuzhiyun 0 = BCC 1611*4882a593Smuzhiyun 1 = LDPC 1612*4882a593Smuzhiyun 1613*4882a593Smuzhiyun Bit 10 - 11: reserved. 1614*4882a593Smuzhiyun 1615*4882a593Smuzhiyun Bit 12 - 13: Indicate maxPE 1616*4882a593Smuzhiyun Max packet extension 1617*4882a593Smuzhiyun 0 - 0 usec 1618*4882a593Smuzhiyun 1 - 8 usec 1619*4882a593Smuzhiyun 2 - 16 usec. 1620*4882a593Smuzhiyun 1621*4882a593Smuzhiyun Bit 14 - 15: reserved. 1622*4882a593Smuzhiyun 1623*4882a593Smuzhiyun 0xffff: Auto 1624*4882a593Smuzhiyun 1625*4882a593Smuzhiyun Examples: 1626*4882a593Smuzhiyun mlanutl mlan0 txratecfg : Read the current data rate setting 1627*4882a593Smuzhiyun mlanutl mlan0 txratecfg 0 3 : Set fixed Tx rate to 11 Mbps 1628*4882a593Smuzhiyun mlanutl mlan0 txratecfg 0 11 : Set fixed Tx rate to 54 Mbps 1629*4882a593Smuzhiyun mlanutl mlan0 txratecfg 1 3 : Set fixed Tx rate to MCS3 1630*4882a593Smuzhiyun mlanutl mlan0 txratecfg 2 3 2 : Set fixed Tx rate to MCS3 for NSS2 1631*4882a593Smuzhiyun mlanutl mlan0 txratecfg 3 3 2 : Set 11AX fixed Tx rate to MCS3 for NSS2 1632*4882a593Smuzhiyun mlanutl mlan0 txratecfg 3 5 2 0x2282 : Set 11AX fixed Tx rate to MCS5 for NSS2, and Preamble type is 2, BW is 0, LTF + GI size 0 1633*4882a593Smuzhiyun STBC is 1, DMC is 0, Coding is 1, maxPE is 2. 1634*4882a593Smuzhiyun mlanutl mlan0 txratecfg 0xff : Disable fixed rate and uses auto rate 1635*4882a593Smuzhiyun 1636*4882a593Smuzhiyunhssetpara 1637*4882a593Smuzhiyun This command is used to set host sleep parameters. 1638*4882a593Smuzhiyun 1639*4882a593Smuzhiyun Usage: 1640*4882a593Smuzhiyun mlanutl mlanX hssetpara condition [GPIO# [gap]] (optional)[type ind_GPIO# [level]] (optional)[type event_force_ignore event_use_ext_gap ext_gap [gpio_wave]] (optional)[type hs_wakeup_interval] (optional)[type min_wake_holdoff] 1641*4882a593Smuzhiyun 1642*4882a593Smuzhiyun This command takes one (condition), two (condition and GPIO#) or three 1643*4882a593Smuzhiyun (condition, GPIO# and gap).If more than three parameters, it can set different or multiple features indicating by type. 1644*4882a593Smuzhiyun 1645*4882a593Smuzhiyun If type=1, it will set indication gpio and its level. And the parameter format will be (condition, GPIO#,gap and type,ind_GPIO#) or 1646*4882a593Smuzhiyun (condition, GPIO#, gap, type, ind_GPIO# and level). 1647*4882a593Smuzhiyun 1648*4882a593Smuzhiyun If type=2, it will set extend host sleep wakup method. And the parameter format will be (condition, GPIO#, gap, type, force_ignore, 1649*4882a593Smuzhiyun use_ext_gap, ext_gap [gpio_wave]). gpio_wave parameter is optional and default value is 0(falling edge). Each bit of 1650*4882a593Smuzhiyun event_force_ignore and event_use_ext_gap will be defined to one same event, and set one same event(same bit) in those two 1651*4882a593Smuzhiyun parameters is not allowed. Set bit(s) in event_force_ignore means the event(s) will be forced ignore in firmware silently. 1652*4882a593Smuzhiyun Set bit(s) in event_use_ext_gap mean the event(s) will use extend gap to inform host. Not set means not handle. 1653*4882a593Smuzhiyun 1654*4882a593Smuzhiyun If type=3, it will set hs_wakeup_interval. 1655*4882a593Smuzhiyun 1656*4882a593Smuzhiyun If no parameter provided, get is performed. 1657*4882a593Smuzhiyun 1658*4882a593Smuzhiyun where Condition is: 1659*4882a593Smuzhiyun bit 0 = 1 -- broadcast data 1660*4882a593Smuzhiyun bit 1 = 1 -- unicast data 1661*4882a593Smuzhiyun bit 2 = 1 -- mac event 1662*4882a593Smuzhiyun bit 3 = 1 -- multicast data 1663*4882a593Smuzhiyun bit 6 = 1 -- Wakeup when mgmt frame received. 1664*4882a593Smuzhiyun Bit 31 = 1 -- Don't wakeup when IPV6 packet received. 1665*4882a593Smuzhiyun 1666*4882a593Smuzhiyun The host sleep mode will be canceled if condition is set to -1. The default is 0x7. 1667*4882a593Smuzhiyun 1668*4882a593Smuzhiyun where GPIO is the pin number of GPIO used to wakeup the host. It could be any valid 1669*4882a593Smuzhiyun GPIO pin# (e.g. 0-7) or 0xff (interface, e.g. SDIO will be used instead). 1670*4882a593Smuzhiyun The default is 0xff. 1671*4882a593Smuzhiyun 1672*4882a593Smuzhiyun where Gap is the gap in milliseconds between wakeup signal and wakeup event or 0xff 1673*4882a593Smuzhiyun for special setting (host acknowledge required) when GPIO is used to wakeup host. 1674*4882a593Smuzhiyun The default is 200. 1675*4882a593Smuzhiyun 1676*4882a593Smuzhiyun The host sleep set except for cancellation will be blocked if host sleep is 1677*4882a593Smuzhiyun already activated. 1678*4882a593Smuzhiyun 1679*4882a593Smuzhiyun where ind_GPIO# is the pin number of GPIO used to indicate wakeup source. The level on 1680*4882a593Smuzhiyun this GPIO will indicate normal wakeup source or abnormal wakeup source. 1681*4882a593Smuzhiyun 1682*4882a593Smuzhiyun where level is used to set level(0/1) on ind_GPIO# pin for indication normal wakeup source. 1683*4882a593Smuzhiyun The opposite level will indicate abnormal wakeup source. The default value is 0. 1684*4882a593Smuzhiyun 1685*4882a593Smuzhiyun where event_force_ignore is a bitmap,each bit represent one wakeup reason event. Set the bit means this 1686*4882a593Smuzhiyun wakeup reason should be force ignored in firmware. Reset the bit means do not handle this reason. 1687*4882a593Smuzhiyun 1688*4882a593Smuzhiyun where event_use_ext_gap is a bitmap, each bit represent one wakeup reason event. Set the bit means this 1689*4882a593Smuzhiyun wakeup reason should use ext_gap to indicate host. Reset the bit means do not handle this reason. 1690*4882a593Smuzhiyun 1691*4882a593Smuzhiyun where event_force_ignore and event_use_ext_gap have the same wakeup reason event definition of each bit: 1692*4882a593Smuzhiyun bit 0 = 1 --Disconnect 1693*4882a593Smuzhiyun bit 1 = 1 --GTK/iGTK rekey failure 1694*4882a593Smuzhiyun bit 2 = 1 --Eapol 1695*4882a593Smuzhiyun other bits --Reserved 1696*4882a593Smuzhiyun They should not set both for one same wakeup reason. 1697*4882a593Smuzhiyun 1698*4882a593Smuzhiyun where ext_gap is the extend gap based on third parameter Gap. Only valid when use_ext_gap is used. 1699*4882a593Smuzhiyun The total gap is (Gap + (x+1)*ext_gap). x means the bit number(start from 0) of this reason in use_ext_gap. 1700*4882a593Smuzhiyun 1701*4882a593Smuzhiyun where gpio_wave is used to set GPIO wave level for host sleep extend. 0 means falling edge, 1 means rising edge. 1702*4882a593Smuzhiyun This parameter is optional and default value is 0. 1703*4882a593Smuzhiyun 1704*4882a593Smuzhiyun where hs_wakeup_interval is used to set host sleep wakeup interval and the type must set to 3 to indicate 1705*4882a593Smuzhiyun this feature. And the value will round to the nearest multiple dtim*beacon_interval in fw. The unit is milliseconds. 1706*4882a593Smuzhiyun 1707*4882a593Smuzhiyun where min_wake_holdoff is minimum delay between HsActive and HostWake and the type must set to 4 to indicate 1708*4882a593Smuzhiyun this feature. The unit is milliseconds. 1709*4882a593Smuzhiyun 1710*4882a593Smuzhiyun Examples: 1711*4882a593Smuzhiyun mlanutl mlan0 hssetpara -1 : Cancel host sleep mode 1712*4882a593Smuzhiyun mlanutl mlan0 hssetpara 3 : Broadcast and unicast data 1713*4882a593Smuzhiyun Use GPIO and gap set previously 1714*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 3 : Unicast data 1715*4882a593Smuzhiyun Use GPIO 3 and gap set previously 1716*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 : Unicast data 1717*4882a593Smuzhiyun Use GPIO 1 and gap 160 ms 1718*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 0xff : Unicast data 1719*4882a593Smuzhiyun Use interface (e.g. SDIO) 1720*4882a593Smuzhiyun Use gap set previously 1721*4882a593Smuzhiyun mlanutl mlan0 hssetpara 4 3 0xff : MAC event 1722*4882a593Smuzhiyun Use GPIO 3 1723*4882a593Smuzhiyun Special host sleep mode 1724*4882a593Smuzhiyun mlanutl mlan0 hssetpara 1 0xff 0xff : Broadcast data 1725*4882a593Smuzhiyun 1726*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 1 5 1 : Unicast data 1727*4882a593Smuzhiyun Use GPIO 1 1728*4882a593Smuzhiyun Gap 160 ms 1729*4882a593Smuzhiyun type=1 to set indication GPIO feature 1730*4882a593Smuzhiyun Use GPIO 5 to indicate wakeup source 1731*4882a593Smuzhiyun High level on GPIO 5 means this is a normal wakeup 1732*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 1 5 : Unicast data 1733*4882a593Smuzhiyun Use GPIO 1 1734*4882a593Smuzhiyun Gap 160 ms 1735*4882a593Smuzhiyun type=1 to set indication GPIO feature 1736*4882a593Smuzhiyun Use GPIO 5 to indicate wakeup source 1737*4882a593Smuzhiyun Use level set previously. 1738*4882a593Smuzhiyun 1739*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 2 0 0x1 10 1: Unicast data 1740*4882a593Smuzhiyun Use GPIO 1 1741*4882a593Smuzhiyun Gap 160 ms 1742*4882a593Smuzhiyun type=2 to set extend host sleep feature 1743*4882a593Smuzhiyun Force_ignore not used 1744*4882a593Smuzhiyun Disconnect will use extend gap to indicate host 1745*4882a593Smuzhiyun Use gap 170. 1746*4882a593Smuzhiyun Rising edge 1747*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 2 0x1 0 0 0: Unicast data 1748*4882a593Smuzhiyun Use GPIO 1 1749*4882a593Smuzhiyun Gap 160 ms 1750*4882a593Smuzhiyun type=2 to set extend host sleep feature 1751*4882a593Smuzhiyun Falling edge 1752*4882a593Smuzhiyun Force ignore Disconnect 1753*4882a593Smuzhiyun Extend gap not used 1754*4882a593Smuzhiyun Not used. 1755*4882a593Smuzhiyun Falling edge 1756*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 3 400: Unicast data 1757*4882a593Smuzhiyun Use GPIO 1 1758*4882a593Smuzhiyun Gap 160 ms 1759*4882a593Smuzhiyun type=3 to set hs_wakeup_interval feature 1760*4882a593Smuzhiyun hs_wakeup_interval set to 400ms 1761*4882a593Smuzhiyun 1762*4882a593Smuzhiyun mlanutl mlan0 hssetpara 2 1 0xa0 4 800: Unicase data 1763*4882a593Smuzhiyun Use GPIO 1 1764*4882a593Smuzhiyun Gap 160ms 1765*4882a593Smuzhiyun type=4 to set min_wake_holdoff feature 1766*4882a593Smuzhiyun min_wake_holdoff set to 800ms 1767*4882a593Smuzhiyun 1768*4882a593Smuzhiyun Note: The parameters will be saved in the driver and be used when host suspends. 1769*4882a593Smuzhiyun The ind_GPIO# and level parameters only work with specific board and firmware. 1770*4882a593Smuzhiyunmefcfg 1771*4882a593Smuzhiyun This command is used to set MEF settings. 1772*4882a593Smuzhiyun 1773*4882a593Smuzhiyun Usage: 1774*4882a593Smuzhiyun mlanutl mlanX mefcfg <mef.conf> 1775*4882a593Smuzhiyun 1776*4882a593Smuzhiyun Where the parameter is: 1777*4882a593Smuzhiyun mef.conf : The configuration file specifying the MEF settings. 1778*4882a593Smuzhiyun 1779*4882a593Smuzhiyun Example: 1780*4882a593Smuzhiyun mlanutl mlan0 mefcfg config/mef.conf 1781*4882a593Smuzhiyuncloud_keep_alive 1782*4882a593Smuzhiyun This command is used to start/stop send keep alive packet which set from host.And reset TCP connection. 1783*4882a593Smuzhiyun 1784*4882a593Smuzhiyun Usage: 1785*4882a593Smuzhiyun mlanutl mlanX cloud_keep_alive <keep_alive.conf> <start/stop/reset> 1786*4882a593Smuzhiyun 1787*4882a593Smuzhiyun where <start/stop/reset> 1788*4882a593Smuzhiyun start means set cloud keep alive packet and paramters to firmware. stop means stop firmware from sending keep alive packet.reset will stop and reset TCP connection when host resume. 1789*4882a593Smuzhiyun 1790*4882a593Smuzhiyun Examples: 1791*4882a593Smuzhiyun mlanutl mlan0 cloud_keep_alive keep_alive.conf start 1792*4882a593Smuzhiyun mlanutl mlan0 cloud_keep_alive keep_alive.conf stop 1793*4882a593Smuzhiyun mlanutl mlan0 cloud_keep_alive keep_alive.conf reset 1794*4882a593Smuzhiyunmin_ba_threshold 1795*4882a593Smuzhiyun This command is to set minimum Tx BA setup threshold 1796*4882a593Smuzhiyun 1797*4882a593Smuzhiyun Usage: 1798*4882a593Smuzhiyun mlanutl mlanX min_ba_threshold <n> 1799*4882a593Smuzhiyun 1800*4882a593Smuzhiyun where the parameters are: 1801*4882a593Smuzhiyun <n>: minimum BA Threshold :0-16 (default is 16) 1802*4882a593Smuzhiyun Example: 1803*4882a593Smuzhiyun mlanutl mlan0 min_ba_threshold : get min_ba_threshold value 1804*4882a593Smuzhiyun mlanutl mlan0 min_ba_threshold 10 : set minimum BA threshold to 10 1805*4882a593Smuzhiyun 1806*4882a593Smuzhiyun11dcfg 1807*4882a593Smuzhiyun This command is used to control 11D. No argument is used to get. 1808*4882a593Smuzhiyun 1809*4882a593Smuzhiyun where value of n is: 1810*4882a593Smuzhiyun 0 -- Disable 1811*4882a593Smuzhiyun 1 -- Enable 1812*4882a593Smuzhiyun 1813*4882a593Smuzhiyun Examples: 1814*4882a593Smuzhiyun mlanutl mlan0 11dcfg 1 : Enable 11D 1815*4882a593Smuzhiyun mlanutl mlan0 11dcfg : Get 11D status 1816*4882a593Smuzhiyun 1817*4882a593Smuzhiyun11dclrtbl 1818*4882a593Smuzhiyun This command is used to clear the 11D channel table. 1819*4882a593Smuzhiyun 1820*4882a593Smuzhiyun Usage: 1821*4882a593Smuzhiyun mlanutl mlanX 11dclrtbl 1822*4882a593Smuzhiyun 1823*4882a593Smuzhiyunaddts 1824*4882a593Smuzhiyun Send an ADDTS command to the associated AP. 1825*4882a593Smuzhiyun 1826*4882a593Smuzhiyun Process a given conf file for a specific TSPEC data block. Send the 1827*4882a593Smuzhiyun TSPEC along with any other IEs to the driver/firmware for transmission 1828*4882a593Smuzhiyun in an ADDTS request to the associated AP. 1829*4882a593Smuzhiyun 1830*4882a593Smuzhiyun Return the execution status of the command as well as the ADDTS response 1831*4882a593Smuzhiyun from the AP if any. 1832*4882a593Smuzhiyun 1833*4882a593Smuzhiyun Usage: 1834*4882a593Smuzhiyun mlanutl mlanX addts <filename.conf> <section# of tspec> <timeout(ms)> 1835*4882a593Smuzhiyun 1836*4882a593Smuzhiyunamsduaggrctrl 1837*4882a593Smuzhiyun This command could be used to enable/disable a feature where firmware gives feedback to driver 1838*4882a593Smuzhiyun regarding the optimal AMSDU buffer size to use with the current rate. Firmware will use the 1839*4882a593Smuzhiyun current rate to decide the buffer size we could transmit. The max buffer size will still be 1840*4882a593Smuzhiyun limited by buffer size provided in txbufcfg. (i.e. if the txbufcfg is 4K, then we could only transmit 1841*4882a593Smuzhiyun 4K/2K AMSDU packets, if the txbufcfg is 8K then we could transmit 8k/4k/2k based on current rate) 1842*4882a593Smuzhiyun 1843*4882a593Smuzhiyun If enabled AMSDU buffer size at various rates will be as follows 1844*4882a593Smuzhiyun 1845*4882a593Smuzhiyun 1. Legacy B/G rate. 1846*4882a593Smuzhiyun No AMSDU aggregation. 1847*4882a593Smuzhiyun 1848*4882a593Smuzhiyun 2. BW20 HT Rate: 1849*4882a593Smuzhiyun When TX rate goes down, 1850*4882a593Smuzhiyun MCS 7, 6, 5, 4: 1851*4882a593Smuzhiyun a 8K aggregation size (if TX buffer size is 8K) 1852*4882a593Smuzhiyun b 4K aggregation size (if TX buffer size is 4K) 1853*4882a593Smuzhiyun c 2K aggregation size (if TX buffer size is 2K) 1854*4882a593Smuzhiyun 1855*4882a593Smuzhiyun MCS 3, 2: 1856*4882a593Smuzhiyun a 4K aggregation size (if TX buffer size is 8K/4K) 1857*4882a593Smuzhiyun b 2K aggregation size (if TX buffer size is 2K) 1858*4882a593Smuzhiyun 1859*4882a593Smuzhiyun MCS 1, 0: 1860*4882a593Smuzhiyun a No aggregation 1861*4882a593Smuzhiyun 1862*4882a593Smuzhiyun When TX rate goes up, 1863*4882a593Smuzhiyun MCS 7, 6, 5: 1864*4882a593Smuzhiyun a 8K aggregation size (if TX buffer size is 8K) 1865*4882a593Smuzhiyun b 4K aggregation size (if TX buffer size is 4K) 1866*4882a593Smuzhiyun c 2K aggregation size (if TX buffer size is 2K) 1867*4882a593Smuzhiyun 1868*4882a593Smuzhiyun MCS 4, 3: 1869*4882a593Smuzhiyun a 4K aggregation size (if TX buffer size is 8K/4K) 1870*4882a593Smuzhiyun b 2K aggregation size (if TX buffer size is 2K) 1871*4882a593Smuzhiyun 1872*4882a593Smuzhiyun MCS 2, 1, 0: 1873*4882a593Smuzhiyun a No aggregation 1874*4882a593Smuzhiyun 1875*4882a593Smuzhiyun 3. BW40 HT Rate: 1876*4882a593Smuzhiyun When TX rate goes down, 1877*4882a593Smuzhiyun MCS 7, 6, 5, 4, 3, 2, 1: 1878*4882a593Smuzhiyun a 8K aggregation size (if TX buffer size is 8K) 1879*4882a593Smuzhiyun b 4K aggregation size (if TX buffer size is 4K) 1880*4882a593Smuzhiyun c 2K aggregation size (if TX buffer size is 2K) 1881*4882a593Smuzhiyun 1882*4882a593Smuzhiyun MCS 0: 1883*4882a593Smuzhiyun a No aggregation 1884*4882a593Smuzhiyun 1885*4882a593Smuzhiyun When TX rate goes up, 1886*4882a593Smuzhiyun MCS 7, 6, 5, 4, 3: 1887*4882a593Smuzhiyun a 8K aggregation size (if TX buffer size is 8K) 1888*4882a593Smuzhiyun b 4K aggregation size (if TX buffer size is 4K) 1889*4882a593Smuzhiyun c 2K aggregation size (if TX buffer size is 2K) 1890*4882a593Smuzhiyun 1891*4882a593Smuzhiyun MCS 2, 1, 0: 1892*4882a593Smuzhiyun a No aggregation 1893*4882a593Smuzhiyun 1894*4882a593Smuzhiyun where <n> is 0/1 (for disable/enable) 1895*4882a593Smuzhiyun 1896*4882a593Smuzhiyun eg: 1897*4882a593Smuzhiyun mlanutl mlan0 amsduaggrctrl 1 - Enable this feature 1898*4882a593Smuzhiyun mlanutl mlan0 amsduaggrctrl 0 - Disable this feature 1899*4882a593Smuzhiyun mlanutl mlan0 amsduaggrctrl - This will get the enable/disable flag 1900*4882a593Smuzhiyun and the current AMSDU buffer size). The AMSDU buffer size returned is only 1901*4882a593Smuzhiyun valid after association as before association there is no rate info. 1902*4882a593Smuzhiyun 1903*4882a593Smuzhiyun Note:- This command to enable/disable could be given anytime (before/after 1904*4882a593Smuzhiyun association). This feature is enabled by default by the driver during 1905*4882a593Smuzhiyun initialization. 1906*4882a593Smuzhiyun 1907*4882a593Smuzhiyunantcfg 1908*4882a593Smuzhiyun This command is used to set/get the mode of Tx/Rx path. 1909*4882a593Smuzhiyun 1910*4882a593Smuzhiyun For chip which support STREAM_2X2 1911*4882a593Smuzhiyun where value of m is: 1912*4882a593Smuzhiyun Bit 0 -- Tx Path A or Tx/Rx Path A if [n] is not provided 1913*4882a593Smuzhiyun Bit 1 -- Tx Path B or Tx/Rx Path B if [n] is not provided 1914*4882a593Smuzhiyun Bit 0-1 -- Tx Path A+B or Tx/Rx Path A+B if [n] is not provided 1915*4882a593Smuzhiyun For 9097/9098/NW62X, LOW BYTE for 2G setting 1916*4882a593Smuzhiyun Bit 8 -- Tx Path A or Tx/Rx Path A if [n] is not provided 1917*4882a593Smuzhiyun Bit 9 -- Tx Path B or Tx/Rx Path B if [n] is not provided 1918*4882a593Smuzhiyun Bit 8-9 -- Tx Path A+B or Tx/Rx Path A+B if [n] is not provided 1919*4882a593Smuzhiyun For 9097/9098/NW62X, HIGH BYTE for 5G setting 1920*4882a593Smuzhiyun where value of n is: 1921*4882a593Smuzhiyun Bit 0 -- Rx Path A 1922*4882a593Smuzhiyun Bit 1 -- Rx Path B 1923*4882a593Smuzhiyun Bit 0-1 -- Rx Path A+B 1924*4882a593Smuzhiyun For 9097/9098/NW62X, LOW BYTE for 2G setting 1925*4882a593Smuzhiyun Bit 8 -- Rx Path A 1926*4882a593Smuzhiyun Bit 8 -- Rx Path B 1927*4882a593Smuzhiyun Bit 8-9 -- Rx Path A+B 1928*4882a593Smuzhiyun For 9097/9098/NW62X, HIGH BYTE for 5G setting 1929*4882a593Smuzhiyun The Tx path setting (m) is used for both Tx and Rx if Rx path (n) is not provided. 1930*4882a593Smuzhiyun 1931*4882a593Smuzhiyun Examples: 1932*4882a593Smuzhiyun mlanutl mlan0 antcfg : Get Tx and Rx path 1933*4882a593Smuzhiyun mlanutl mlan0 antcfg 3 : Set Tx and Rx path to A+B 1934*4882a593Smuzhiyun mlanutl mlan0 antcfg 1 3 : Set Tx path to A and Rx path to A+B 1935*4882a593Smuzhiyun mlanutl mlan0 antcfg 0x103 : Set Tx and Rx path to A+B on 2G and Tx and Rx path to A on 5G 1936*4882a593Smuzhiyun mlanutl mlan0 antcfg 0x103 0x103 : Set Tx path to A+B and Rx path to A+B on 2G, and Tx and Rx path to A on 5G 1937*4882a593Smuzhiyun 1938*4882a593Smuzhiyun mlanutl mlan0 antcfg 0x202 : Use 5GHz path B pin for 5G TX/RX and 2GHz path B pin for 2G TX/RX 1939*4882a593Smuzhiyun mlanutl mmlan0 antcfg 0x202 : Use 5GHz path B pin for 5G TX/RX and 2GHz path B pin for 2G TX/RX 1940*4882a593Smuzhiyun 1941*4882a593Smuzhiyun On RD board connection is as follows : 1942*4882a593Smuzhiyun 5GHz path A pin -> AntA 1943*4882a593Smuzhiyun 5GHz path B pin -> AntB 1944*4882a593Smuzhiyun 2GHz path A pin -> AntB 1945*4882a593Smuzhiyun 2GHz path B pin -> AntA 1946*4882a593Smuzhiyun 1947*4882a593Smuzhiyun For chip which support SAD 1948*4882a593Smuzhiyun where value of m is: 1949*4882a593Smuzhiyun Bit 0 -- Tx/Rx antenna 1 1950*4882a593Smuzhiyun Bit 1 -- Tx/Rx antenna 2 1951*4882a593Smuzhiyun ... 1952*4882a593Smuzhiyun 0xFFFF -- Tx/Rx antenna diversity 1953*4882a593Smuzhiyun 1954*4882a593Smuzhiyun where value of n is: 1955*4882a593Smuzhiyun SAD evaluate time interval, only be provided when m = 0xFFFF, default value is 6s(0x1770) 1956*4882a593Smuzhiyun 1957*4882a593Smuzhiyun Examples: 1958*4882a593Smuzhiyun mlanutl mlan0 antcfg : Get Tx/Rx antenna mode 1959*4882a593Smuzhiyun mlanutl mlan0 antcfg 1 : Set Tx/Rx antenna 1 1960*4882a593Smuzhiyun mlanutl mlan0 antcfg 0xFFFF : Set Tx/Rx antenna diversity 1961*4882a593Smuzhiyun mlanutl mlan0 antcfg 0xFFFF 0x1770 : Set antenna evaluate time interval to 6s 1962*4882a593Smuzhiyunmimoswitch 1963*4882a593Smuzhiyun This command is used to do MIMO switch for 11n and 11ac mode and is available for all interfaces. 1964*4882a593Smuzhiyun mlanutl mlanX/uapX mimoswitch [tx_antmode] [rx_antmode] 1965*4882a593Smuzhiyun 1966*4882a593Smuzhiyun This command takes 2 conditions. 1967*4882a593Smuzhiyun The supported options are: 1968*4882a593Smuzhiyun tx_antmode: 1 - ANTENNA A 1969*4882a593Smuzhiyun 2 - ANTENNA B 1970*4882a593Smuzhiyun 3 - ANTENNA AB 1971*4882a593Smuzhiyun rx_antmode: 1 - ANTENNA A 1972*4882a593Smuzhiyun 2 - ANTENNA B 1973*4882a593Smuzhiyun 3 - ANTENNA AB 1974*4882a593Smuzhiyun Examples: 1975*4882a593Smuzhiyun mlanutl mlan0/uap0 mimoswitch 1 1 : set Tx and Rx path to ANTENNA A 1976*4882a593Smuzhiyun mlanutl mlna0/uap0 mimoswitch 2 2 : set Tx and Rx path to ANTENNA B 1977*4882a593Smuzhiyun mlanutl mlan0/uap0 mimoswitch 3 3 : set Tx and Rx path to ANTENNA A+B 1978*4882a593Smuzhiyun mlnautl mlan0/uap0 mimoswitch 1 3 : set Tx path to ANTENNA A and Rx path to ANTENNA A+B 1979*4882a593Smuzhiyun 1980*4882a593Smuzhiyunarpfilter 1981*4882a593Smuzhiyun This command is used to configure the ARP filtering parameters. 1982*4882a593Smuzhiyun 1983*4882a593Smuzhiyun Usage: 1984*4882a593Smuzhiyun mlanutl mlanX arpfilter <arpfilter.conf> 1985*4882a593Smuzhiyun 1986*4882a593Smuzhiyun Where the parameter is: 1987*4882a593Smuzhiyun arpfilter.conf : The configuration file specifying ARP filtering parameters. 1988*4882a593Smuzhiyun 1989*4882a593Smuzhiyun Example: 1990*4882a593Smuzhiyun mlanutl mlan0 arpfilter config/arpfilter.conf 1991*4882a593Smuzhiyun 1992*4882a593Smuzhiyunassocctrl 1993*4882a593Smuzhiyun This command is used to set/get the driver auto assoc, driver auto re-connect 1994*4882a593Smuzhiyun and FW auto re-connect configurations. 1995*4882a593Smuzhiyun 1996*4882a593Smuzhiyun Usage: 1997*4882a593Smuzhiyun mlanutl mlanX assocctrl <j> [k] [l] [m] [n] 1998*4882a593Smuzhiyun 1999*4882a593Smuzhiyun Where the parameters are: 2000*4882a593Smuzhiyun <j>: type : 1/2/3 driver auto assoc/driver auto re-connect/FW auto re-connect 2001*4882a593Smuzhiyun auto assoc takes effect in new connection (e.g. iwconfig essid), 2002*4882a593Smuzhiyun driver will auto retry if association failed; 2003*4882a593Smuzhiyun auto re-connect takes effect when link lost, driver/FW will try 2004*4882a593Smuzhiyun to connect to the same AP 2005*4882a593Smuzhiyun [k]: enable : 1/0 on/off 2006*4882a593Smuzhiyun [l]: retry count : 0x1-0xff The value 0xff means retry forever (default 0xff) 2007*4882a593Smuzhiyun [m]: interval : 0x0-0xff Time gap in seconds (default 10) 2008*4882a593Smuzhiyun [n]: flag : Bit 0: 2009*4882a593Smuzhiyun Set to 1: Firmware should report link-loss to host if AP rejects 2010*4882a593Smuzhiyun authentication/association while reconnecting 2011*4882a593Smuzhiyun Set to 0: Default behavior: Firmware does not report link-loss 2012*4882a593Smuzhiyun to host on AP rejection and continues internally 2013*4882a593Smuzhiyun Bit 1-15: Reserved 2014*4882a593Smuzhiyun The parameter flag is only used for FW auto re-connect 2015*4882a593Smuzhiyun 2016*4882a593Smuzhiyun Examples: 2017*4882a593Smuzhiyun mlanutl mlan0 assocctrl 1 : Get driver auto assoc settings 2018*4882a593Smuzhiyun mlanutl mlan0 assocctrl 2 : Get driver auto re-connect settings 2019*4882a593Smuzhiyun mlanutl mlan0 assocctrl 3 : Get FW auto re-connect settings 2020*4882a593Smuzhiyun mlanutl mlan0 assocctrl 1 1 20 8 : Enable and set driver auto assoc 2021*4882a593Smuzhiyun mlanutl mlan0 assocctrl 2 1 30 10 : Enable and set driver auto re-connect 2022*4882a593Smuzhiyun mlanutl mlan0 assocctrl 3 1 10 10 1 : Enable and set FW auto re-connect 2023*4882a593Smuzhiyun mlanutl mlan0 assocctrl 1 0 : Disable driver auto assoc 2024*4882a593Smuzhiyun mlanutl mlan0 assocctrl 2 0 : Disable driver auto re-connect 2025*4882a593Smuzhiyun mlanutl mlan0 assocctrl 3 0 : Disable FW auto re-connect 2026*4882a593Smuzhiyun 2027*4882a593Smuzhiyunassocessid 2028*4882a593Smuzhiyun This command is used to assoc essid with asynced mode, 2029*4882a593Smuzhiyun and driver will auto retry if driver auto assoc enabled. 2030*4882a593Smuzhiyun 2031*4882a593Smuzhiyun Usage: 2032*4882a593Smuzhiyun mlanutl mlanX assocessid <"[essid]"> 2033*4882a593Smuzhiyun 2034*4882a593Smuzhiyun Where 2035*4882a593Smuzhiyun <"[essid]"> is the essid which need to be associated with asynced mode. 2036*4882a593Smuzhiyun 2037*4882a593Smuzhiyun Examples: 2038*4882a593Smuzhiyun mlanutl mlan0 assocessid "NXP Micro AP" : Associate to the ESSID "NXP Micro AP" 2039*4882a593Smuzhiyun 2040*4882a593Smuzhiyunassocessid_bssid 2041*4882a593Smuzhiyun This command is used to assoc AP by ssid/bssid pair with asynced mode, 2042*4882a593Smuzhiyun and driver will auto retry if driver auto assoc enabled. 2043*4882a593Smuzhiyun 2044*4882a593Smuzhiyun Usage: 2045*4882a593Smuzhiyun mlanutl mlanX assocessid_bssid <"[bssid] [essid]"> 2046*4882a593Smuzhiyun 2047*4882a593Smuzhiyun Where 2048*4882a593Smuzhiyun <"[bssid]"> is the bssid which need to be associated with asynced mode. 2049*4882a593Smuzhiyun <"[essid]"> is the essid which need to be associated with asynced mode. 2050*4882a593Smuzhiyun 2051*4882a593Smuzhiyun Examples: 2052*4882a593Smuzhiyun mlanutl mlan0 assocessid_bssid "xx:xx:xx:xx:xx:xx NXP Micro AP" : Associate to the AP which ssid = "NXP Micro AP", bssid = "xx:xx:xx:xx:xx:xx" 2053*4882a593Smuzhiyun 2054*4882a593Smuzhiyunassociate 2055*4882a593Smuzhiyun Request an association to a given SSID/BSSID pair. This the only accurate 2056*4882a593Smuzhiyun way to pick a specific AP and ESS for an association. The entry must 2057*4882a593Smuzhiyun already exist in the scan table for the association to be attempted. 2058*4882a593Smuzhiyun 2059*4882a593Smuzhiyun mlanutl mlanX associate "xx:xx:xx:xx:xx:xx SSID" 2060*4882a593Smuzhiyun 2061*4882a593Smuzhiyunget_chnrgpwr 2062*4882a593Smuzhiyun This command is used to get the txpwrlimit table in FW 2063*4882a593SmuzhiyunUsage: 2064*4882a593Smuzhiyun mlanutl mlanX get_chnrgpwr [save_region_channel_power_data_file] 2065*4882a593Smuzhiyun <save_region_channel_power_data_file> driver will save fw raw data to this file. 2066*4882a593Smuzhiyun 2067*4882a593Smuzhiyun Examples: 2068*4882a593Smuzhiyun mlanutl mlan0 get_chnrgpwr fw_region_pwr.bin : Get region channel power table and save to file fw_region_pwr.bin 2069*4882a593Smuzhiyun 2070*4882a593Smuzhiyuncomparergpwr 2071*4882a593Smuzhiyun This command is used to compare two regionpower tables and output differences. 2072*4882a593Smuzhiyun 2073*4882a593Smuzhiyun Usage : 2074*4882a593Smuzhiyun mlanutl mlanX comparergpwr <uncompressed file> [target_file] 2075*4882a593Smuzhiyun where: 2076*4882a593Smuzhiyun <target_file> : raw data file save from get_chnrgpwr command. 2077*4882a593Smuzhiyun <uncompressed file> : uncompressed raw data file generated by powerutil from the excel input region power file 2078*4882a593Smuzhiyun 2079*4882a593Smuzhiyun Example : 2080*4882a593Smuzhiyun mlanutl mlan0 comparergpwr uncompressed.bin fw_region_pwr.bin : Show power table comparison in text format 2081*4882a593Smuzhiyun mlanutl mlan0 comparergpwr uncompressed.bin : Show power table of uncompressed file in text format 2082*4882a593Smuzhiyuncomparetrpc 2083*4882a593Smuzhiyun This command is used to compare two txpower tables and output differences. 2084*4882a593Smuzhiyun 2085*4882a593Smuzhiyun Usage : 2086*4882a593Smuzhiyun mlanutl mlanX comparetrpc <target_file> <src_file> [display] 2087*4882a593Smuzhiyun where: 2088*4882a593Smuzhiyun <target_file> : raw data file save from get_txpwrlimit command. 2089*4882a593Smuzhiyun <src_file> : raw data file used by driver load parameter "txpwrlimit_cfg" which will be download to FW during driver init. 2090*4882a593Smuzhiyun <display> : display comparison output 2091*4882a593Smuzhiyun : 1 - text format 2092*4882a593Smuzhiyun : 2 - table format 2093*4882a593Smuzhiyun 2094*4882a593Smuzhiyun Example : 2095*4882a593Smuzhiyun mlanutl mlan0 comparetrpc txpwrlimit.bin txpwrlimit_init.bin 1 : Show power table comparison in text format 2096*4882a593Smuzhiyun mlanutl mlan0 comparetrpc txpwrlimit.bin txpwrlimit_init.bin 2 : Show power table comparison in table format 2097*4882a593Smuzhiyungetcfgchanlist 2098*4882a593Smuzhiyun This command is used to get the channel list used by cfg80211 stack 2099*4882a593Smuzhiyun 2100*4882a593Smuzhiyun Example: 2101*4882a593Smuzhiyun mlanutl mlan0 getcfgchanlist 2102*4882a593Smuzhiyun 2103*4882a593Smuzhiyun 2104*4882a593Smuzhiyunauthtype 2105*4882a593Smuzhiyun This command is used to set/get authentication type. 2106*4882a593Smuzhiyun 2107*4882a593Smuzhiyun Usage: 2108*4882a593Smuzhiyun mlanutl mlanX authtype [n] 2109*4882a593Smuzhiyun 2110*4882a593Smuzhiyun where <n> 2111*4882a593Smuzhiyun 0: 802.11 open system authentication 2112*4882a593Smuzhiyun 1: 802.11 shared key authentication 2113*4882a593Smuzhiyun 3: 802.11 WPA3 SAE authentication 2114*4882a593Smuzhiyun 255: allow open system or shared key authentication (default) 2115*4882a593Smuzhiyun 2116*4882a593Smuzhiyun Examples: 2117*4882a593Smuzhiyun mlanutl mlan0 authtype 0 : use open system authentication 2118*4882a593Smuzhiyun mlanutl mlan0 authtype 1 : use shared key authentication 2119*4882a593Smuzhiyun mlanutl mlan0 authtype 255 : allow open system or shared key authentication 2120*4882a593Smuzhiyun mlanutl mlan0 authtype : get current setting 2121*4882a593Smuzhiyun 2122*4882a593Smuzhiyunautotdls 2123*4882a593Smuzhiyun This command is used to enable/disable auto TDLS. 2124*4882a593Smuzhiyun 2125*4882a593Smuzhiyun Usage: 2126*4882a593Smuzhiyun mlanutl mlanX autotdls [n] 2127*4882a593Smuzhiyun 2128*4882a593Smuzhiyun where <n> 2129*4882a593Smuzhiyun 0: Disable auto tdls 2130*4882a593Smuzhiyun 1: Enable auto tdls 2131*4882a593Smuzhiyun 2132*4882a593Smuzhiyun Examples: 2133*4882a593Smuzhiyun mlanutl mlan0 autotdls 1 : enable auto TDLS 2134*4882a593Smuzhiyun mlanutl mlan0 autotdls 0 : disable auto TDLS 2135*4882a593Smuzhiyun mlanutl mlan0 autotdls : get current setting 2136*4882a593Smuzhiyun 2137*4882a593Smuzhiyuntdls_idle_time 2138*4882a593Smuzhiyun This command is used to set/get TDLS idle timeout. The valid value is between 0-0xffff. When set to 0, the tdls_idle_time will use default value(60). 2139*4882a593Smuzhiyun 2140*4882a593Smuzhiyun Usage: 2141*4882a593Smuzhiyun mlanutl mlanX tdls_idle_time [n] 2142*4882a593Smuzhiyun 2143*4882a593Smuzhiyun where <n> 2144*4882a593Smuzhiyun TDLS idle timeout value 2145*4882a593Smuzhiyun 2146*4882a593Smuzhiyun Examples: 2147*4882a593Smuzhiyun mlanutl mlan0 tdls_idle_time 30 : set tdls_idle_time value to 30 2148*4882a593Smuzhiyun mlanutl mlan0 tdls_idle_time 0 : use default tdls_idle_time value(60) 2149*4882a593Smuzhiyun mlanutl mlan0 tdls_idle_time : get current setting 2150*4882a593Smuzhiyun 2151*4882a593Smuzhiyundfs_offload 2152*4882a593Smuzhiyun This command is used to enable/disable DFS offload. The valid value is 0/1. 2153*4882a593Smuzhiyun Note: The parameters can be set only in disconnected state. 2154*4882a593Smuzhiyun 2155*4882a593Smuzhiyun Usage: 2156*4882a593Smuzhiyun mlanutl uapX dfs_offload [n] 2157*4882a593Smuzhiyun 2158*4882a593Smuzhiyun where <n> 2159*4882a593Smuzhiyun Enable/disable 2160*4882a593Smuzhiyun 2161*4882a593Smuzhiyun Examples: 2162*4882a593Smuzhiyun mlanutl uap0 dfs_offload 1 : enable DFS offload 2163*4882a593Smuzhiyun mlanutl uap0 dfs_offload 0 : disable DFS offload 2164*4882a593Smuzhiyun 2165*4882a593Smuzhiyunbandcfg 2166*4882a593Smuzhiyun This command is used to set/get infra/ad-hoc band. 2167*4882a593Smuzhiyun Note: This command is only available in disconnected state. 2168*4882a593Smuzhiyun 2169*4882a593Smuzhiyun Usage: 2170*4882a593Smuzhiyun mlanutl mlanX bandcfg [l] [m] [n] 2171*4882a593Smuzhiyun 2172*4882a593Smuzhiyun where the parameters: 2173*4882a593Smuzhiyun [l]: Infrastructure band 2174*4882a593Smuzhiyun bit 0: B 2175*4882a593Smuzhiyun bit 1: G 2176*4882a593Smuzhiyun bit 2: A 2177*4882a593Smuzhiyun bit 3: GN 2178*4882a593Smuzhiyun bit 4: AN 2179*4882a593Smuzhiyun 2180*4882a593Smuzhiyun bit 5: AC 2.4G 2181*4882a593Smuzhiyun bit 6: AC 5G 2182*4882a593Smuzhiyun bit 8: AX 2.4G 2183*4882a593Smuzhiyun bit 9: AX 5G 2184*4882a593Smuzhiyun [m]: Ad-hoc start band 2185*4882a593Smuzhiyun bit 0: B 2186*4882a593Smuzhiyun bit 1: G 2187*4882a593Smuzhiyun bit 2: A 2188*4882a593Smuzhiyun [n]: Ad-hoc start channel 2189*4882a593Smuzhiyun Examples: 2190*4882a593Smuzhiyun mlanutl mlan0 bandcfg : Get infra/ad-hoc band and ad-hoc 2191*4882a593Smuzhiyun start channel configurations 2192*4882a593Smuzhiyun mlanutl mlan0 bandcfg 1 : Set infra band to B only 2193*4882a593Smuzhiyun mlanutl mlan0 bandcfg 3 2 6 : Set infra band to B/G, ad-hoc start band 2194*4882a593Smuzhiyun to G and ad-hoc start channel to 6 2195*4882a593Smuzhiyun 2196*4882a593Smuzhiyunbcninterval 2197*4882a593Smuzhiyun This command is used to set/get the beacon interval in ad-hoc mode. 2198*4882a593Smuzhiyun The valid beacon interval is between 20 - 1000, default beacon 2199*4882a593Smuzhiyun interval is 100. 2200*4882a593Smuzhiyun 2201*4882a593Smuzhiyun Where <n> 2202*4882a593Smuzhiyun Beacon interval in TU (Time Unit: 1024 us). 2203*4882a593Smuzhiyun 2204*4882a593Smuzhiyun Examples: 2205*4882a593Smuzhiyun mlanutl mlan0 bcninterval 200 : Set ad-hoc beacon interval to 200 2206*4882a593Smuzhiyun mlanutl mlan0 bcninterval : Get ad-hoc beacon interval 2207*4882a593Smuzhiyun 2208*4882a593Smuzhiyunbssrole 2209*4882a593Smuzhiyun This command is used to set/get the BSS role. 2210*4882a593Smuzhiyun 2211*4882a593Smuzhiyun Where 2212*4882a593Smuzhiyun [l] is <bss_role> 2213*4882a593Smuzhiyun <bss_role> - This parameter specifies the BSS role to set. 2214*4882a593Smuzhiyun 0 : STA 2215*4882a593Smuzhiyun 1 : uAP 2216*4882a593Smuzhiyun 2217*4882a593Smuzhiyun Examples: 2218*4882a593Smuzhiyun mlanutl wfd0 bssrole : Get the current BSS role 2219*4882a593Smuzhiyun mlanutl wfd0 bssrole 1 : Set the current BSS role to uAP 2220*4882a593Smuzhiyun 2221*4882a593Smuzhiyuncfgdata 2222*4882a593Smuzhiyun This command is used to set/get the configuration data to/from firmware. 2223*4882a593Smuzhiyun 2224*4882a593Smuzhiyun Usage: 2225*4882a593Smuzhiyun mlanutl mlanX cfgdata <type> [<.conf file name>] 2226*4882a593Smuzhiyun 2227*4882a593Smuzhiyun Where the parameters are: 2228*4882a593Smuzhiyun type : 2229*4882a593Smuzhiyun 2 -- CAL data download and <.conf file name> is cal_data.conf 2230*4882a593Smuzhiyun .conf file name : The configuration file used to set/get the configuration data. 2231*4882a593Smuzhiyun 2232*4882a593Smuzhiyun Examples: 2233*4882a593Smuzhiyun mlanutl mlan0 cfgdata 2 2234*4882a593Smuzhiyun : This command is used to get and display the CAL data from firmware. 2235*4882a593Smuzhiyun 2236*4882a593Smuzhiyuncfpcode 2237*4882a593Smuzhiyun This command is used to set/get the Channel-Frequency-Power table codes. 2238*4882a593Smuzhiyun The region table can be selected through region code. 2239*4882a593Smuzhiyun The current configuration is returned if no parameter provided. 2240*4882a593Smuzhiyun 2241*4882a593Smuzhiyun where the parameters are, 2242*4882a593Smuzhiyun [m]: code of the CFP table for 2.4GHz (0: unchanged) 2243*4882a593Smuzhiyun [n]: code of the CFP table for 5GHz (0 or not provided: unchanged) 2244*4882a593Smuzhiyun 2245*4882a593Smuzhiyun Examples: 2246*4882a593Smuzhiyun mlanutl mlan0 cfpcode : Get current configuration 2247*4882a593Smuzhiyun mlanutl mlan0 cfpcode 0x30 : Set 2.4GHz CFP table code 0x30 (EU), 2248*4882a593Smuzhiyun keep 5GHz table unchanged 2249*4882a593Smuzhiyun mlanutl mlan0 cfpcode 0x10 5 : Set 2.4GHz CFP table code 0x10 (USA) 2250*4882a593Smuzhiyun and 5GHz table code 5 2251*4882a593Smuzhiyun 2252*4882a593Smuzhiyunchangraph 2253*4882a593Smuzhiyun Displays 2-dimensional graph, plotting channel number along x-axis and 2254*4882a593Smuzhiyun anpi or channel-load along y-axis, depending on whether it is an anpi graph 2255*4882a593Smuzhiyun or a channel load graph. 2256*4882a593Smuzhiyun 2257*4882a593Smuzhiyun Usage: 2258*4882a593Smuzhiyun mlanutl mlanX changraph [<load | anpi | anpiload> <loops>] 2259*4882a593Smuzhiyun where: 2260*4882a593Smuzhiyun load: Only channel vs channel-load graph is displayed 2261*4882a593Smuzhiyun anpi: Only channel vs Average Noise Power Indicator(ANPI) 2262*4882a593Smuzhiyun graph is displayed 2263*4882a593Smuzhiyun anpiload: Both the graphs for anpi and for the load are displayed 2264*4882a593Smuzhiyun loops: This is used to calculate the number of times 2265*4882a593Smuzhiyun the graph [load or anpi or both] will be printed 2266*4882a593Smuzhiyun 2267*4882a593Smuzhiyuncoex_rx_winsize 2268*4882a593Smuzhiyun This command is used to set/get control to coex RX window size 2269*4882a593Smuzhiyun 2270*4882a593Smuzhiyun where value of m is: 2271*4882a593Smuzhiyun 0 -- Disable COEX RX winsize (default) 2272*4882a593Smuzhiyun 1 -- Enable COEX RX winsize 2273*4882a593Smuzhiyun 2274*4882a593Smuzhiyun Examples: 2275*4882a593Smuzhiyun mlanutl mlan0 coex_rx_winsize : Get COEX RX winsize 2276*4882a593Smuzhiyun mlanutl mlan0 coex_rx_winsize 1 : Enable COEX RX winsize 2277*4882a593Smuzhiyun 2278*4882a593Smuzhiyuncountrycode 2279*4882a593Smuzhiyun This command is used to set and get the country code. 2280*4882a593Smuzhiyun 2281*4882a593Smuzhiyun Where 2282*4882a593Smuzhiyun [l] is Country code 2283*4882a593Smuzhiyun 2284*4882a593Smuzhiyun Examples: 2285*4882a593Smuzhiyun mlanutl mlan0 countrycode : Get current countrycode 2286*4882a593Smuzhiyun mlanutl mlan0 countrycode CN : Set countrycode as China (CN) 2287*4882a593Smuzhiyun 2288*4882a593Smuzhiyuncfpinfo 2289*4882a593Smuzhiyun This command is used to get region, country, environment codes, 2290*4882a593Smuzhiyun channel and power table information from the FW. 2291*4882a593Smuzhiyun 2292*4882a593Smuzhiyun Examples: 2293*4882a593Smuzhiyun mlanutl mlan0 cfpinfo : Display cfp tables 2294*4882a593Smuzhiyun mlanutl uap0 cfpinfo 2295*4882a593Smuzhiyun 2296*4882a593Smuzhiyuncustomie 2297*4882a593Smuzhiyun This command is used to set or get custom IEs for management frames. 2298*4882a593Smuzhiyun 2299*4882a593Smuzhiyun Usage: 2300*4882a593Smuzhiyun mlanutl mlanX customie [[[<index>] <mask>] <IEBuffer>] 2301*4882a593Smuzhiyun 2302*4882a593Smuzhiyun Where the parameter is: 2303*4882a593Smuzhiyun empty - Get all IE settings 2304*4882a593Smuzhiyun <index> : 0 - Get/Set IE index 0 setting 2305*4882a593Smuzhiyun 1 - Get/Set IE index 1 setting 2306*4882a593Smuzhiyun 2 - Get/Set IE index 2 setting 2307*4882a593Smuzhiyun MAX IE Index depends on device memory. 2308*4882a593Smuzhiyun -1 - Append/Delete IE automatically 2309*4882a593Smuzhiyun Delete will delete the IE from the matching IE buffer 2310*4882a593Smuzhiyun Append will append the IE to the buffer with the same mask 2311*4882a593Smuzhiyun <mask> : Management subtype mask value as per bit definitions 2312*4882a593Smuzhiyun : Bit 0 - Association request 2313*4882a593Smuzhiyun : Bit 1 - Association response 2314*4882a593Smuzhiyun : Bit 2 - Reassociation request 2315*4882a593Smuzhiyun : Bit 3 - Reassociation response 2316*4882a593Smuzhiyun : Bit 4 - Probe request 2317*4882a593Smuzhiyun : Bit 5 - Probe response 2318*4882a593Smuzhiyun : Bit 8 - Beacon 2319*4882a593Smuzhiyun <mask> : mask = 0 to clear the mask and the IE buffer 2320*4882a593Smuzhiyun <IEBuffer> : IE Buffer in hex (max 256 bytes) 2321*4882a593Smuzhiyun The Buffer should not be space separated. 2322*4882a593Smuzhiyun 2323*4882a593Smuzhiyun Examples: 2324*4882a593Smuzhiyun mlanutl mlan0 customie 2325*4882a593Smuzhiyun : Get IE buffer, subtype mask settings for all indices. 2326*4882a593Smuzhiyun 2327*4882a593Smuzhiyun mlanutl mlan0 customie 1 2328*4882a593Smuzhiyun : Get IE buffer and subtype mask for the Index = 1. 2329*4882a593Smuzhiyun 2330*4882a593Smuzhiyun mlanutl mlan0 customie 2 0 2331*4882a593Smuzhiyun : Clear IE buffer and mask value for Index = 2. 2332*4882a593Smuzhiyun 2333*4882a593Smuzhiyun mlanutl mlan0 customie 3 0x101 0xdd051234567890 2334*4882a593Smuzhiyun : Set IE buffer and mask value for Index = 3. 2335*4882a593Smuzhiyun 2336*4882a593Smuzhiyun mlanutl mlan0 customie -1 0x101 0xdd051234567890 2337*4882a593Smuzhiyun : Append the specified IEBuffer at index with mask value of 0x101. 2338*4882a593Smuzhiyun 2339*4882a593Smuzhiyun mlanutl mlan0 customie -1 0 0xdd051234567890 2340*4882a593Smuzhiyun : Delete the specified IEBuffer from all the IEs. 2341*4882a593Smuzhiyun 2342*4882a593Smuzhiyun mlanutl mlan0 customie 2 0 0xdd051234567890 2343*4882a593Smuzhiyun : Delete the specified IEBuffer from the IEs at index 2. 2344*4882a593Smuzhiyun 2345*4882a593Smuzhiyundeauth 2346*4882a593Smuzhiyun This command is used to send a de-authentication to an arbitrary AP. 2347*4882a593Smuzhiyun If [l] is omitted, the driver will deauth the associated AP. 2348*4882a593Smuzhiyun If in ad-hoc mode this command is used to stop beacon transmission 2349*4882a593Smuzhiyun from the station and go into idle state. 2350*4882a593Smuzhiyun 2351*4882a593Smuzhiyun When <l> is supplied as a MAC address, the driver will deauth the 2352*4882a593Smuzhiyun specified AP. If the AP address matches the driver's associated AP, 2353*4882a593Smuzhiyun the driver will disconnect. Otherwise, the driver remains connected. 2354*4882a593Smuzhiyun 2355*4882a593Smuzhiyun When this command is executed on AP interface, it is used to send 2356*4882a593Smuzhiyun a de-authentication to associated station. 2357*4882a593Smuzhiyun 2358*4882a593Smuzhiyundeepsleep 2359*4882a593Smuzhiyun This command is used to set/get auto deep sleep mode. 2360*4882a593Smuzhiyun 2361*4882a593Smuzhiyun Usage: 2362*4882a593Smuzhiyun mlanutl mlanX deepsleep [l] [m] 2363*4882a593Smuzhiyun 2364*4882a593Smuzhiyun where the parameters are: 2365*4882a593Smuzhiyun [l]: Enable/disable auto deep sleep mode (1/0) 2366*4882a593Smuzhiyun [m]: Idle time in milliseconds after which firmware will put the device 2367*4882a593Smuzhiyun in deep sleep mode. Default value is 100 ms. 2368*4882a593Smuzhiyun 2369*4882a593Smuzhiyun Examples: 2370*4882a593Smuzhiyun mlanutl mlan0 deepsleep : Display auto deep sleep mode 2371*4882a593Smuzhiyun mlanutl mlan0 deepsleep 1 : Enable auto deep sleep mode, idle time unchanged 2372*4882a593Smuzhiyun mlanutl mlan0 deepsleep 0 : Disable auto deep sleep mode 2373*4882a593Smuzhiyun mlanutl mlan0 deepsleep 1 500 : Enable auto deep sleep mode with idle time 500 ms 2374*4882a593Smuzhiyun Note: 2375*4882a593Smuzhiyun Deepsleep must be disabled before changing idle time. 2376*4882a593Smuzhiyun 2377*4882a593Smuzhiyundelba 2378*4882a593Smuzhiyun This command is used to delete either all Tx BA or all Rx BA or a specific BA stream 2379*4882a593Smuzhiyun based on direction, TID and peer address. 2380*4882a593Smuzhiyun 2381*4882a593Smuzhiyun where <l> [<m> <n>] 2382*4882a593Smuzhiyun <l> - This is the direction of BA stream, Tx (bit 0), Rx (bit 1). 2383*4882a593Smuzhiyun <m> - This is the TID (0-7, 0xff for all) of BA stream. 2384*4882a593Smuzhiyun <n> - This is the peer MAC addres of BA stream. 2385*4882a593Smuzhiyun 2386*4882a593Smuzhiyun eg: 2387*4882a593Smuzhiyun mlanutl mlanX delba 2 - This command will delete all the Rx BA streams. 2388*4882a593Smuzhiyun mlanutl mlanX delba 3 - This command will delete all the Tx and Rx BA streams. 2389*4882a593Smuzhiyun mlanutl mlanX delba 1 0 - This command will delete all the Tx streams with TID 0. 2390*4882a593Smuzhiyun mlanutl mlanX delba 2 0xff "00:11:22:33:44:55" - This command will delete all the Rx BA streams 2391*4882a593Smuzhiyun with specified peer MAC address 2392*4882a593Smuzhiyun mlanutl mlanX delba 1 3 "00:11:22:33:44:55" - This command will delete the Tx BA stream with 2393*4882a593Smuzhiyun TID 3 and specified peer MAC address. 2394*4882a593Smuzhiyun 2395*4882a593Smuzhiyundelts 2396*4882a593Smuzhiyun Send a DELTS command to the associated AP. 2397*4882a593Smuzhiyun 2398*4882a593Smuzhiyun Process a given conf file for a specific TSPEC data block. Send the 2399*4882a593Smuzhiyun TSPEC along with any other IEs to the driver/firmware for transmission 2400*4882a593Smuzhiyun in a DELTS request to the associated AP. 2401*4882a593Smuzhiyun 2402*4882a593Smuzhiyun Return the execution status of the command. There is no response to a 2403*4882a593Smuzhiyun DELTS from the AP. 2404*4882a593Smuzhiyun 2405*4882a593Smuzhiyun Usage: 2406*4882a593Smuzhiyun mlanutl mlanX delts <filename.conf> <section# of tspec> 2407*4882a593Smuzhiyun 2408*4882a593Smuzhiyundfstesting 2409*4882a593Smuzhiyun This command is used to set/get settings for DFS testing. 2410*4882a593Smuzhiyun 2411*4882a593Smuzhiyun Usage: 2412*4882a593Smuzhiyun mlanutl mlanX dfstesting [<user_cac_pd> <user_nop_pd> <no_chan_change> <fixed_chan_num><cac_restart>] 2413*4882a593Smuzhiyun 2414*4882a593Smuzhiyun where <user_cac_pd> is user-configured Channel Availability Check in sec 2415*4882a593Smuzhiyun 0 = disable, use default period (60 seconds) 2416*4882a593Smuzhiyun 1-1800 = enable with that period 2417*4882a593Smuzhiyun where <user_nop_pd> is user-configured Non-Occupancy Period in sec 2418*4882a593Smuzhiyun 0 = disable, use default period (1800) 2419*4882a593Smuzhiyun 1-65535 = enable with that period 2420*4882a593Smuzhiyun where <no_chan_change> is enable/disable no channel change on radar 2421*4882a593Smuzhiyun 0 = disable, 1 = enable (overrides below) 2422*4882a593Smuzhiyun where <fixed_chan_num> is user-configured channel to change to on radar 2423*4882a593Smuzhiyun 0 = disable, 1-255 = enable with that channel 2424*4882a593Smuzhiyun (channel validity for region, etc. is not checked) 2425*4882a593Smuzhiyun (only takes effect if no_chan_change = 0) 2426*4882a593Smuzhiyun where <cac_restart> after CAC success, driver auto restart CAC again 2427*4882a593Smuzhiyun 2428*4882a593Smuzhiyun Examples: 2429*4882a593Smuzhiyun mlanutl mlan0 dfstesting : Get current dfstesting settings 2430*4882a593Smuzhiyun mlanutl mlan0 dfstesting 60 0 0 0 0 : user_cac=60sec, others disabled/default 2431*4882a593Smuzhiyun mlanutl mlan0 dfstesting 0 0 1 0 0 : only no_chan_change enabled 2432*4882a593Smuzhiyun mlanutl mlan0 dfstesting 0 120 0 64 0 : user_nop=2min, force chan 64 on radar 2433*4882a593Smuzhiyun mlanutl mlan0 dfstesting 60 0 0 0 1 : user_cac=60sec, restart cac after success 2434*4882a593Smuzhiyun 2435*4882a593Smuzhiyunclear_nop 2436*4882a593Smuzhiyun This command clear NOP status 2437*4882a593SmuzhiyunUsage: 2438*4882a593Smuzhiyun mlanutl uapX clear_nop 2439*4882a593Smuzhiyun 2440*4882a593Smuzhiyun Examples: 2441*4882a593Smuzhiyun mlanutl uap0 clear_nop : clear channel NOP status 2442*4882a593Smuzhiyun 2443*4882a593Smuzhiyunnop_list 2444*4882a593Smuzhiyun This command get NOP channel list 2445*4882a593SmuzhiyunUsage: 2446*4882a593Smuzhiyun mlanutl uapX nop_list 2447*4882a593Smuzhiyun 2448*4882a593Smuzhiyun Examples: 2449*4882a593Smuzhiyun mlanutl uap0 nop_list : get nop channel list 2450*4882a593Smuzhiyun 2451*4882a593Smuzhiyunfake_radar 2452*4882a593Smuzhiyun This command was the DFS test command to trigger fake radar event. 2453*4882a593SmuzhiyunUsage: 2454*4882a593Smuzhiyun mlanutl uapX fake_radar 2455*4882a593Smuzhiyun 2456*4882a593Smuzhiyun Examples: 2457*4882a593Smuzhiyun mlanutl uap0 fake_radar : trigger fake rader event 2458*4882a593Smuzhiyun 2459*4882a593Smuzhiyungetchload 2460*4882a593Smuzhiyun This command gets the current channel load (in %), noise floor value (in dbm) and rx_quality (in %, higher % indicates better rx quality) 2461*4882a593SmuzhiyunUsage: 2462*4882a593Smuzhiyun mlanutl uapX getchload <duration> 2463*4882a593Smuzhiyun <duration> can be within 1-10(specifying 10ms to 100ms), default duration will be 100ms 2464*4882a593Smuzhiyun 2465*4882a593Smuzhiyun Examples: 2466*4882a593Smuzhiyun mlanutl uap0 getchload : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 100ms duration 2467*4882a593Smuzhiyun mlanutl uap0 getchload 1 : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 10ms duration 2468*4882a593Smuzhiyun mlanutl uap0 getchload 6 : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 60ms duration 2469*4882a593Smuzhiyun 2470*4882a593Smuzhiyundfs_repeater 2471*4882a593Smuzhiyun This command is used to get/set DFS Repeater mode. 2472*4882a593Smuzhiyun 2473*4882a593Smuzhiyun Usage: 2474*4882a593Smuzhiyun mlanutl mlan0 dfs_repeater <n> 2475*4882a593Smuzhiyun 2476*4882a593Smuzhiyun where the parameter is <n> : 2477*4882a593Smuzhiyun null: to get current setting 2478*4882a593Smuzhiyun 1: to enable dfs_repeater mode 2479*4882a593Smuzhiyun 0: to disable dfs_repeater mode 2480*4882a593Smuzhiyun 2481*4882a593Smuzhiyun eg., 2482*4882a593Smuzhiyun mlanutl mlan0 dfs_repeater :get current setting 2483*4882a593Smuzhiyun mlanutl mlan0 dfs_repeater 1 :enable dfs repeater mode 2484*4882a593Smuzhiyun mlanutl mlan0 dfs_repeater 0 :disable dfs repeater mode 2485*4882a593Smuzhiyun 2486*4882a593Smuzhiyundfs_cac 2487*4882a593Smuzhiyun This command is used to perform radar monitoring on a given channel using dfsX interface 2488*4882a593Smuzhiyun 2489*4882a593Smuzhiyun Usage: 2490*4882a593Smuzhiyun mlanutl dfs0 dfs_cac <channel> [<bw> <cac-period>] 2491*4882a593Smuzhiyun 2492*4882a593Smuzhiyun where the parameters are: 2493*4882a593Smuzhiyun <channel> 5G DFS channel to monitor for radar, when channel=0, stop CAC. 2494*4882a593Smuzhiyun <bw> channel band-width (default 20MHZ) 2495*4882a593Smuzhiyun 0 - Bandwidth 20MHz 2496*4882a593Smuzhiyun 1 - Bandwidth 40MHz above 2497*4882a593Smuzhiyun 3 - Bandwidth 40MHz below 2498*4882a593Smuzhiyun 4 - Bandwidth 80MHz 2499*4882a593Smuzhiyun <cac-period> seconds, default value 60 seconds. 2500*4882a593Smuzhiyun after cac-period, driver will report channel report event and continue monitor the radar signal on this channel. 2501*4882a593Smuzhiyun 2502*4882a593Smuzhiyun Examples: 2503*4882a593Smuzhiyun mlanutl dfs0 dfs_cac 52 1 :do CAC on channel 52, 40MHz above, default cac-duration of 60sec : 2504*4882a593Smuzhiyun mlanutl dfs0 dfs_cac 52 1 120 :do CAC on channel 52, 40MHz above, default cac-duration of 120sec 2505*4882a593Smuzhiyun mlanutl dfs0 dfs_cac 0 :stop CAC 2506*4882a593Smuzhiyunautodfs 2507*4882a593Smuzhiyun This command is used to start/stop auto zero DFS 2508*4882a593Smuzhiyun 2509*4882a593Smuzhiyun Usage: 2510*4882a593Smuzhiyun mlanutl dfs0 autodfs 0 2511*4882a593Smuzhiyun mlanutl dfs0 autodfs 1 [conf_file] 2512*4882a593Smuzhiyun Examples: 2513*4882a593Smuzhiyun mlanutl dfs0 autodfs 0 : stop Auto Zero DFS 2514*4882a593Smuzhiyun mlanutl dfs0 autodfs 1 config/autodfs.conf : start Auto Zero DFS 2515*4882a593Smuzhiyun 2516*4882a593Smuzhiyundfs53cfg 2517*4882a593Smuzhiyun This command is used to set/get settings for DFS W53 configuration for JP-DFS. 2518*4882a593Smuzhiyun 2519*4882a593Smuzhiyun Usage: 2520*4882a593Smuzhiyun mlanutl mlanX dfs53cfg [n] 2521*4882a593Smuzhiyun 2522*4882a593Smuzhiyun where the parameters are: 2523*4882a593Smuzhiyun <n> user-configured value for DFS W53 configuration for JP-DFS 2524*4882a593Smuzhiyun 0 - Fw default value 2525*4882a593Smuzhiyun 1 - New W53 Rules/Standars 2526*4882a593Smuzhiyun 2 - New W53 Rules/Standars 2527*4882a593Smuzhiyun Examples: 2528*4882a593Smuzhiyun mlanutl uap0 dfs53cfg : get dfs w53 configuration 2529*4882a593Smuzhiyun mlanutl uap0 dfs53cfg 1 : set dfs w53 configuration to New W53 Rules/Standards 2530*4882a593Smuzhiyun 2531*4882a593Smuzhiyundfs_mode 2532*4882a593Smuzhiyun This command is used to set/get dfs_mode used in driver. 2533*4882a593Smuzhiyun 2534*4882a593Smuzhiyun Usage: 2535*4882a593Smuzhiyun mlanutl mlanX dfs_mode [n] 2536*4882a593Smuzhiyun 2537*4882a593Smuzhiyun where the parameters are: 2538*4882a593Smuzhiyun <n> user-configured value for DFS mode in driver 2539*4882a593Smuzhiyun 0 - driver default DFS mode 2540*4882a593Smuzhiyun 1 - driver disable DFS master when AP and STA operate in same DFS channel 2541*4882a593Smuzhiyun 2542*4882a593Smuzhiyun Examples: 2543*4882a593Smuzhiyun mlanutl uap0 dfs_mode : get DFS mode configuration 2544*4882a593Smuzhiyun mlanutl uap0 dfs_mode 1 : set DFS mode to 1 2545*4882a593Smuzhiyun mlanutl uap0 dfs_mode 0 : set DFS mode to 0 2546*4882a593Smuzhiyun 2547*4882a593Smuzhiyunesuppmode 2548*4882a593Smuzhiyun This command is used to set/get the e-supplicant mode configurations/status. 2549*4882a593Smuzhiyun 2550*4882a593Smuzhiyun Note: The configurations can be set only before association. 2551*4882a593Smuzhiyun For get, the configurations will be returned before association 2552*4882a593Smuzhiyun and the current status will be returned after association. 2553*4882a593Smuzhiyun 2554*4882a593Smuzhiyun Where 2555*4882a593Smuzhiyun [l] is <rsn_mode> 2556*4882a593Smuzhiyun <rsn_mode> - This parameter specifies the RSN mode configuration 2557*4882a593Smuzhiyun Bit 0 : No RSN 2558*4882a593Smuzhiyun Bit 1-2 : RFU 2559*4882a593Smuzhiyun Bit 3 : WPA // use of WPA/TKIP is not recommended anymore 2560*4882a593Smuzhiyun Bit 4 : WPA-NONE 2561*4882a593Smuzhiyun Bit 5 : WPA2 2562*4882a593Smuzhiyun Bit 6-15 : RFU 2563*4882a593Smuzhiyun [m] is <pairwise_cipher> 2564*4882a593Smuzhiyun <pairwise_cipher> - This parameter specifies the pairwise cipher 2565*4882a593Smuzhiyun Bit 0 : RFU 2566*4882a593Smuzhiyun Bit 1 : RFU 2567*4882a593Smuzhiyun Bit 2 : TKIP //use of WEP/TKIP is not recommended anymore 2568*4882a593Smuzhiyun Bit 3 : AES 2569*4882a593Smuzhiyun Bit 4-7 : RFU 2570*4882a593Smuzhiyun [n] is <group_cipher> 2571*4882a593Smuzhiyun <group_cipher> - This parameter specifies the group cipher 2572*4882a593Smuzhiyun Bit 0 : RFU 2573*4882a593Smuzhiyun Bit 1 : RFU 2574*4882a593Smuzhiyun Bit 2 : TKIP //use of WEP/TKIP is not recommended anymore 2575*4882a593Smuzhiyun Bit 3 : AES 2576*4882a593Smuzhiyun Bit 4-7 : RFU 2577*4882a593Smuzhiyun Note that: the RFU bits cannot be SET. 2578*4882a593Smuzhiyun 2579*4882a593Smuzhiyun Examples: 2580*4882a593Smuzhiyun mlanutl mlan0 esuppmode : Get RSN mode and pairwise/group cipher 2581*4882a593Smuzhiyun mlanutl mlan0 esuppmode 8 4 4 : Set RSN mode yo WPA, active pairwise and // use of WPA/TKIP is not recommended anymore 2582*4882a593Smuzhiyun group ciphers to TKIP //use of WEP/TKIP is not recommended anymore 2583*4882a593Smuzhiyun 2584*4882a593Smuzhiyunextcapcfg 2585*4882a593Smuzhiyun This command is used to set/get extended capabilities. 2586*4882a593Smuzhiyun 2587*4882a593Smuzhiyun Usage: 2588*4882a593Smuzhiyun mlanutl mlanX extcapcfg [<ext_cap>] 2589*4882a593Smuzhiyun 2590*4882a593Smuzhiyun where <ext_cap> : Extended capabilities in hex (max 9 bytes) 2591*4882a593Smuzhiyun The Buffer should not be space separated. 2592*4882a593Smuzhiyun 2593*4882a593Smuzhiyun Examples: 2594*4882a593Smuzhiyun mlanutl mlan0 extcapcfg 0x0000008020 : Set TDLS support and Interworking bits. 2595*4882a593Smuzhiyun 2596*4882a593Smuzhiyunfwmacaddr 2597*4882a593Smuzhiyun This command is used to set/get FW side MAC address but host side address will remain as earlier. 2598*4882a593Smuzhiyun 2599*4882a593Smuzhiyun Usage: 2600*4882a593Smuzhiyun mlanutl mlanX fwmacaddr [mac_addr] 2601*4882a593Smuzhiyun 2602*4882a593Smuzhiyun where <mac_addr> is desired MAC address 2603*4882a593Smuzhiyun 2604*4882a593Smuzhiyun Examples: 2605*4882a593Smuzhiyun mlanutl mlan0 fwmacaddr : Get current FW MAC address 2606*4882a593Smuzhiyun mlanutl mlan0 fwmacaddr 00:50:43:20:bc:44 : Set FW side MAC address 2607*4882a593Smuzhiyun 2608*4882a593Smuzhiyungetkey 2609*4882a593Smuzhiyun This command is used to get PTK/GTK 2610*4882a593Smuzhiyun mlanutl mlanX getkey 2611*4882a593Smuzhiyun 2612*4882a593Smuzhiyunper_pkt_cfg 2613*4882a593Smuzhiyun-------------- 2614*4882a593Smuzhiyun mlanutl <interface> per_pkt_cfg [tx_rx_control] [type_num] [ether_type1 ether_type2...] [tx_rx_control] [type_num] [ether_type1 ether_type2 ...] 2615*4882a593Smuzhiyun This command is used to set tx/rx per packet Txctl and Rxinfo configuration. 2616*4882a593Smuzhiyun 2617*4882a593Smuzhiyun The supported options are: 2618*4882a593Smuzhiyun tx_rx_control : 2619*4882a593Smuzhiyun 0 - disable Tx and Rx per packet control 2620*4882a593Smuzhiyun 1 - enable Tx per packet control 2621*4882a593Smuzhiyun 2 - enable Rx Per packet control 2622*4882a593Smuzhiyun 3 - enable Tx and Rx Per packet control 2623*4882a593Smuzhiyun 2624*4882a593Smuzhiyun type_num : Number of ether_types which support per packet control, the Max is 8. 2625*4882a593Smuzhiyun ether_type : Array of ether_types for which need to do per-packet Tx control or get per-packet Rx info. 2626*4882a593Smuzhiyun 2627*4882a593Smuzhiyun Examples: 2628*4882a593Smuzhiyun mlanutl mlan0/uap0 per_pkt_cfg : get the configuration of per-packet control 2629*4882a593Smuzhiyun mlanutl mlan0/uap0 per_pkt_cfg 0 : disable per-packet control 2630*4882a593Smuzhiyun mlanutl mlan0/uap0 per_pkt_cfg 3 1 0x88dc : set the Tx and Rx per-packet control configuration 2631*4882a593Smuzhiyun 2632*4882a593Smuzhiyundot11_txrx 2633*4882a593Smuzhiyun This command is used to send or receive packets. 2634*4882a593Smuzhiyun 2635*4882a593Smuzhiyun Usage: 2636*4882a593Smuzhiyun mlanutl <interface> dot11_txrx <send/recv> <options> 2637*4882a593Smuzhiyun interface : mlanX or uapX 2638*4882a593Smuzhiyun options send : <conf_file> 2639*4882a593Smuzhiyun conf_file : config file name 2640*4882a593Smuzhiyun options recv : <protocol> [ verbose_mode ] 2641*4882a593Smuzhiyun protocol : packet protocol type 2642*4882a593Smuzhiyun verbose_mode : v -- enter verbose mode 2643*4882a593Smuzhiyun 2644*4882a593Smuzhiyun Example: 2645*4882a593Smuzhiyun mlanutl mlan0 dot11_txrx send config/tx_ctrl.conf : To send packets 2646*4882a593Smuzhiyun mlanutl mlan0 dot11_txrx recv 0x88dc : To receive packets of type 0x88dc 2647*4882a593Smuzhiyun mlanutl mlan0 dot11_txrx recv 0x88dc v : To receive packets of type 0x88dc and 2648*4882a593Smuzhiyun enter verbose mode 2649*4882a593Smuzhiyun 2650*4882a593Smuzhiyuntxrxhistogram 2651*4882a593Smuzhiyun-------------- 2652*4882a593Smuzhiyun mlanutl mlanX/uapX txrxhistogram [action] [tx_rx_statics] 2653*4882a593Smuzhiyun This command is used to get tx/rx statics from firmware. 2654*4882a593Smuzhiyun 2655*4882a593Smuzhiyun This command takes 2 conditions. 2656*4882a593Smuzhiyun The supported options are: 2657*4882a593Smuzhiyun action : 0 - disable Tx/Rx statics 2658*4882a593Smuzhiyun 1 - enable Tx/Rx statics 2659*4882a593Smuzhiyun 2 - get Tx/Rx statics 2660*4882a593Smuzhiyun tx_rx_statics: 1 - enable/disable/get Tx statics 2661*4882a593Smuzhiyun 2 - enable/disable/get Rx statics 2662*4882a593Smuzhiyun 3 - enable/disable/get Tx and Rx statics 2663*4882a593Smuzhiyun Examples: 2664*4882a593Smuzhiyun mlanutl mlan0/uap0 txrxhistogram 1 3 : enable Tx and Rx statics 2665*4882a593Smuzhiyun mlanutl mlna0/uap0 txrxhistogram 0 3 : disable Tx and Rx statics 2666*4882a593Smuzhiyun mlanutl mlan0/uap0 txrxhistogram 2 2 : Get only Rx statics 2667*4882a593Smuzhiyun mlnautl mlan0/uap0 txrxhistogram 2 1 : Get only Tx statics 2668*4882a593Smuzhiyun mlnautl mlan0/uap0 txrxhistogram 2 3 : Get both Tx/Rx statics 2669*4882a593Smuzhiyun 2670*4882a593Smuzhiyungetscantable 2671*4882a593Smuzhiyun Display the current contents of the driver scan table 2672*4882a593Smuzhiyun 2673*4882a593Smuzhiyun Usage: 2674*4882a593Smuzhiyun mlanutl mlanX getscantable 2675*4882a593Smuzhiyun mlanutl mlanX getscantable [#] 2676*4882a593Smuzhiyun mlanutl mlanX getscantable tsf 2677*4882a593Smuzhiyun mlanutl mlanX getscantable ch 2678*4882a593Smuzhiyun mlanutl mlanX getscantable help 2679*4882a593Smuzhiyun 2680*4882a593Smuzhiyun 1) Without argument, the entire scantable is displayed in terms of channel (ch), signal strength (ss), BSS id (bssid), capability (cap), and SSID, 2681*4882a593Smuzhiyun where each column in the capability is described as follows: 2682*4882a593Smuzhiyun column 1 indicates the IBSS capability: A (Adhoc), I (Infra) 2683*4882a593Smuzhiyun column 2 indicates the encryption capability: P (WEP :use of WEP/TKIP is not recommended anymore), W (WPA: use of WPA/TKIP is not recommended anymore), 2 (WPA2) 2684*4882a593Smuzhiyun column 3 indicates the 11D capability: D (11D) 2685*4882a593Smuzhiyun column 4 indicates the WMM capability: W (WMM), C (CAC) 2686*4882a593Smuzhiyun column 5 indicates the 11K capability: K (11K) 2687*4882a593Smuzhiyun column 6 indicates the 11R capability: R (11R) 2688*4882a593Smuzhiyun column 7 indicates the WPS capability: S (WPS) 2689*4882a593Smuzhiyun column 8 indicates the 11N/11AC capability: N (11N), A (11AC) 2690*4882a593Smuzhiyun 2691*4882a593Smuzhiyun 2) Specifying a # will display detailed information about a specific scan 2692*4882a593Smuzhiyun table entry. '0' displays driver cached information regarding the 2693*4882a593Smuzhiyun current association (if any). 2694*4882a593Smuzhiyun 3) The tsf argument will display the entire scan table with the recorded 2695*4882a593Smuzhiyun TSF timestamp for the entry. 2696*4882a593Smuzhiyun 4) The ch argument will display the entire scan table sorted by channel 2697*4882a593Smuzhiyun number in the ascending order. If this argument is not specified, 2698*4882a593Smuzhiyun scan table is sorted by signal strength in the descending order. 2699*4882a593Smuzhiyun 6) The help argument will display the legend for the capability field. 2700*4882a593Smuzhiyun 2701*4882a593Smuzhiyungetstalist 2702*4882a593Smuzhiyun This command is used to get list of associated stations to the AP. 2703*4882a593Smuzhiyun 2704*4882a593Smuzhiyun Example: 2705*4882a593Smuzhiyun mlanutl uap0 getstalist 2706*4882a593Smuzhiyun 2707*4882a593Smuzhiyunchannel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth/num_pkts> 2708*4882a593Smuzhiyunchannel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth> 2709*4882a593Smuzhiyun This command is used to do channel switch according to spec. 2710*4882a593Smuzhiyun 2711*4882a593Smuzhiyun Where the paramters are: 2712*4882a593Smuzhiyun switch mode : 0 -- no need to block traffic, 1 -- need block traffic 2713*4882a593Smuzhiyun oper class : operating class according to IEEE std802.11 spec, when 0 is used, only CSA IE will be used 2714*4882a593Smuzhiyun new channel : the channel will switch to 2715*4882a593Smuzhiyun switch count: channel switch time to send ECSA ie 2716*4882a593Smuzhiyun (when set to 0, CSA/ECSA action frame will be send out) 2717*4882a593Smuzhiyun switch count: channel switch time to send CSA ie 2718*4882a593Smuzhiyun 2719*4882a593Smuzhiyun bandwidth : channel width switch to(optional),only for 5G channels. 2720*4882a593Smuzhiyun Support value 1 -- 40M above, 3 -- 40M below, 4 -- 80M, 5 -- 160M 2721*4882a593Smuzhiyun num_pkts : send number of CSA/ECSA action frame 2722*4882a593Smuzhiyun 2723*4882a593Smuzhiyun Example: 2724*4882a593Smuzhiyun mlanutl uap0 channel_switch 1 115 36 10 :switch to channel 36, oper class 115 2725*4882a593Smuzhiyun mlanutl uap0 channel_switch 1 81 6 10 :switch to channel 6, oper class 81 2726*4882a593Smuzhiyun mlanutl uap0 channel_switch 1 0 6 10 :switch to channel 6 2727*4882a593Smuzhiyun mlanutl uap0 channel_switch 1 0 36 10 1 :switch to channel 36, bandwidth 40MHz above 2728*4882a593Smuzhiyun mlanutl uap0 channel_switch 1 0 36 0 3 :switch to channel 36, and send 3 broadcast CSA action frame 2729*4882a593Smuzhiyun mlanutl uap0 channel_switch 1 115 36 0 3 :switch to channel 36, and send 3 broadcast ECSA action frame 2730*4882a593Smuzhiyun (Only IW61X supports sending CSA/ECSA action frames) 2731*4882a593Smuzhiyun 2732*4882a593Smuzhiyunhostcmd 2040coex 2733*4882a593Smuzhiyun This command is used to send the 11n 20/40 Coex command to firmware. 2734*4882a593Smuzhiyun Firmware will send 11n 20/40 Coex management action frame to AP. 2735*4882a593Smuzhiyun 2736*4882a593Smuzhiyun Usage: 2737*4882a593Smuzhiyun mlanutl mlanX hostcmd config/11n_2040coex.conf 2040coex 2738*4882a593Smuzhiyun 2739*4882a593Smuzhiyunhostcmd auto_tx_get 2740*4882a593Smuzhiyunhostcmd auto_tx_unreg 2741*4882a593Smuzhiyun This command is used to configures the Frame Auto Transmission parameters. 2742*4882a593Smuzhiyun auto_tx_get: get auto_tx parameters 2743*4882a593Smuzhiyun auto_tx_unreg: unregister to firmware auto_tx 2744*4882a593Smuzhiyun 2745*4882a593Smuzhiyun Usage: 2746*4882a593Smuzhiyun mlanutl mlanX hostcmd config/auto_tx.conf auto_tx_get 2747*4882a593Smuzhiyun mlanutl mlanX hostcmd config/auto_tx.conf auto_tx_unreg 2748*4882a593Smuzhiyun 2749*4882a593Smuzhiyunhostcmd bgscfg 2750*4882a593Smuzhiyun This command is used to configure the various parameters for PPS/UAPSD 2751*4882a593Smuzhiyun or normal background scan. 2752*4882a593Smuzhiyun 2753*4882a593Smuzhiyun Usage: 2754*4882a593Smuzhiyun mlanutl mlanX hostcmd config/bg_scan.conf bgscfg 2755*4882a593Smuzhiyun 2756*4882a593Smuzhiyunhostcmd <pkt_coalescing.conf> coalesce_cfg 2757*4882a593Smuzhiyun This command is used to set/clear rules to filter and buffer 2758*4882a593Smuzhiyun broadcast/multicast packet which reduce unwanted patcket or interrupt to 2759*4882a593Smuzhiyun host. 2760*4882a593Smuzhiyun 2761*4882a593Smuzhiyun Usage: 2762*4882a593Smuzhiyun mlanutl mlanX hostcmd <pkt_coalescing.conf> coalesce_cfg 2763*4882a593Smuzhiyun 2764*4882a593Smuzhiyunhostcmd <ed_mac_ctrl.conf> ed_mac_ctrl 2765*4882a593Smuzhiyun This command is used to control ED MAC. 2766*4882a593Smuzhiyun 2767*4882a593Smuzhiyun Usage: 2768*4882a593Smuzhiyun mlanutl mlanX hostcmd <ed_mac_ctrl.conf> ed_mac_ctrl 2769*4882a593Smuzhiyun 2770*4882a593Smuzhiyunhostcmd crypto_test 2771*4882a593Smuzhiyun This command is used to test the encryption/decryption API of the firmware. 2772*4882a593Smuzhiyun 2773*4882a593Smuzhiyun Usage: 2774*4882a593Smuzhiyun mlanutl mlanX hostcmd config/crypto_test.conf crypto_test 2775*4882a593Smuzhiyun 2776*4882a593Smuzhiyunhostcmd nat_keep_alive 2777*4882a593Smuzhiyun This command is used to configures the Frame Auto Transmission parameters. 2778*4882a593Smuzhiyun nat_keep_alive: register to firmware for sending NAT Keep Alive packet 2779*4882a593Smuzhiyun 2780*4882a593Smuzhiyun Usage: 2781*4882a593Smuzhiyun mlanutl mlanX hostcmd config/auto_tx.conf nat_keep_alive 2782*4882a593Smuzhiyun 2783*4882a593Smuzhiyunhostcmd pad_cfg_get 2784*4882a593Smuzhiyunhostcmd pad_cfg_set 2785*4882a593Smuzhiyun This command is used to set/get the configuration data for PAD OR. 2786*4882a593Smuzhiyun 2787*4882a593Smuzhiyun Usage: 2788*4882a593Smuzhiyun mlanutl mlanX hostcmd config/pad_cfg.conf pad_cfg_get 2789*4882a593Smuzhiyun mlanutl mlanX hostcmd config/pad_cfg.conf pad_cfg_set 2790*4882a593Smuzhiyun 2791*4882a593Smuzhiyunhostcmd requesttpc 2792*4882a593Smuzhiyun This command is used to request 802.11H TPC info. 2793*4882a593Smuzhiyun 2794*4882a593Smuzhiyun Usage: 2795*4882a593Smuzhiyun mlanutl mlanX hostcmd config/requesttpc.conf requesttpc 2796*4882a593Smuzhiyun 2797*4882a593Smuzhiyunhostcmd mode_get 2798*4882a593Smuzhiyunhostcmd mode_timeshare 2799*4882a593Smuzhiyunhostcmd mode_spatial 2800*4882a593Smuzhiyunhostcmd mode_none 2801*4882a593Smuzhiyunhostcmd mode_bca 2802*4882a593Smuzhiyun This command is used to get/set Robust BT Coex. 2803*4882a593Smuzhiyun mode_get: get the current mode 2804*4882a593Smuzhiyun mode_timeshare: set Robust BT Coex to timeshare mode (default on 1x1 chips) 2805*4882a593Smuzhiyun mode_spatial: set Robust BT Coex to spatial mode (only for, and default on 2x2 chips) 2806*4882a593Smuzhiyun mode_none: set Robust BT Coex to mode none (only for, and default on 2x2_3Antenna chips) 2807*4882a593Smuzhiyun mode_bca: set Robust BT Coex to bca mode (HW BCA based WLAN and BT traffic arbitration) 2808*4882a593Smuzhiyun 2809*4882a593Smuzhiyun Usage: 2810*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf mode_get 2811*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf mode_timeshare 2812*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf mode_spatial 2813*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf mode_none 2814*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf mode_bca 2815*4882a593Smuzhiyun 2816*4882a593Smuzhiyunhostcmd gpio_cfg 2817*4882a593Smuzhiyun This command is used to enable/disable GPIO cfg. 2818*4882a593Smuzhiyun gpio_cfg: enable/disable GPIO cfg for external bt request (default is enable with High Polarity) 2819*4882a593Smuzhiyun 2820*4882a593Smuzhiyun Usage: 2821*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf gpio_cfg 2822*4882a593Smuzhiyun 2823*4882a593Smuzhiyunhostcmd external_coex_uart_config 2824*4882a593Smuzhiyun This command is used to enable/disable Loopback mode. 2825*4882a593Smuzhiyun external_coex_uart_config: enable/disable loopback of received data (default is disable) 2826*4882a593Smuzhiyun 2827*4882a593Smuzhiyun Usage: 2828*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf external_coex_uart_config 2829*4882a593Smuzhiyun 2830*4882a593Smuzhiyunhostcmd external_coex_pta_config 2831*4882a593Smuzhiyun This command is used to configure external coex interface/WCI-2 interface 2832*4882a593Smuzhiyun external_coex_pta_config: Configure either PTA interface or WCI-2 interface (default is configured for PTA interface). 2833*4882a593Smuzhiyun Usage: 2834*4882a593Smuzhiyun mlanutl mlanX hostcmd <robust_btc.conf> external_coex_pta_config 2835*4882a593Smuzhiyun 2836*4882a593Smuzhiyunhostcmd generictime 2837*4882a593Smuzhiyunhostcmd a2dptime 2838*4882a593Smuzhiyunhostcmd inquirytime 2839*4882a593Smuzhiyunhostcmd ap_generictime 2840*4882a593Smuzhiyunhostcmd ap_a2dptime 2841*4882a593Smuzhiyunhostcmd ap_inquirytime 2842*4882a593Smuzhiyun This command is used to configure the time slice of COEX (only works in timeshare mode) 2843*4882a593Smuzhiyun generictime: configure the Bttime and Wlantime in Station Generic case 2844*4882a593Smuzhiyun a2dptime: configure the Bttime and Wlantime in Station A2DP case 2845*4882a593Smuzhiyun inquirytime: configure the Bttime and Wlantime in Station Inquiry case 2846*4882a593Smuzhiyun ap_generictime: configure the Bttime and Wlantime in Ap Generic case 2847*4882a593Smuzhiyun ap_a2dptime: configure the Bttime and Wlantime in Ap A2DP case 2848*4882a593Smuzhiyun ap_inquirytime: configure the Bttime and Wlantime in Ap Inquiry case 2849*4882a593Smuzhiyun 2850*4882a593Smuzhiyun Usage: 2851*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf generictime 2852*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf a2dptime 2853*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf inquirytim 2854*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf ap_generictime 2855*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf ap_a2dptime 2856*4882a593Smuzhiyun mlanutl mlanX hostcmd config/robust_btc.conf ap_inquirytime 2857*4882a593Smuzhiyun 2858*4882a593Smuzhiyunhostcmd get_bca_arb_config 2859*4882a593Smuzhiyunhostcmd set_en_bca_arb_config 2860*4882a593Smuzhiyunhostcmd set_dis_bca_arb_config 2861*4882a593Smuzhiyun This command is used to get/set Arbitration status for BCA, WLAN, 15.4, BT/BLE and Ext. radio. 2862*4882a593Smuzhiyun get_bca_arb_config: get arbitration status for BCA, WLAN, 15.4, BT/BLE and, Tx and Rx of Ext. radio 2863*4882a593Smuzhiyun set_en_bca_arb_config: set arbitration status for BCA, WLAN, 15.4, BT/BLE and, Tx and Rx of Ext. radio to Enable 2864*4882a593Smuzhiyun set_dis_bca_arb_config: set arbitration status for BCA, WLAN, 15.4, BT/BLE and, Tx and Rx of Ext. radio to Disable 2865*4882a593Smuzhiyun 2866*4882a593Smuzhiyun Usage: 2867*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf get_bca_arb_config 2868*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf set_en_bca_arb_config 2869*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf set_dis_bca_arb_config 2870*4882a593Smuzhiyun 2871*4882a593Smuzhiyunhostcmd get_wlan_stats 2872*4882a593Smuzhiyunhostcmd get_15_4_stats 2873*4882a593Smuzhiyunhostcmd get_bt_stats 2874*4882a593Smuzhiyunhostcmd get_ble_stats 2875*4882a593Smuzhiyun This command is used to get statistics values for WLAN, 15.4, BT and BLE. 2876*4882a593Smuzhiyun get_wlan_stats: get statistics for WLAN 2877*4882a593Smuzhiyun get_15_4_stats: get statistics for 15.4 2878*4882a593Smuzhiyun get_bt_stats: get statistics for BT 2879*4882a593Smuzhiyun get_ble_stats: get statistics for BLE 2880*4882a593Smuzhiyun 2881*4882a593Smuzhiyun Usage: 2882*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf get_wlan_stats 2883*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf get_15_4_stats 2884*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf get_bt_stats 2885*4882a593Smuzhiyun mlanutl mlanX hostcmd config/coex_int_api.conf get_ble_stats 2886*4882a593Smuzhiyun 2887*4882a593Smuzhiyunhostcmd sdio_pulldown_get 2888*4882a593Smuzhiyunhostcmd sdio_pulldown_set 2889*4882a593Smuzhiyunhostcmd sdio_pulldown_disable 2890*4882a593Smuzhiyun This command is used to set/get the settings of pulling up and 2891*4882a593Smuzhiyun pulling down of SDIO lines. 2892*4882a593Smuzhiyun 2893*4882a593Smuzhiyun Usage: 2894*4882a593Smuzhiyun mlanutl mlanX hostcmd config/sdio_pulldown.conf sdio_pulldown_get 2895*4882a593Smuzhiyun mlanutl mlanX hostcmd config/sdio_pulldown.conf sdio_pulldown_set 2896*4882a593Smuzhiyun mlanutl mlanX hostcmd config/sdio_pulldown.conf sdio_pulldown_disable 2897*4882a593Smuzhiyun 2898*4882a593Smuzhiyunhostcmd subevent_get 2899*4882a593Smuzhiyunhostcmd subevent_set 2900*4882a593Smuzhiyun This command is used to get/set the configurations for event descriptor 2901*4882a593Smuzhiyun interface command. 2902*4882a593Smuzhiyun subsvent_get: get subscribed event parameters 2903*4882a593Smuzhiyun subsvent_set: set subscribed event parameters 2904*4882a593Smuzhiyun 2905*4882a593Smuzhiyun Usage: 2906*4882a593Smuzhiyun mlanutl mlanX hostcmd config/subevent.conf subevent_get 2907*4882a593Smuzhiyun mlanutl mlanX hostcmd config/subevent.conf subevent_set 2908*4882a593Smuzhiyun 2909*4882a593Smuzhiyunhostcmd txpwrlimit_2g_cfg_set 2910*4882a593Smuzhiyunhostcmd txpwrlimit_5g_cfg_set 2911*4882a593Smuzhiyunhostcmd txpwrlimit_cfg_get 2912*4882a593Smuzhiyun This command is used to set/get the configuration data of Tx power limitation. 2913*4882a593Smuzhiyun Note: The configuration set should be issued when STA is disconnected. 2914*4882a593Smuzhiyun 2915*4882a593Smuzhiyun Usage: 2916*4882a593Smuzhiyun mlanutl mlanX hostcmd config/txpwrlimit_cfg.conf txpwrlimit_cfg_get 2917*4882a593Smuzhiyun mlanutl mlanX hostcmd config/txpwrlimit_cfg.conf txpwrlimit_2g_cfg_set 2918*4882a593Smuzhiyun mlanutl mlanX hostcmd config/txpwrlimit_cfg.conf txpwrlimit_5g_cfg_set 2919*4882a593Smuzhiyun 2920*4882a593Smuzhiyunhostcmd txrate_cfg_get 2921*4882a593Smuzhiyunhostcmd txrate_cfg_set_bg 2922*4882a593Smuzhiyunhostcmd txrate_cfg_set_bgn 2923*4882a593Smuzhiyun This command is used to set/get the transmit data rate. 2924*4882a593Smuzhiyun 2925*4882a593Smuzhiyun Usage: 2926*4882a593Smuzhiyun mlanutl mlanX hostcmd config/txrate_cfg.conf txrate_cfg_get 2927*4882a593Smuzhiyun mlanutl mlanX hostcmd config/txrate_cfg.conf txrate_cfg_set_bg 2928*4882a593Smuzhiyun mlanutl mlanX hostcmd config/txrate_cfg.conf txrate_cfg_set_bgn 2929*4882a593Smuzhiyun 2930*4882a593Smuzhiyunhostcmd fwdump 2931*4882a593Smuzhiyun This command is used to trigger firmware dump 2932*4882a593Smuzhiyun 2933*4882a593Smuzhiyun Usage: 2934*4882a593Smuzhiyun mlanutl mlanX hostcmd <fwdump.conf> fwdump 2935*4882a593Smuzhiyun 2936*4882a593Smuzhiyunhostcmd stop_su 2937*4882a593Smuzhiyunhostcmd start_su 2938*4882a593Smuzhiyun This command is used to set/get 11ax related setting 2939*4882a593Smuzhiyun stop_su: stop su 2940*4882a593Smuzhiyun start_su: resume su 2941*4882a593Smuzhiyun stop_forceRTS: stop force Tx RTS 2942*4882a593Smuzhiyun start_forceRTS: start force Tx RTS 2943*4882a593Smuzhiyun Usage: 2944*4882a593Smuzhiyun mlanutl mlanX hostcmd config/debug.conf stop_su 2945*4882a593Smuzhiyun mlanutl mlanX hostcmd config/debug.conf start_su 2946*4882a593Smuzhiyun mlanutl mlanX hostcmd config/debug.conf stop_forceRTS 2947*4882a593Smuzhiyun mlanutl mlanX hostcmd config/debug.conf start_forceRTS 2948*4882a593Smuzhiyun 2949*4882a593Smuzhiyunhotspotcfg 2950*4882a593Smuzhiyun This command is used to get/set the HotSpot configuration. 2951*4882a593Smuzhiyun 2952*4882a593Smuzhiyun Usage: 2953*4882a593Smuzhiyun mlanutl mlanX hotspotcfg [<bitmap>] 2954*4882a593Smuzhiyun 2955*4882a593Smuzhiyun Where the parameter is: 2956*4882a593Smuzhiyun <bitmap> : configuration bitset 2957*4882a593Smuzhiyun : Bit 31-10 - Reserved set to 0 2958*4882a593Smuzhiyun : Bit 9 - TDLS support indication enable/disable 2959*4882a593Smuzhiyun : Bit 8 - Interworking indication enable/disable 2960*4882a593Smuzhiyun : Bit 7-1 - Reserved set to 0 2961*4882a593Smuzhiyun : Bit 0 - HotSpot feature enable/disable 2962*4882a593Smuzhiyun 2963*4882a593Smuzhiyun Examples: 2964*4882a593Smuzhiyun mlanutl mlan0 hotspotcfg : Get present remote address mode 2965*4882a593Smuzhiyun mlanutl mlan0 hotspotcfg 0x301 : Turn on HotSpot2.0 and enable TDLS support and interworking indication 2966*4882a593Smuzhiyun mlanutl mlan0 hotspotcfg 0 : Turn off HotSpot2.0 and disable TDLS support and interworking indication 2967*4882a593Smuzhiyun 2968*4882a593Smuzhiyunhscfg 2969*4882a593Smuzhiyun This command is used to configure the host sleep parameters. 2970*4882a593Smuzhiyun Please note hssetpara and usbsuspend/usbresume commands should be used for USB 2971*4882a593Smuzhiyun host sleep related tests. 2972*4882a593Smuzhiyun 2973*4882a593Smuzhiyun Usage: 2974*4882a593Smuzhiyun mlanutl mlanX hscfg [condition [[GPIO# [gap]]]] (optional)[type ind_GPIO# [level]] (optional)[type event_force_ignore event_use_ext_gap ext_gap [gpio_wave]] 2975*4882a593Smuzhiyun 2976*4882a593Smuzhiyun This command takes one (condition), two (condition and GPIO#) or three 2977*4882a593Smuzhiyun (condition, GPIO# and gap). If more than three parameters, it can set different or multiple features indicating by type(this is optional): 2978*4882a593Smuzhiyun 2979*4882a593Smuzhiyun If type=1, it will set indication gpio and its level. And the parameter format will be (condition, GPIO#,gap and type,ind_GPIO#) or 2980*4882a593Smuzhiyun (condition, GPIO#, gap, type, ind_GPIO# and level). 2981*4882a593Smuzhiyun 2982*4882a593Smuzhiyun If type=2, it will set extend hscfg wakup method. And the parameter format will be (condition, GPIO#, gap, type, force_ignore, 2983*4882a593Smuzhiyun use_ext_gap, ext_gap [gpio_wave]). gpio_wave parameter is optional and default value is 0(falling edge). Each bit of 2984*4882a593Smuzhiyun event_force_ignore and event_use_ext_gap will be defined to one same event, and set one same event(same bit) in those two 2985*4882a593Smuzhiyun parameters is not allowed. Set bit(s) in event_force_ignore means the event(s) will be forced ignore in firmware silently. 2986*4882a593Smuzhiyun Set bit(s) in event_use_ext_gap mean the event(s) will use extend gap to inform host. Not set means not handle. 2987*4882a593Smuzhiyun 2988*4882a593Smuzhiyun If type=3, it will set hs_wakeup_interval. 2989*4882a593Smuzhiyun 2990*4882a593Smuzhiyun If type=4, it will set min_wake_holdoff. 2991*4882a593Smuzhiyun 2992*4882a593Smuzhiyun If no parameter provided, get is performed. 2993*4882a593Smuzhiyun 2994*4882a593Smuzhiyun The usages of parameters for "hscfg" are the same as that for "hssetpara" command. 2995*4882a593Smuzhiyun 2996*4882a593Smuzhiyunmgmtfilter 2997*4882a593Smuzhiyun This command is used to set management frame to wake up host when host suspend. 2998*4882a593Smuzhiyun 2999*4882a593Smuzhiyun Usage: 3000*4882a593Smuzhiyun mlanutl mlanX mgmtfilter <mgmtfilter.conf> 3001*4882a593Smuzhiyun 3002*4882a593Smuzhiyun where <mgmtfilter.conf> 3003*4882a593Smuzhiyun This conf file will set management frame catagory, action and frame mask. 3004*4882a593Smuzhiyun 3005*4882a593Smuzhiyun Examples: 3006*4882a593Smuzhiyun mlanutl mlan0 mgmtfilter mgmtfilter.conf 3007*4882a593Smuzhiyun 3008*4882a593Smuzhiyunauto_arp 3009*4882a593Smuzhiyun This command is used to enable/disable auto arp response in host sleep mode. 3010*4882a593Smuzhiyun No argument is used to get. 3011*4882a593Smuzhiyun 3012*4882a593Smuzhiyun where value of n is: 3013*4882a593Smuzhiyun 0 -- Disable 3014*4882a593Smuzhiyun 1 -- Enable 3015*4882a593Smuzhiyun 3016*4882a593Smuzhiyun Examples: 3017*4882a593Smuzhiyun mlanutl mlan0 auto_arp 0 : Disable auto arp response from FW 3018*4882a593Smuzhiyun mlanutl mlan0 auto_arp : Get auto arp configuration status 3019*4882a593Smuzhiyun 3020*4882a593Smuzhiyunhtstreamcfg 3021*4882a593Smuzhiyun This command is used to set/get HT stream configuration. 3022*4882a593Smuzhiyun The setting only takes effect in next association. 3023*4882a593Smuzhiyun 3024*4882a593Smuzhiyun Usage: 3025*4882a593Smuzhiyun mlanutl mlanX htstreamcfg [n] 3026*4882a593Smuzhiyun 3027*4882a593Smuzhiyun where <n> 3028*4882a593Smuzhiyun 0x11: HT stream 1x1 mode 3029*4882a593Smuzhiyun 0x22: HT stream 2x2 mode 3030*4882a593Smuzhiyun 3031*4882a593Smuzhiyun Examples: 3032*4882a593Smuzhiyun mlanutl mlan0 htstreamcfg : Get current setting 3033*4882a593Smuzhiyun mlanutl mlan0 htstreamcfg 0x11 : Set HT stream 1x1 mode 3034*4882a593Smuzhiyun mlanutl mlan0 htstreamcfg 0x22 : Set HT stream 2x2 mode 3035*4882a593Smuzhiyun 3036*4882a593Smuzhiyunhttxbfcap 3037*4882a593Smuzhiyun This command is used to set/get the TX beamforming capabilities. 3038*4882a593Smuzhiyun 3039*4882a593Smuzhiyun Usage: 3040*4882a593Smuzhiyun mlanutl mlanX httxbfcap [cap] 3041*4882a593Smuzhiyun 3042*4882a593Smuzhiyun where the parameters are, 3043*4882a593Smuzhiyun cap: TX beamforming capabilities 3044*4882a593Smuzhiyun Bit 0 : Implicit TX BF receiving capable 3045*4882a593Smuzhiyun Bit 1 : RX staggered sounding capable 3046*4882a593Smuzhiyun Bit 2 : TX staggered sounding capable 3047*4882a593Smuzhiyun Bit 3 : RX NDP capable 3048*4882a593Smuzhiyun Bit 4 : TX NDP capable 3049*4882a593Smuzhiyun Bit 5 : Implicit TX BF capable 3050*4882a593Smuzhiyun Bit 6-7 : Calibration 3051*4882a593Smuzhiyun 0: - not supported 3052*4882a593Smuzhiyun 1: - STA can respond to a calibration request using 3053*4882a593Smuzhiyun the CSI Report, but cannot initiate calibration 3054*4882a593Smuzhiyun 2: - reserved 3055*4882a593Smuzhiyun 3: - STA can both initiate and respond to a calibration request 3056*4882a593Smuzhiyun Bit 8 : Explicit CSI TX BF capable 3057*4882a593Smuzhiyun Bit 9 : Explicit non-compressed steering capable 3058*4882a593Smuzhiyun Bit 10 : Explicit compressed steering capable 3059*4882a593Smuzhiyun Bit 11-12: Explicit TX BF CSI feedback 3060*4882a593Smuzhiyun 0: - not supported 3061*4882a593Smuzhiyun 1: - delayed feedback 3062*4882a593Smuzhiyun 2: - immediate feedback 3063*4882a593Smuzhiyun 3: - delayed and immediate feedback 3064*4882a593Smuzhiyun Bit 13-14: Explicit non-compressed BF feedback capable 3065*4882a593Smuzhiyun 0: - not supported 3066*4882a593Smuzhiyun 1: - delayed feedback 3067*4882a593Smuzhiyun 2: - immediate feedback 3068*4882a593Smuzhiyun 3: - delayed and immediate feedback 3069*4882a593Smuzhiyun Bit 15-16: Explicit compressed BF feedback capable 3070*4882a593Smuzhiyun 0: - not supported 3071*4882a593Smuzhiyun 1: - delayed feedback 3072*4882a593Smuzhiyun 2: - immediate feedback 3073*4882a593Smuzhiyun 3: - delayed and immediate feedback 3074*4882a593Smuzhiyun Bit 17-18: Minimal grouping 3075*4882a593Smuzhiyun 0: - no grouping (STA supports groups of 1) 3076*4882a593Smuzhiyun 1: - groups of 1, 2 3077*4882a593Smuzhiyun 2: - groups of 1, 4 3078*4882a593Smuzhiyun 3: - groups of 1, 2, 4 3079*4882a593Smuzhiyun Bit 19-20: CSI number of beamformer antennas supported 3080*4882a593Smuzhiyun 0: - single TX antenna sounding 3081*4882a593Smuzhiyun 1: - 2 TX antenna sounding 3082*4882a593Smuzhiyun 2: - 3 TX antenna sounding 3083*4882a593Smuzhiyun 3: - 4 TX antenna sounding 3084*4882a593Smuzhiyun Bit 21-22: Non-compressed steering number of beamformer antennas supported 3085*4882a593Smuzhiyun 0: - single TX antenna sounding 3086*4882a593Smuzhiyun 1: - 2 TX antenna sounding 3087*4882a593Smuzhiyun 2: - 3 TX antenna sounding 3088*4882a593Smuzhiyun 3: - 4 TX antenna sounding 3089*4882a593Smuzhiyun Bit 23-24: Compressed steering number of beamformer antennas supported 3090*4882a593Smuzhiyun 0: - single TX antenna sounding 3091*4882a593Smuzhiyun 1: - 2 TX antenna sounding 3092*4882a593Smuzhiyun 2: - 3 TX antenna sounding 3093*4882a593Smuzhiyun 3: - 4 TX antenna sounding 3094*4882a593Smuzhiyun Bit 25-26: CSI max number of rows beamformer supported 3095*4882a593Smuzhiyun 0: - single row of CSI 3096*4882a593Smuzhiyun 1: - 2 rows of CSI 3097*4882a593Smuzhiyun 2: - 3 rows of CSI 3098*4882a593Smuzhiyun 3: - 4 rows of CSI 3099*4882a593Smuzhiyun Bit 27-28: Channel estimation capability 3100*4882a593Smuzhiyun 0: - 1 space time stream 3101*4882a593Smuzhiyun 1: - 2 space time streams 3102*4882a593Smuzhiyun 2: - 3 space time streams 3103*4882a593Smuzhiyun 3: - 4 space time streams 3104*4882a593Smuzhiyun Bit 29-31: Reserved 3105*4882a593Smuzhiyun 3106*4882a593Smuzhiyun Examples: 3107*4882a593Smuzhiyun mlanutl mlan0 httxbfcap : Get the current TX BF capabilities 3108*4882a593Smuzhiyun mlanutl mlan0 httxbfcap 0x0000001F : Set the TX BF capabilities of the 3109*4882a593Smuzhiyun Implicit TX BF receiving capable, 3110*4882a593Smuzhiyun RX staggered sounding capable, 3111*4882a593Smuzhiyun TX staggered sounding capable, 3112*4882a593Smuzhiyun RX NDP capable and TX NDP capable 3113*4882a593Smuzhiyun 3114*4882a593Smuzhiyunhttxbfcfg 3115*4882a593Smuzhiyun This command is used to configure the TX beamforming options. 3116*4882a593Smuzhiyun Note: Any new subcommand should be inserted in the second 3117*4882a593Smuzhiyun argument and each argument of the sub command should be 3118*4882a593Smuzhiyun separated by semicolon. For global configuration, the 3119*4882a593Smuzhiyun arguments should be separated by space. 3120*4882a593Smuzhiyun 3121*4882a593Smuzhiyun Usage: 3122*4882a593Smuzhiyun mlanutl mlanX httxbfcfg "<action>[;GlobalData/tsData/interval/txPeerData/snrData/txSounding]" 3123*4882a593Smuzhiyun 3124*4882a593Smuzhiyun where the parameters are, 3125*4882a593Smuzhiyun action: TX beamforming action 3126*4882a593Smuzhiyun 0: Control global parameters for beamforming 3127*4882a593Smuzhiyun 1: Performs NDP Sounding for PEER 3128*4882a593Smuzhiyun 2: TX BF interval in milliseconds 3129*4882a593Smuzhiyun 3: Enable/Disable beamforming/sounding for a particular peer 3130*4882a593Smuzhiyun 4: TX BF SNR Threshold for peer 3131*4882a593Smuzhiyun .. <for new subcommand> 3132*4882a593Smuzhiyun GlobalData: Global parameter arguments. 3133*4882a593Smuzhiyun It contains beamforming enable, sounding enable, FB type, snr_threshold 3134*4882a593Smuzhiyun sounding interval, Beamformig mode values seperated by space. 3135*4882a593Smuzhiyun Syntax: 3136*4882a593Smuzhiyun mlanutl mlanX httxbfcfg <action>;<beamforming enable> <sounding enable> <FB type> 3137*4882a593Smuzhiyun <snr_threshold> <sounding interval> <Beamforming mode> 3138*4882a593Smuzhiyun tsData: Trigger sounding for PEER specific arguments, 3139*4882a593Smuzhiyun it contains PEER MAC and status 3140*4882a593Smuzhiyun interval: TX BF interval in milliseconds 3141*4882a593Smuzhiyun txPeerData: Enable/Disable beamforming/sounding for the indicated peer, 3142*4882a593Smuzhiyun it contains PEER MAC, sounding, beamfoming options and FB type; 3143*4882a593Smuzhiyun snrData: TX BF SNR Threshold for peer, it contains PEER MAC and SNR 3144*4882a593Smuzhiyun 3145*4882a593Smuzhiyun Examples: 3146*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "0" : Get current global configuration parameter 3147*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "2;00:50:43:20:BF:64" : Get the TX BF periodicity for a given peer 3148*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "3" : Get the list of MAC addresses that have 3149*4882a593Smuzhiyun beamforming and/or sounding enabled 3150*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "4" : Get the list of PEER MAC, SNR tuples 3151*4882a593Smuzhiyun programmed into the firmware. 3152*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "0;0 0 3 10 500 5" : Disable beamforming, sounding, set FB type 3153*4882a593Smuzhiyun to 3, snr threshold to 10, sounding interval 3154*4882a593Smuzhiyun to 500 ms and beamforming mode to 5 3155*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "1;00:50:43:20:BF:64" : Perform NDP Trigger sounding to peer 3156*4882a593Smuzhiyun 00:50:43:20:BF:64 3157*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "2;00:50:43:20:BF:64;500" : Set TX BF periodicity for peer 00:50:43:20:BF:64 3158*4882a593Smuzhiyun to 500 milliseconds 3159*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "3;00:50:43:20:BF:43;1;0;3" : Enable beamforming, disable sounding and set 3160*4882a593Smuzhiyun FB type to 3 for peer 00:50:43:20:BF:43 3161*4882a593Smuzhiyun mlanutl mlan0 httxbfcfg "4;00:50:43:20:BF:24;43" : Set TX BF SNR threshold to peer 3162*4882a593Smuzhiyun 00:50:43:20:BF:24 with SNR 43 3163*4882a593Smuzhiyun 3164*4882a593Smuzhiyuninactivityto 3165*4882a593Smuzhiyun This command is used to set/get the inactivity timeout value, which specifies 3166*4882a593Smuzhiyun when WLAN device is put to sleep. 3167*4882a593Smuzhiyun 3168*4882a593Smuzhiyun Usage: 3169*4882a593Smuzhiyun mlanutl mlanX inactivityto <n> <m> <l> [k] 3170*4882a593Smuzhiyun 3171*4882a593Smuzhiyun where the parameter are: 3172*4882a593Smuzhiyun <n>: timeout unit in microseconds. 3173*4882a593Smuzhiyun <m>: Inactivity timeout for unicast data. 3174*4882a593Smuzhiyun <l>: Inactivity timeout for multicast data. 3175*4882a593Smuzhiyun [k]: Inactivity timeout for new Rx traffic after PS notification to AP. 3176*4882a593Smuzhiyun 3177*4882a593Smuzhiyun Examples: 3178*4882a593Smuzhiyun mlanutl mlan0 inactivityto : Get the timeout value 3179*4882a593Smuzhiyun mlanutl mlan0 inactivityto 1000 2 3 : Set timeout unit to 1000 us (1 ms), 3180*4882a593Smuzhiyun inactivity timeout for unicast data is 2 ms, 3181*4882a593Smuzhiyun inactivity timeout for multicast data is 3 ms 3182*4882a593Smuzhiyun 3183*4882a593Smuzhiyunipaddr 3184*4882a593Smuzhiyun This command is used to set/get IP address. 3185*4882a593Smuzhiyun 3186*4882a593Smuzhiyun Usage: 3187*4882a593Smuzhiyun mlanutl mlanX ipaddr ["<op>;<ipaddr>"] 3188*4882a593Smuzhiyun 3189*4882a593Smuzhiyun where <op> 3190*4882a593Smuzhiyun 0: Remove the IP address 3191*4882a593Smuzhiyun bit 0: Set IP address for broadcast ARP filter, which will be auto enabled 3192*4882a593Smuzhiyun in next host sleep configuration 3193*4882a593Smuzhiyun bit 1: Set IP address for auto broadcast ARP response 3194*4882a593Smuzhiyun 3195*4882a593Smuzhiyun Examples: 3196*4882a593Smuzhiyun mlanutl mlan0 ipaddr : Get current settings 3197*4882a593Smuzhiyun mlanutl mlan0 ipaddr "0" : Remove IP address 3198*4882a593Smuzhiyun mlanutl mlan0 ipaddr "1;192.168.0.5" : Set IP address for ARP filter 3199*4882a593Smuzhiyun mlanutl mlan0 ipaddr "3;192.168.0.6" : Set IP address for ARP filter 3200*4882a593Smuzhiyun : and auto ARP response 3201*4882a593Smuzhiyun 3202*4882a593Smuzhiyunlinkstats 3203*4882a593Smuzhiyun This command is used to get the link statistics from the firmware. 3204*4882a593Smuzhiyun 3205*4882a593Smuzhiyun Usage: 3206*4882a593Smuzhiyun mlanutl mlanX linkstats 3207*4882a593Smuzhiyun 3208*4882a593Smuzhiyunlisteninterval 3209*4882a593Smuzhiyun This command is used to set/get listen interval in assoc request. 3210*4882a593Smuzhiyun 3211*4882a593Smuzhiyun Usage: 3212*4882a593Smuzhiyun mlanutl mlanX listeninterval [l] 3213*4882a593Smuzhiyun 3214*4882a593Smuzhiyun where the parameter: 3215*4882a593Smuzhiyun [l]: Value of listen interval [Default 10] 3216*4882a593Smuzhiyun 3217*4882a593Smuzhiyun Examples: 3218*4882a593Smuzhiyun mlanutl mlan0 listeninterval : Display Listen interval 3219*4882a593Smuzhiyun mlanutl mlan0 listeninterval 1 : Set Listen interval to 1. 3220*4882a593Smuzhiyun 3221*4882a593Smuzhiyunmacctrl 3222*4882a593Smuzhiyun This command is used to set/get MAC control. 3223*4882a593Smuzhiyun It's recommended to read the current setting first to avoid override issue. 3224*4882a593Smuzhiyun 3225*4882a593Smuzhiyun Usage: 3226*4882a593Smuzhiyun mlanutl mlanX macctrl [n] 3227*4882a593Smuzhiyun 3228*4882a593Smuzhiyun where <n> 3229*4882a593Smuzhiyun bit 0: Rx enabled 3230*4882a593Smuzhiyun bit 1: Directed Filter enabled 3231*4882a593Smuzhiyun bit 2: LoopBack enabled 3232*4882a593Smuzhiyun bit 3: WEP enabled (use of WEP/TKIP is not recommended anymore) 3233*4882a593Smuzhiyun bit 4: EthernetII enabled 3234*4882a593Smuzhiyun bit 5: MultiCast enabled 3235*4882a593Smuzhiyun bit 6: BroadCast enabled 3236*4882a593Smuzhiyun bit 7: Promiscuous enabled 3237*4882a593Smuzhiyun bit 8: All MultiCast enabled 3238*4882a593Smuzhiyun bit 9: RTS/CTS enabled (0: CTS to self) 3239*4882a593Smuzhiyun bit 10: Enforce Protection enabled 3240*4882a593Smuzhiyun bit 11: Force 11N Protection enabled 3241*4882a593Smuzhiyun bit 12: Rx 802.11 Packets enabled 3242*4882a593Smuzhiyun bit 13: Ad-hoc g Protection enabled 3243*4882a593Smuzhiyun bit 14: Reserved 3244*4882a593Smuzhiyun bit 15: WEP Type (use of WEP/TKIP is not recommended anymore) 3245*4882a593Smuzhiyun bit 16: BandWidth Indication in RTS enabled 3246*4882a593Smuzhiyun bit 17: Dynamic BandWidth Indication Mode in RTS enabled 3247*4882a593Smuzhiyun bit 18-31: Reserved 3248*4882a593Smuzhiyun 3249*4882a593Smuzhiyun Examples: 3250*4882a593Smuzhiyun mlanutl mlan0 macctrl : Get current MAC control 3251*4882a593Smuzhiyun mlanutl mlan0 macctrl 0x13 : Set Rx enabled and Directed Filter enabled and EthernetII enabled 3252*4882a593Smuzhiyun mlanutl mlan0 macctrl 0x813 : Set Rx enabled and Directed Filter enabled and EthernetII enabled 3253*4882a593Smuzhiyun Force 11N Protection enabled 3254*4882a593Smuzhiyun 3255*4882a593Smuzhiyunmemrdwr 3256*4882a593Smuzhiyun This command is used to read/write the adapter memory. 3257*4882a593Smuzhiyun 3258*4882a593Smuzhiyun Usage: 3259*4882a593Smuzhiyun mlanutl mlanX memrdwr <address> [value] 3260*4882a593Smuzhiyun 3261*4882a593Smuzhiyun where the parameters are, 3262*4882a593Smuzhiyun <address>: memory address 3263*4882a593Smuzhiyun [value]: value to be written 3264*4882a593Smuzhiyun 3265*4882a593Smuzhiyun Examples: 3266*4882a593Smuzhiyun mlanutl mlan0 memrdwr 0x4cf70 : Read memory address 0x4cf70 3267*4882a593Smuzhiyun mlanutl mlan0 memrdwr 0x80000000 0xffffffff 3268*4882a593Smuzhiyun : Write 0xffffffff to memory address 0x80000000 3269*4882a593Smuzhiyun 3270*4882a593Smuzhiyunmiracastcfg 3271*4882a593Smuzhiyun This command is used to set/get the miracast configuration. 3272*4882a593Smuzhiyun 3273*4882a593Smuzhiyun Usage: 3274*4882a593Smuzhiyun mlanutl mlanX miracastcfg [l] [m] [n] 3275*4882a593Smuzhiyun 3276*4882a593Smuzhiyun where the parameters are, 3277*4882a593Smuzhiyun [l]: miracast mode 3278*4882a593Smuzhiyun 0: Disable 3279*4882a593Smuzhiyun 1: Source 3280*4882a593Smuzhiyun 2: Sink 3281*4882a593Smuzhiyun [m]: scan time per channel, in ms 3282*4882a593Smuzhiyun [n]: gap during two scans, in ms 3283*4882a593Smuzhiyun 3284*4882a593Smuzhiyun Examples: 3285*4882a593Smuzhiyun mlanutl mlan0 miracastcfg : Get miracast configuration 3286*4882a593Smuzhiyun mlanutl mlan0 miracastcfg 0 : Disable miracast configuration 3287*4882a593Smuzhiyun mlanutl mlan0 miracastcfg 1 20 40 : Set miracast mode as source, with scan time 3288*4882a593Smuzhiyun 20ms per channel and gap during two scans 40ms 3289*4882a593Smuzhiyun 3290*4882a593Smuzhiyunmgmtframectrl 3291*4882a593Smuzhiyun This command is used to set/get registered frame type to passthrough. 3292*4882a593Smuzhiyun 3293*4882a593Smuzhiyun Usage: 3294*4882a593Smuzhiyun mlanutl mlanX mgmtframectrl [<mask>] 3295*4882a593Smuzhiyun mlanutl uapX mgmtframectrl [<mask>] 3296*4882a593Smuzhiyun 3297*4882a593Smuzhiyun Where the parameter is: 3298*4882a593Smuzhiyun <mask> : the bit mask of management frame reception. 3299*4882a593Smuzhiyun : Bit 0 - Association Request 3300*4882a593Smuzhiyun : Bit 1 - Association Response 3301*4882a593Smuzhiyun : Bit 2 - Re-Association Request 3302*4882a593Smuzhiyun : Bit 3 - Re-Association Response 3303*4882a593Smuzhiyun : Bit 4 - Probe Request 3304*4882a593Smuzhiyun : Bit 5 - Probe Response 3305*4882a593Smuzhiyun : Bit 8 - Beacon Frames 3306*4882a593Smuzhiyun : Bit 13 - Action Frames 3307*4882a593Smuzhiyun 3308*4882a593Smuzhiyun Examples: 3309*4882a593Smuzhiyun mlanutl mlan0 mgmtframectrl : Get present mask 3310*4882a593Smuzhiyun mlanutl mlan0 mgmtframectrl 0x0020 : Bit 5 is set, Forward probe response frames to application layer 3311*4882a593Smuzhiyun 3312*4882a593Smuzhiyunmgmtframetx 3313*4882a593Smuzhiyun This command is used to send management frame. 3314*4882a593Smuzhiyun 3315*4882a593Smuzhiyun Usage: 3316*4882a593Smuzhiyun mlanutl mlanX mgmtframetx <mgmt_frame.conf> 3317*4882a593Smuzhiyun 3318*4882a593Smuzhiyun Where the parameter is: 3319*4882a593Smuzhiyun mgmt_frame.conf : The configuration file contains the management frame. 3320*4882a593Smuzhiyun 3321*4882a593Smuzhiyun Examples: 3322*4882a593Smuzhiyun mlanutl mlan0 mgmtframetx config/mgmt_frame.conf 3323*4882a593Smuzhiyun 3324*4882a593Smuzhiyunmpactrl 3325*4882a593Smuzhiyun This command is used to set/get the Tx, Rx SDIO aggregation parameters. 3326*4882a593Smuzhiyun Note: The parameters can be set only in disconnected state. 3327*4882a593Smuzhiyun 3328*4882a593Smuzhiyun Usage: 3329*4882a593Smuzhiyun mlanutl mlanX mpactrl [tx_ena] [rx_ena] [tx_size] [rx_size] [tx_ports] [rx_ports] 3330*4882a593Smuzhiyun 3331*4882a593Smuzhiyun where the parameter are: 3332*4882a593Smuzhiyun [tx_ena]: Enable/disable (1/0) Tx MP-A 3333*4882a593Smuzhiyun [rx_ena]: Enable/disable (1/0) Rx MP-A 3334*4882a593Smuzhiyun [tx_size]: Size of Tx MP-A buffer 3335*4882a593Smuzhiyun [rx_size]: Size of Rx MP-A buffer 3336*4882a593Smuzhiyun [tx_ports]: Max ports (1-16) for Tx MP-A 3337*4882a593Smuzhiyun [rx_ports]: Max ports (1-16) for Rx MP-A 3338*4882a593Smuzhiyun default values are 1 1 16384 32768 16 16 3339*4882a593Smuzhiyun The MP-A may be disabled by default at build time if the MMC driver byte mode patch 3340*4882a593Smuzhiyun is not available in kernel. 3341*4882a593Smuzhiyun 3342*4882a593Smuzhiyun Examples: 3343*4882a593Smuzhiyun mlanutl mlan0 mpactrl : Get MP aggregation parameters 3344*4882a593Smuzhiyun mlanutl mlan0 mpactrl 0 0 3345*4882a593Smuzhiyun : Disable MP aggregation for Tx, Rx respectively 3346*4882a593Smuzhiyun mlanutl mlan0 mpactrl 1 1 8192 8192 8 8 3347*4882a593Smuzhiyun : Enable MP aggregation for Tx, Rx 3348*4882a593Smuzhiyun : Set Tx, Rx buffer size to 8192 bytes 3349*4882a593Smuzhiyun : Set maximum Tx, Rx ports to 8 3350*4882a593Smuzhiyun 3351*4882a593Smuzhiyunnetmon 3352*4882a593Smuzhiyun This command is used to set/get network monitor configuration. 3353*4882a593Smuzhiyun Note: For channel specified mode, the configuration should be issued when 3354*4882a593Smuzhiyun STA/AP is disconnected. For in-channel sniffer mode, the configuration 3355*4882a593Smuzhiyun can be issued irrespective of the STA/AP connected state, and requires 3356*4882a593Smuzhiyun specification of only action and filter parameters. If any of the STA/AP 3357*4882a593Smuzhiyun connection is active, the in-channel sniffer mode will inherently work 3358*4882a593Smuzhiyun on the active band and channel configuration. 3359*4882a593Smuzhiyun 3360*4882a593Smuzhiyun Usage: 3361*4882a593Smuzhiyun mlanutl <interface> netmon [<act> [<filter> <band> <chan> <opt>]] 3362*4882a593Smuzhiyun 3363*4882a593Smuzhiyun Where the parameters are: 3364*4882a593Smuzhiyun <interface> : mlanX 3365*4882a593Smuzhiyun <act> : (0) disable any network monitor activity 3366*4882a593Smuzhiyun : (1) enable channel specified sniffer mode activity 3367*4882a593Smuzhiyun <filter> : network monitor fitler flag 3368*4882a593Smuzhiyun bit 0: (1/0) enable/disable management frame 3369*4882a593Smuzhiyun bit 1: (1/0) enable/disable control frame 3370*4882a593Smuzhiyun bit 2: (1/0) enable/disable data frame 3371*4882a593Smuzhiyun <band> : 802.11 band 3372*4882a593Smuzhiyun bit 0: B 3373*4882a593Smuzhiyun bit 1: G 3374*4882a593Smuzhiyun bit 2: A 3375*4882a593Smuzhiyun bit 3: GN 3376*4882a593Smuzhiyun bit 4: AN 3377*4882a593Smuzhiyun bit 5: AC 2.4G 3378*4882a593Smuzhiyun bit 6: AC 5G 3379*4882a593Smuzhiyun <chan> : channel to monitor 3380*4882a593Smuzhiyun <opt> : [offset] 3381*4882a593Smuzhiyun [offset] : secondary channel bandwidth 3382*4882a593Smuzhiyun 0 - Bandwidth 20Mhz 3383*4882a593Smuzhiyun 1 - HT Bandwidth 40Mhz sec channel above 3384*4882a593Smuzhiyun 3 - HT Bandwidth 40Mhz sec channel below 3385*4882a593Smuzhiyun 4 - VHT Bandwidth 80Mhz 3386*4882a593Smuzhiyun 3387*4882a593Smuzhiyun Examples: 3388*4882a593Smuzhiyun mlanutl mlan0 netmon : Get the current network monitor configuration 3389*4882a593Smuzhiyun mlanutl mlan0 netmon 0 : Disable network monitor activity 3390*4882a593Smuzhiyun mlanutl mlan0 netmon 1 4 11 6 : Enable channel specified sniffer activity, set filter 3391*4882a593Smuzhiyun data frame, band B/G/GN and channel 6 3392*4882a593Smuzhiyun mlanutl mlan0 netmon 1 7 20 64 1 : Enable channel specified sniffer activity, set filter 3393*4882a593Smuzhiyun management, control and data frame, band A/AN, 3394*4882a593Smuzhiyun channel 64 and secondary channel above 3395*4882a593Smuzhiyun 3396*4882a593Smuzhiyunmonitormode 3397*4882a593Smuzhiyun This command is used to set/get monitor mode. 3398*4882a593Smuzhiyun Note: The enable monitor mode setting should be issued when no active interface exist. 3399*4882a593Smuzhiyun Before we want to use sniffer mode, need enable monitor mode. 3400*4882a593Smuzhiyun After this can only use sniffer mode, don't make STA/P2P/UAP work. 3401*4882a593Smuzhiyun When sniffer mode using done, should disable monitor mode. 3402*4882a593Smuzhiyun 3403*4882a593Smuzhiyun Usage: 3404*4882a593Smuzhiyun mlanutl mlanX monitormode [l] 3405*4882a593Smuzhiyun 3406*4882a593Smuzhiyun where the parameter: 3407*4882a593Smuzhiyun [l] 3408*4882a593Smuzhiyun 0 : Disable monitor mode 3409*4882a593Smuzhiyun 1 : Enable monitor mode 3410*4882a593Smuzhiyun <none>: Get monitor mode 3411*4882a593Smuzhiyun 3412*4882a593Smuzhiyun Examples: 3413*4882a593Smuzhiyun mlanutl mlan0 monitormode : Get monitor mode. 3414*4882a593Smuzhiyun mlanutl mlan0 monitormode 1 : Enable monitor mode. 3415*4882a593Smuzhiyun 3416*4882a593Smuzhiyunoffchannel 3417*4882a593Smuzhiyun This command is used to set/cancel the offchannel configuration. 3418*4882a593Smuzhiyun Note: This command only can be used when cfg80211 is enabled during load time. 3419*4882a593Smuzhiyun 3420*4882a593Smuzhiyun Usage: 3421*4882a593Smuzhiyun mlanutl mlanX offchannel [<l> <m> <n> <bandwidth>] 3422*4882a593Smuzhiyun 3423*4882a593Smuzhiyun where 3424*4882a593Smuzhiyun <l> 3425*4882a593Smuzhiyun 0 : Cancel the offchannel configuration 3426*4882a593Smuzhiyun 1 : Set the offchannel configuration 3427*4882a593Smuzhiyun <m> 3428*4882a593Smuzhiyun The channel to configure 3429*4882a593Smuzhiyun <n> 3430*4882a593Smuzhiyun The duration for which to configure 3431*4882a593Smuzhiyun <bandwidth> : channel bandwidth 3432*4882a593Smuzhiyun 0 - Bandwidth 20Mhz 3433*4882a593Smuzhiyun 1 - HT Bandwidth 40Mhz sec channel above 3434*4882a593Smuzhiyun 3 - HT Bandwidth 40Mhz sec channel below 3435*4882a593Smuzhiyun 4 - VHT Bandwidth 80Mhz 3436*4882a593Smuzhiyun 3437*4882a593Smuzhiyun Examples: 3438*4882a593Smuzhiyun mlanutl mlan0 offchannel : Get current offchannel status. 3439*4882a593Smuzhiyun mlanutl mlan0 offchannel 0 : Cancel the offchannel configuration. 3440*4882a593Smuzhiyun mlanutl mlan0 offchannel 1 3 5 : Configure channel 3 for 5 milliseconds. 3441*4882a593Smuzhiyun mlanutl mlan0 offchannel 1 36 5000 : Configure channel 36 for 5000 milliseconds. 3442*4882a593Smuzhiyun mlanutl mlan0 offchannel 1 64 500 4 : Configure channel 64 in 80MHz for 500 milliseconds. 3443*4882a593Smuzhiyun 3444*4882a593Smuzhiyunotpuserdata 3445*4882a593Smuzhiyun This command is used to get the OTP user data. 3446*4882a593Smuzhiyun 3447*4882a593Smuzhiyun Where 3448*4882a593Smuzhiyun <l> is <user_data_length> 3449*4882a593Smuzhiyun <user_data_length> - This parameter specifies the length of OTP user data to be read 3450*4882a593Smuzhiyun 3451*4882a593Smuzhiyun Examples: 3452*4882a593Smuzhiyun mlanutl mlan0 otpuserdata 10 : Get the 10-byte OTP user data 3453*4882a593Smuzhiyun 3454*4882a593Smuzhiyunpassphrase 3455*4882a593Smuzhiyun This command is used to set/get passphrase for WPA-PSK/WPA2-PSK/WPA3-SAE mode.// use of WPA/TKIP is not recommended anymore 3456*4882a593Smuzhiyun 3457*4882a593Smuzhiyun Where <l> 3458*4882a593Smuzhiyun ASCII string for ssid/passphrase/psk/sae_password. 3459*4882a593Smuzhiyun 3460*4882a593Smuzhiyun Setting psk for WPA3 SAE protocol is not possible, as new psk gets generated 3461*4882a593Smuzhiyun everytime in protocol flow. 3462*4882a593Smuzhiyun 3463*4882a593Smuzhiyun 1) "0;<ssid=valid ssid>" - This will get the passphrase, AKMP 3464*4882a593Smuzhiyun for specified ssid, if none specified then it will get all. 3465*4882a593Smuzhiyun 3466*4882a593Smuzhiyun Example: 3467*4882a593Smuzhiyun mlanutl mlan0 passphrase "0;ssid=nxp" 3468*4882a593Smuzhiyun 3469*4882a593Smuzhiyun 2) "1;<psk=64 byte hexpsk>;<passphrase=1-63 byte passphare> 3470*4882a593Smuzhiyun <ssid=valid ssid>" - Passphrase and psk cannot be provided for the same SSID. 3471*4882a593Smuzhiyun This command takes only one SSID at a time, If ssid= is present it should contain 3472*4882a593Smuzhiyun a passphrase or psk. If no arguments are provided then AKMP=802.1x, and passphrase 3473*4882a593Smuzhiyun should be provided after association. 3474*4882a593Smuzhiyun End of each parameter should be followed by a ';'(except for the last parameter) 3475*4882a593Smuzhiyun as the delimiter. If ';' or '/' has to be used in an SSID then a '/' should be preceded 3476*4882a593Smuzhiyun to ';' or '/' as a escape. 3477*4882a593Smuzhiyun 3478*4882a593Smuzhiyun Examples: 3479*4882a593Smuzhiyun mlanutl mlan0 passphrase "1;ssid=nxpAP;passphrase=abcdefgd" 3480*4882a593Smuzhiyun mlanutl mlan0 passphrase "1;ssid=nxp AP;psk=<64 bytes hexpsk>" 3481*4882a593Smuzhiyun 3482*4882a593Smuzhiyun If user wants to input the ssid as "nxp; AP" then command has to be 3483*4882a593Smuzhiyun mlanutl mlan0 passphrase "1;ssid=nxp/; AP;passphrase=abcdefgh" 3484*4882a593Smuzhiyun 3485*4882a593Smuzhiyun If user wants to input the ssid as "//;" then command has to be 3486*4882a593Smuzhiyun mlanutl mlan0 passphrase "1;ssid=/////;;passphrase=abcdefgh" 3487*4882a593Smuzhiyun 3488*4882a593Smuzhiyun 3) "2;<ssid=valid ssid>" - This will clear the passphrase 3489*4882a593Smuzhiyun for specified ssid, if none specified then it will clear all. 3490*4882a593Smuzhiyun 3491*4882a593Smuzhiyun Examples: 3492*4882a593Smuzhiyun mlanutl mlan0 passphrase "2;ssid=nxp" 3493*4882a593Smuzhiyun mlanutl mlan0 passphrase "2" : Clear all profiles and disable embedded supplicant 3494*4882a593Smuzhiyun 3495*4882a593Smuzhiyun 4)"1;ssid=<ssid>;sae_password=<password>" This will set WPA3 SAE ssid & password. sae_password should be within the range of 8 to 255 char. 3496*4882a593Smuzhiyun Examples: 3497*4882a593Smuzhiyun mlanutl mlan0 passphrase "1;ssid=nxp;sae_password=1234567890" 3498*4882a593Smuzhiyun 3499*4882a593Smuzhiyunpb_bypass 3500*4882a593Smuzhiyun This command is used to get the By-passed TX packet from upper layer. 3501*4882a593Smuzhiyun 3502*4882a593Smuzhiyun Usage: 3503*4882a593Smuzhiyun 3504*4882a593Smuzhiyun mlanutl mlanX pb_bypass [data_1, data_2, ... data_n] 3505*4882a593Smuzhiyun 3506*4882a593Smuzhiyun where value of data_1, data_2, ... data_n isBypass TX Data 3507*4882a593Smuzhiyun 3508*4882a593Smuzhiyunpcieregrw 3509*4882a593Smuzhiyun This command is used to read/write PCIE register. 3510*4882a593Smuzhiyun 3511*4882a593Smuzhiyun Usage: 3512*4882a593Smuzhiyun mlanutl mlanX pcieregrw <offset> [value] 3513*4882a593Smuzhiyun 3514*4882a593Smuzhiyun where the parameters are, 3515*4882a593Smuzhiyun <offset>: The offset of PCIE register 3516*4882a593Smuzhiyun [value]: The value to write 3517*4882a593Smuzhiyun 3518*4882a593Smuzhiyun Examples: 3519*4882a593Smuzhiyun mlanutl mlan0 pcieregrw 0x48 : Read PCIE register 0x48 3520*4882a593Smuzhiyun mlanutl mlan0 pcieregrw 0x44 8 : Write 8 to PCIE register 0x44 3521*4882a593Smuzhiyun 3522*4882a593Smuzhiyunpciebar0regrw 3523*4882a593Smuzhiyun This command is used to read/write PCIE register/memory from BAR0. 3524*4882a593Smuzhiyun 3525*4882a593Smuzhiyun Usage: 3526*4882a593Smuzhiyun mlanutl mlanX pciebar0regrw <offset> [value] 3527*4882a593Smuzhiyun 3528*4882a593Smuzhiyun where the parameters are, 3529*4882a593Smuzhiyun <offset>: The offset of PCIE register 3530*4882a593Smuzhiyun [value]: The value to write 3531*4882a593Smuzhiyun 3532*4882a593Smuzhiyun Examples: 3533*4882a593Smuzhiyun mlanutl mlan0 pciebar0regrw 0x48 : Read PCIE register 0x48 3534*4882a593Smuzhiyun mlanutl mlan0 pciebar0regrw 0x44 8 : Write 8 to PCIE register 0x44 3535*4882a593Smuzhiyun 3536*4882a593Smuzhiyunpmfcfg 3537*4882a593Smuzhiyun This command is used to set/get management frame protection parameters. 3538*4882a593Smuzhiyun 3539*4882a593Smuzhiyun Usage: 3540*4882a593Smuzhiyun mlanutl mlanX pmfcfg <m> <n> 3541*4882a593Smuzhiyun 3542*4882a593Smuzhiyun where 3543*4882a593Smuzhiyun <m>: Management Frame Protection Capable (MFPC) 3544*4882a593Smuzhiyun 1: Management Frame Protection Capable 3545*4882a593Smuzhiyun 0: Management Frame Protection not Capable 3546*4882a593Smuzhiyun <n>: Management Frame Protection Required (MFPR) 3547*4882a593Smuzhiyun 1: Management Frame Protection Required 3548*4882a593Smuzhiyun 0: Management Frame Protection Optional 3549*4882a593Smuzhiyun Default setting is PMF not capable. 3550*4882a593Smuzhiyun m = 0, n = 1 is an invalid combination 3551*4882a593Smuzhiyun 3552*4882a593Smuzhiyun Examples: 3553*4882a593Smuzhiyun mlanutl mlan0 pmfcfg : Get PMF parameters 3554*4882a593Smuzhiyun mlanutl mlan0 pmfcfg 1 0 : Set MFPC and make MFPR optional 3555*4882a593Smuzhiyun 3556*4882a593Smuzhiyunport_ctrl 3557*4882a593Smuzhiyun This command is used to Set/Get Port Control mode. No argument is used to get. 3558*4882a593Smuzhiyun 3559*4882a593Smuzhiyun where value of n is: 3560*4882a593Smuzhiyun 0 -- Disable 3561*4882a593Smuzhiyun 1 -- Enable 3562*4882a593Smuzhiyun 3563*4882a593Smuzhiyun Examples: 3564*4882a593Smuzhiyun mlanutl mlan0 port_ctrl 1 : Enable Port Control mode 3565*4882a593Smuzhiyun mlanutl mlan0 port_ctrl : Get Port Control mode status 3566*4882a593Smuzhiyun 3567*4882a593Smuzhiyunpowercons 3568*4882a593Smuzhiyun This command is used to set the local transmit power constraint. 3569*4882a593Smuzhiyun Value is in dbm unit. This command is only used for ad-hoc start. 3570*4882a593Smuzhiyun 3571*4882a593Smuzhiyun Usage: 3572*4882a593Smuzhiyun mlanutl mlanX powercons [n] 3573*4882a593Smuzhiyun 3574*4882a593Smuzhiyun Examples: 3575*4882a593Smuzhiyun mlanutl mlanX powercons : get the current setting 3576*4882a593Smuzhiyun mlanutl mlanX powercons 12 : set local power constraint to 12 dbm 3577*4882a593Smuzhiyun 3578*4882a593Smuzhiyunpscfg 3579*4882a593Smuzhiyun This command is used to set/get PS configuration parameters. 3580*4882a593Smuzhiyun 3581*4882a593Smuzhiyun Usage: 3582*4882a593Smuzhiyun mlanutl mlanX pscfg [k] [d] [l] ... 3583*4882a593Smuzhiyun 3584*4882a593Smuzhiyun Where the parameters: 3585*4882a593Smuzhiyun [k]: Keep alive null packet interval (0: Unchanged, -1: Disable, n: Interval in seconds) 3586*4882a593Smuzhiyun [d]: DTIM interval ( 0: Unchanged, 3587*4882a593Smuzhiyun 1-5: Value, 3588*4882a593Smuzhiyun 65534: DTIM will be ignored, listen interval will be used, 3589*4882a593Smuzhiyun 65533: Closest DTIM to the listen interval period will be used ) 3590*4882a593Smuzhiyun [l]: Local listen interval ( 0: Unchanged, 3591*4882a593Smuzhiyun -1: Disable, 3592*4882a593Smuzhiyun 1-49: Value in beacon intervals, 3593*4882a593Smuzhiyun >= 50: Value in TUs ) 3594*4882a593Smuzhiyun [b]: Beacon miss timeout (0: Unchanged, 1-50: Value in milliseconds, 65535: Disable) 3595*4882a593Smuzhiyun [p]: Delay to PS (0-65535: Value in milliseconds, default 1000ms) 3596*4882a593Smuzhiyun [m]: PS mode (0: Unchanged, 1: Auto mode, 2: PS-Poll mode, 3: PS Null mode) 3597*4882a593Smuzhiyun No change if parameters are not provided. 3598*4882a593Smuzhiyun 3599*4882a593Smuzhiyun Examples: 3600*4882a593Smuzhiyun mlanutl mlan0 pscfg : Get all the current PS configuration settings 3601*4882a593Smuzhiyun mlanutl mlan0 pscfg 3 4 : Set PS keep alive null packet interval to 3 seconds 3602*4882a593Smuzhiyun and DTIM interval to 4, all the other configurations 3603*4882a593Smuzhiyun are unchanged 3604*4882a593Smuzhiyun mlanutl mlan0 pscfg 0 0 0 0 50 2 : Set delay to PS to 50 ms and PS mode to PS-Poll mode, 3605*4882a593Smuzhiyun keep the others unchanged 3606*4882a593Smuzhiyun 3607*4882a593Smuzhiyunbcntimeoutcfg 3608*4882a593Smuzhiyun This command is used to set Beacon timeout parameters. 3609*4882a593Smuzhiyun 3610*4882a593Smuzhiyun Usage: 3611*4882a593Smuzhiyun mlanutl mlanX bcntimeoutcfg [l] [m] [o] [p] 3612*4882a593Smuzhiyun 3613*4882a593Smuzhiyun Where the parameters: 3614*4882a593Smuzhiyun [l]: Beacon miss timeout period Rx window (in ms) 3615*4882a593Smuzhiyun [m]: Beacon miss timeout period (unit in beacon interval) 3616*4882a593Smuzhiyun [o]: Beacon reacquire timeout period Rx window (unit in beacon interval) 3617*4882a593Smuzhiyun [p]: Beacon reacquire timeout period (unit in beacon interval) 3618*4882a593Smuzhiyun Please note that it would be better [m]+[p] not exceed 64. 3619*4882a593Smuzhiyun Examples: 3620*4882a593Smuzhiyun mlanutl mlan0 bcntimeoutcfg 10 30 2 30 : Set beacon timeout configure to 3621*4882a593Smuzhiyun Beacon miss timeout period Rx window : 10 (ms) 3622*4882a593Smuzhiyun Beacon miss timeout period : 30 (Beacon Interval) 3623*4882a593Smuzhiyun Beacon reacquire timeout period Rx window : 2 (Beacon Interval) 3624*4882a593Smuzhiyun Beacon reacquire timeout period : 30 (Beacon Interval) 3625*4882a593Smuzhiyun 3626*4882a593Smuzhiyunpsmode 3627*4882a593Smuzhiyun This command is used to set/get the IEEE PS mode configuration. 3628*4882a593Smuzhiyun 3629*4882a593Smuzhiyun Usage: 3630*4882a593Smuzhiyun mlanutl mlanX psmode [l] 3631*4882a593Smuzhiyun 3632*4882a593Smuzhiyun where the parameter: 3633*4882a593Smuzhiyun [l] 3634*4882a593Smuzhiyun 0 : Disable IEEE PS mode 3635*4882a593Smuzhiyun 1 : Enable IEEE PS mode 3636*4882a593Smuzhiyun <none>: Get IEEE PS mode 3637*4882a593Smuzhiyun 3638*4882a593Smuzhiyun Examples: 3639*4882a593Smuzhiyun mlanutl mlan0 psmode : Get IEEE PS mode. 3640*4882a593Smuzhiyun mlanutl mlan0 psmode 1 : Enable IEEE PS mode. 3641*4882a593Smuzhiyun 3642*4882a593Smuzhiyunqconfig 3643*4882a593Smuzhiyun Send a WMM AC Queue configuration command to get/set/default params 3644*4882a593Smuzhiyun 3645*4882a593Smuzhiyun Configure or get the parameters of a WMM AC queue. The command takes 3646*4882a593Smuzhiyun an optional Queue Id as a last parameter. Without the queue id, all 3647*4882a593Smuzhiyun queues will be acted upon. 3648*4882a593Smuzhiyun 3649*4882a593Smuzhiyun Usage: 3650*4882a593Smuzhiyun mlanutl mlanX qconfig def [Queue Id: 0-3] 3651*4882a593Smuzhiyun mlanutl mlanX qconfig get [Queue Id: 0-3] 3652*4882a593Smuzhiyun mlanutl mlanX qconfig set msdu <lifetime in TUs> [Queue Id: 0-3] 3653*4882a593Smuzhiyun 3654*4882a593Smuzhiyunqoscfg 3655*4882a593Smuzhiyun This command sets WMM IE QOS info when an argument is given, and gets current WMM 3656*4882a593Smuzhiyun IE QOS info when no argument is given. 3657*4882a593Smuzhiyun 3658*4882a593Smuzhiyun Examples: 3659*4882a593Smuzhiyun mlanutl mlanX qoscfg 0x0f : Set WMM IE QOS info to 0x0f 3660*4882a593Smuzhiyun mlanutl mlanX qoscfg : Get WMM IE QOS info 3661*4882a593Smuzhiyun 3662*4882a593Smuzhiyunqstatus 3663*4882a593Smuzhiyun This command retrieves the current status of the WMM queues. If WMM 3664*4882a593Smuzhiyun is enabled then it displays the information for each AC in a table. 3665*4882a593Smuzhiyun 3666*4882a593Smuzhiyun Usage: 3667*4882a593Smuzhiyun mlanutl mlanX qstatus 3668*4882a593Smuzhiyun 3669*4882a593Smuzhiyunradioctrl 3670*4882a593Smuzhiyun This command is used to turn on/off the radio. 3671*4882a593Smuzhiyun Note: The radio can be disabled only in disconnected state. 3672*4882a593Smuzhiyun 3673*4882a593Smuzhiyun where value of n is: 3674*4882a593Smuzhiyun 0 -- Disable 3675*4882a593Smuzhiyun 1 -- Enable 3676*4882a593Smuzhiyun 3677*4882a593Smuzhiyun Examples: 3678*4882a593Smuzhiyun mlanutl mlan0 radioctrl 1 : Turn the radio on 3679*4882a593Smuzhiyun mlanutl mlan0 radioctrl : Get radio status 3680*4882a593Smuzhiyun 3681*4882a593Smuzhiyunrdeeprom 3682*4882a593Smuzhiyun This command is used to read the EEPROM contents of the card. 3683*4882a593Smuzhiyun 3684*4882a593Smuzhiyun Usage: 3685*4882a593Smuzhiyun mlanutl mlanX rdeeprom <offset> <length> 3686*4882a593Smuzhiyun 3687*4882a593Smuzhiyun where the parameters are, 3688*4882a593Smuzhiyun <offset>: multiples of 4 3689*4882a593Smuzhiyun <length>: 4-20, multiples of 4 3690*4882a593Smuzhiyun 3691*4882a593Smuzhiyun Example: 3692*4882a593Smuzhiyun mlanutl mlan0 rdeeprom 0 20 : Read 20 bytes of EEPROM data from offset 0 3693*4882a593Smuzhiyun 3694*4882a593Smuzhiyunreassoctrl 3695*4882a593Smuzhiyun This command is used to turn on/off re-association in driver. 3696*4882a593Smuzhiyun 3697*4882a593Smuzhiyun Usage: 3698*4882a593Smuzhiyun mlanutl mlanX reassoctrl [n] 3699*4882a593Smuzhiyun 3700*4882a593Smuzhiyun Where value of n is: 3701*4882a593Smuzhiyun 0 -- Disable 3702*4882a593Smuzhiyun 1 -- Enable 3703*4882a593Smuzhiyun 3704*4882a593Smuzhiyun Examples: 3705*4882a593Smuzhiyun mlanutl mlan0 reassoctrl : Get re-association status 3706*4882a593Smuzhiyun mlanutl mlan0 reassoctrl 1 : Turn re-association on 3707*4882a593Smuzhiyun 3708*4882a593Smuzhiyunregioncode 3709*4882a593Smuzhiyun This command is used to set/get the region code in the station. 3710*4882a593Smuzhiyun Note: This command should be issued at beginning before band/channel selection 3711*4882a593Smuzhiyun and association. 3712*4882a593Smuzhiyun 3713*4882a593Smuzhiyun where value is 'region code' for various regions like 3714*4882a593Smuzhiyun USA FCC, Canada IC, Europe ETSI, Japan ... 3715*4882a593Smuzhiyun The special code (0xff) is used for Japan to support channel 1-14 in B/G/N mode. 3716*4882a593Smuzhiyun 3717*4882a593Smuzhiyun Examples: 3718*4882a593Smuzhiyun mlanutl mlan0 regioncode : Get region code 3719*4882a593Smuzhiyun mlanutl mlan0 regioncode 0x10 : Set region code to USA (0x10) 3720*4882a593Smuzhiyun Note : in some case regioncode will be 0 after updated countycode or 80211d 3721*4882a593Smuzhiyun i.e. mlanutl mlanX countrycode (CA, JP, CN, DE, ES AT, BR, RU) 3722*4882a593Smuzhiyun or uaputl.exe sys_cfg_80211d state 1 country (CA, JP, CN, DE, ES AT, BR, RU) 3723*4882a593Smuzhiyun Please use cfp instead of it. 3724*4882a593Smuzhiyun 3725*4882a593Smuzhiyunregrdwr 3726*4882a593Smuzhiyun This command is used to read/write the adapter register. 3727*4882a593Smuzhiyun 3728*4882a593Smuzhiyun Usage: 3729*4882a593Smuzhiyun mlanutl mlanX regrdwr <type> <offset> [value] 3730*4882a593Smuzhiyun 3731*4882a593Smuzhiyun where the parameters are, 3732*4882a593Smuzhiyun <type>: 1:MAC, 2:BBP, 3:RF, 5:CAU, 6:PSU, 7:BCA, 8:CIU, 0x81:MAC2, 0x82:BBP2, 0x83: RF2, 0x87: BCA2 3733*4882a593Smuzhiyun <type>: 1:MAC, 2:BBP, 3:RF, 5:CAU, 6:PSU, 7:BCA, 8:CIU 3734*4882a593Smuzhiyun <type>: 1:MAC/SOC, 2:BBP, 3:RF, 5:CAU, 6:PSU, 7:BCA 3735*4882a593Smuzhiyun <offset>: offset of register 3736*4882a593Smuzhiyun [value]: value to be written 3737*4882a593Smuzhiyun Note: 3738*4882a593Smuzhiyun BBP reg (type 2) 0xXZZZ: 3739*4882a593Smuzhiyun X: 0=BBUD, 8=BBUA. 3740*4882a593Smuzhiyun ZZZ: offset (0-0xFFF). 3741*4882a593Smuzhiyun RF reg (type 3) 0xXYZZ: 3742*4882a593Smuzhiyun 3743*4882a593Smuzhiyun For 8887/8897/8777 3744*4882a593Smuzhiyun 1. If Y == 0, access RFU BASE Register. 3745*4882a593Smuzhiyun X = Path ID (0=Path_A, 1=Path_B), ZZ = offset (0-0xFF). 3746*4882a593Smuzhiyun 2. If Y != 0, access RFU XCVR Register on Path Y (1=Path_A, 2=Path_B). 3747*4882a593Smuzhiyun X = Page # (0=Page_1, 1=Page_2, 2=Page_3 if chip support), ZZ: offset (0-0xFF). 3748*4882a593Smuzhiyun For 8977/8997/8987 3749*4882a593Smuzhiyun X = Path ID (0-1) 3750*4882a593Smuzhiyun Y = Page Number (0-6) in selected Path 3751*4882a593Smuzhiyun ZZ = Register offset in selected path/page 3752*4882a593Smuzhiyun 3753*4882a593Smuzhiyun Examples: 3754*4882a593Smuzhiyun mlanutl mlan0 regrdwr 1 0x60 : Read the MAC register 3755*4882a593Smuzhiyun mlanutl mlan0 regrdwr 1 0x794 0x80000000 : Write 0x80000000 to MAC register 3756*4882a593Smuzhiyun mlanutl mlan0 regrdwr 0x81 0x60 :Read MAC2 register 3757*4882a593Smuzhiyun 3758*4882a593Smuzhiyunrejectaddbareq 3759*4882a593Smuzhiyun This command is used to set/get the conditions of rejecting addba request. 3760*4882a593Smuzhiyun 3761*4882a593Smuzhiyun Usage: 3762*4882a593Smuzhiyun mlanutl mlanX rejectaddbareq [conditions] 3763*4882a593Smuzhiyun mlanutl uapX rejectaddbareq [conditions] 3764*4882a593Smuzhiyun 3765*4882a593Smuzhiyun Where conditions are: 3766*4882a593Smuzhiyun bit 0 = 1 -- reject the addba request when host sleep activated 3767*4882a593Smuzhiyun bit 1 = 1 -- reject the addba request when FW auto re-connect enabled 3768*4882a593Smuzhiyun this bit is only used with STA BSS 3769*4882a593Smuzhiyun others -- reserved 3770*4882a593Smuzhiyun 3771*4882a593Smuzhiyun Examples: 3772*4882a593Smuzhiyun mlanutl mlan0 rejectaddbareq : Get the reject addba request conditions 3773*4882a593Smuzhiyun mlanutl mlan0 rejectaddbareq 0x1 : Reject the addba request 3774*4882a593Smuzhiyun when host sleep activated 3775*4882a593Smuzhiyun mlanutl mlan0 rejectaddbareq 0x2 : Reject the addba request 3776*4882a593Smuzhiyun when FW auto re-connect enabled 3777*4882a593Smuzhiyun mlanutl mlan0 rejectaddbareq 0x3 : Reject the addba request when 3778*4882a593Smuzhiyun host sleep activated or 3779*4882a593Smuzhiyun FW auto re-connect enabled 3780*4882a593Smuzhiyun mlanutl uap0 rejectaddbareq 0x1 : Reject the addba request 3781*4882a593Smuzhiyun when host sleep activated 3782*4882a593Smuzhiyun 3783*4882a593Smuzhiyunscancfg 3784*4882a593Smuzhiyun This command is used to set/get scan configuration parameters. 3785*4882a593Smuzhiyun 3786*4882a593Smuzhiyun Usage: 3787*4882a593Smuzhiyun mlanutl mlanX scancfg [t] [m] [p] [s] [a] [b] [c] [ext] [gap] 3788*4882a593Smuzhiyun 3789*4882a593Smuzhiyun where the parameters: 3790*4882a593Smuzhiyun [t]: Scan Type (0: Unchanged, 1: Active, 2: Passive, default Active) 3791*4882a593Smuzhiyun [m]: Scan Mode (0: Unchanged, 1: BSS, 2: IBSS, 3: Any, default Any) 3792*4882a593Smuzhiyun [p]: Scan Probes (0: Unchanged, 1-5: Number of probes per channel, default 4) 3793*4882a593Smuzhiyun [s]: Specific Scan Time (0: Unchanged, n: Value in ms, default 110 ms, max 500 ms) 3794*4882a593Smuzhiyun [a]: Active Scan Time (0: Unchanged, n: Value in ms, default 200 ms, max 500 ms) 3795*4882a593Smuzhiyun [b]: Passive Scan Time (0: Unchanged, n: Value in ms, default 200 ms, max 2000 ms) 3796*4882a593Smuzhiyun [c]: Passive to Active Scan (0: Unchanged, 1: Enable, 2: Disable, default Enable) 3797*4882a593Smuzhiyun [ext]: Extended scan (0: Unchanged, 1: Legacy scan, 2: Extended scan, 3: Extended scan enhance) 3798*4882a593Smuzhiyun [gap]: Time gap between two scans in milliseconds (max value 500ms) 3799*4882a593Smuzhiyun No change if the parameter is 0 or the parameter is not provided. 3800*4882a593Smuzhiyun 3801*4882a593Smuzhiyun Examples: 3802*4882a593Smuzhiyun mlanutl mlan0 scancfg : Get all the current scan configuration settings 3803*4882a593Smuzhiyun mlanutl mlan0 scancfg 1 3 : Set scan type to active and scan mode to any, 3804*4882a593Smuzhiyun all the other scan configurations are unchanged 3805*4882a593Smuzhiyun mlanutl mlan0 scancfg 0 1 2 200 : Set scan mode to BSS, number of probes to 2 and 3806*4882a593Smuzhiyun specific scan time to 200 ms, all the other scan 3807*4882a593Smuzhiyun configurations are unchanged 3808*4882a593Smuzhiyun mlanutl mlan0 scancfg 0 0 0 0 0 0 1 : Set Passive to Active Scan to enable, all the 3809*4882a593Smuzhiyun other scan configurations are unchanged 3810*4882a593Smuzhiyun mlanutl mlan0 scancfg 2 0 0 0 0 0 2 : Set scan type to passive, Passive to Active 3811*4882a593Smuzhiyun Scan to disable, all the other scan configurations 3812*4882a593Smuzhiyun are unchanged 3813*4882a593Smuzhiyun 3814*4882a593Smuzhiyunsdcmd52rw 3815*4882a593Smuzhiyun This command is used to read/write a controller register in 3816*4882a593Smuzhiyun Secure Digital I/O Interfaces. 3817*4882a593Smuzhiyun 3818*4882a593Smuzhiyun Usage: 3819*4882a593Smuzhiyun mlanutl mlanX sdcmd52rw <function number> <register address> [value] 3820*4882a593Smuzhiyun 3821*4882a593Smuzhiyun For SDIO MMC driver, only function 0 and 1 access is allowed. And there 3822*4882a593Smuzhiyun is a limitation for function 0 write, only vendor specific CCCR registers 3823*4882a593Smuzhiyun (0xf0 -0xff) are permiited. 3824*4882a593Smuzhiyun 3825*4882a593Smuzhiyun Examples: 3826*4882a593Smuzhiyun mlanutl mlan0 sdcmd52rw 1 3 : Read SDIO function 1 register 3 3827*4882a593Smuzhiyun mlanutl mlan0 sdcmd52rw 1 1 0x3f : Write 0x3f to SDIO function 1 register 1 3828*4882a593Smuzhiyun 3829*4882a593Smuzhiyunsdcmd53rw 3830*4882a593Smuzhiyun This command is used to issue a CMD53 read/write data in 3831*4882a593Smuzhiyun Secure Digital I/O Interfaces. 3832*4882a593Smuzhiyun 3833*4882a593Smuzhiyun Usage: 3834*4882a593Smuzhiyun mlanutl mlanX sdcmd53rw <func> <address> <mode> <blksize> <blknum> [data1] ... [dataN] 3835*4882a593Smuzhiyun 3836*4882a593Smuzhiyun where the parameters are, 3837*4882a593Smuzhiyun <func>: function number (0/1/2/..) 3838*4882a593Smuzhiyun <address>: data address 3839*4882a593Smuzhiyun <mode>: byte mode/block mode (0/1) 3840*4882a593Smuzhiyun <blksize>: block size (32/64/../512, NA for byte mode) 3841*4882a593Smuzhiyun <blknum>: block number or byte number 3842*4882a593Smuzhiyun <data1> ... <dataN>: data for write 3843*4882a593Smuzhiyun 3844*4882a593Smuzhiyun Note: The total data length is block size * block number for block mode 3845*4882a593Smuzhiyun or byte number for byte mode. The max data length is 2000-byte. 3846*4882a593Smuzhiyun For write the data pattern will be duplicated to data buffer. 3847*4882a593Smuzhiyun 3848*4882a593Smuzhiyun Examples: 3849*4882a593Smuzhiyun mlanutl mlan0 sdcmd53rw 0 0x8000 1 0x40 2 3850*4882a593Smuzhiyun mlanutl mlan0 sdcmd53rw 1 0x10000 0 1 5 0x0a 0x0b 0x0c 0x0d 0x0e 3851*4882a593Smuzhiyun 3852*4882a593Smuzhiyunsdioclock 3853*4882a593Smuzhiyun Turn On(1) or Off(0) the SDIO clock. 3854*4882a593Smuzhiyun 3855*4882a593Smuzhiyun Usage: 3856*4882a593Smuzhiyun mlanutl mlanX sdioclock 1 (on) 3857*4882a593Smuzhiyun mlanutl mlanX sdioclock 0 (off) 3858*4882a593Smuzhiyun mlanutl mlanX sdioclock (get the current clock state) 3859*4882a593Smuzhiyun 3860*4882a593Smuzhiyun 3861*4882a593Smuzhiyunsetuserscan 3862*4882a593Smuzhiyun Initiate a customized scan and retrieve the results 3863*4882a593Smuzhiyun 3864*4882a593Smuzhiyun Usage: 3865*4882a593Smuzhiyun mlanutl mlanX setuserscan [ARGS] 3866*4882a593Smuzhiyun 3867*4882a593Smuzhiyun Where [ARGS]: 3868*4882a593Smuzhiyun ssid="[SSID]" specify a SSID filter for the scan 3869*4882a593Smuzhiyun group=<group mask> specify the channel group(s) to scan 3870*4882a593Smuzhiyun chan=[chan#][band][mode] where band is [a,b,g,e] and mode is 3871*4882a593Smuzhiyun blank for unchange, or 'c' for active or 'p' for passive 3872*4882a593Smuzhiyun bssid=xx:xx:xx:xx:xx:xx specify a BSSID filter for the scan 3873*4882a593Smuzhiyun wc="[WILDCARD SSID]" specify a UNIX pattern matching filter (using * 3874*4882a593Smuzhiyun and ?) for SSIDs found in a broadcast probe 3875*4882a593Smuzhiyun keep=[0 or 1] keep the previous scan results (1), discard (0) 3876*4882a593Smuzhiyun dur=[scan time] time to scan for each channel in milliseconds 3877*4882a593Smuzhiyun gap=[gap time] Time gap between two scans in milliseconds 3878*4882a593Smuzhiyun probes=[#] number of probe requests to send on each chan 3879*4882a593Smuzhiyun for each broadcast probe required and each SSID 3880*4882a593Smuzhiyun specific probe required (1-5) 3881*4882a593Smuzhiyun bss_type=[1,2,3] BSS type: 1 (Infra), 2(Adhoc), 3(Any) 3882*4882a593Smuzhiyun sort_by_ch Sort by channel number in ascending order. 3883*4882a593Smuzhiyun Default mode: Sort by Signal Strength in descending order. 3884*4882a593Smuzhiyun scan_type=[0,1] ext scan type (0-1) 0: legacy, 1: enhance scan 3885*4882a593Smuzhiyun 3886*4882a593Smuzhiyun Any combination of the above arguments can be supplied on the command line. 3887*4882a593Smuzhiyun If the chan token is absent, a full channel scan will be completed by driver. 3888*4882a593Smuzhiyun If the dur or probes tokens are absent, the driver default setting will be 3889*4882a593Smuzhiyun used. The bssid and ssid fields, if blank, will produce an unfiltered scan. 3890*4882a593Smuzhiyun It's allowed to input multiple ssid/wc entries, the max entry number is 10. 3891*4882a593Smuzhiyun The type field will default to 3 (Any) and the keep field will default to 0 3892*4882a593Smuzhiyun (Discard). 3893*4882a593Smuzhiyun 3894*4882a593Smuzhiyun Examples: 3895*4882a593Smuzhiyun 1) Perform an active scan on channels 1, 6, and 11 in the 'g' band: 3896*4882a593Smuzhiyun setuserscan chan=1g,6g,11g 3897*4882a593Smuzhiyun 3898*4882a593Smuzhiyun 2) Perform a passive scan on channel 11 for 20 ms: 3899*4882a593Smuzhiyun setuserscan chan=11gp dur=20 3900*4882a593Smuzhiyun 3901*4882a593Smuzhiyun 3) Perform an active scan on channels 1, 6, and 11; and a passive scan on 3902*4882a593Smuzhiyun channel 36 in the 'a' band: 3903*4882a593Smuzhiyun setuserscan chan=1g,6g,11g,36ap 3904*4882a593Smuzhiyun 3905*4882a593Smuzhiyun 4) Perform an active scan on channel 6 and 36 for specific SSID: 3906*4882a593Smuzhiyun setuserscan chan=6g,36a ssid=TestAP1 ssid=TestAP2 3907*4882a593Smuzhiyun 3908*4882a593Smuzhiyun 5) Scan all available channels (B/G/N, A bands) for a specific BSSID, keep 3909*4882a593Smuzhiyun the current scan table intact, update existing or append new scan data: 3910*4882a593Smuzhiyun setuserscan bssid=00:50:43:20:12:82 keep=1 3911*4882a593Smuzhiyun 3912*4882a593Smuzhiyun 6) Scan channel 6, for all infrastructure networks, sending two probe 3913*4882a593Smuzhiyun requests. Keep the previous scan table intact. Update any duplicate 3914*4882a593Smuzhiyun BSSID/SSID matches with the new scan data: 3915*4882a593Smuzhiyun setuserscan chan=6g bss_type=1 probes=2 keep=1 3916*4882a593Smuzhiyun 3917*4882a593Smuzhiyun 7) Scan channel 1 and 6, for all networks matching the NXP*AP 3918*4882a593Smuzhiyun or AP*NXP? patterns and for NXPTst SSID. Generate 3 broadcast 3919*4882a593Smuzhiyun probes for the patterns and 3 SSID specific probes for NXPTst on 3920*4882a593Smuzhiyun both channel 1 and channel 6. 3921*4882a593Smuzhiyun setuserscan chan=1g,6g probes=3 wc="NXP*AP" wc="AP*NXP?" ssid="NXPTst" 3922*4882a593Smuzhiyun 3923*4882a593Smuzhiyun 8) Scan all the channels for specified band. 3924*4882a593Smuzhiyun setuserscan chan=0g 3925*4882a593Smuzhiyun 9) Perform active scan for a list of specific BSSIDs 3926*4882a593Smuzhiyun setuserscan bssid=00:50:43:20:12:82 bssid=48:e2:44:3f:ec:76 3927*4882a593Smuzhiyun 3928*4882a593Smuzhiyun 9) Scan channel 1 and 6, send 3 probe requests, scan each channel for 40 ms 3929*4882a593Smuzhiyun with time gap of 50ms between 2 scans 3930*4882a593Smuzhiyun setuserscan chan=1g,6g probes=3 dur=40 gap=50 3931*4882a593Smuzhiyun 3932*4882a593Smuzhiyun 10) Perform an enhance scan 3933*4882a593Smuzhiyun setuserscan scan_type=1 3934*4882a593Smuzhiyun 3935*4882a593Smuzhiyun All entries in the scan table (not just the new scan data when keep=1) 3936*4882a593Smuzhiyun will be displayed upon completion by use of the getscantable ioctl. 3937*4882a593Smuzhiyuncancelscan 3938*4882a593Smuzhiyun This command is used to cancel scan 3939*4882a593Smuzhiyun Usage: 3940*4882a593Smuzhiyun mlanutl mlanX cancelscan 3941*4882a593Smuzhiyunsleepparams 3942*4882a593Smuzhiyun This command is used to set the sleepclock configurations 3943*4882a593Smuzhiyun 3944*4882a593Smuzhiyun Usage: 3945*4882a593Smuzhiyun mlanutl mlanX sleepparams [<p1> <p2> <p3> <p4> <p5> <p6>] 3946*4882a593Smuzhiyun 3947*4882a593Smuzhiyun where: 3948*4882a593Smuzhiyun p1 is Sleep clock error in ppm (0-65535) 3949*4882a593Smuzhiyun p2 is Wakeup offset in usec (0-65535) 3950*4882a593Smuzhiyun p3 is Clock stabilization time in usec (0-65535) 3951*4882a593Smuzhiyun p4 is Control periodic calibration (0-2) 3952*4882a593Smuzhiyun p5 is Control the use of external sleep clock (0-2) 3953*4882a593Smuzhiyun p6 is reserved for debug (0-65535) 3954*4882a593Smuzhiyun 3955*4882a593Smuzhiyun Examples: 3956*4882a593Smuzhiyun mlanutl mlan0 sleepparams : Get current sleepclock configuration 3957*4882a593Smuzhiyun mlanutl mlan0 sleepparams 10 1000 2000 1 0 128 : Set sleepclock configuration 3958*4882a593Smuzhiyun 3959*4882a593Smuzhiyunsleeppd 3960*4882a593Smuzhiyun This command is used to configure the sleep period of the WLAN device. 3961*4882a593Smuzhiyun 3962*4882a593Smuzhiyun Usage: 3963*4882a593Smuzhiyun mlanutl mlanX sleeppd [<period>] 3964*4882a593Smuzhiyun 3965*4882a593Smuzhiyun Where the parameter is: 3966*4882a593Smuzhiyun period: sleep period in milliseconds. Range 10~60. 0 for disable. 3967*4882a593Smuzhiyun 3968*4882a593Smuzhiyun Examples: 3969*4882a593Smuzhiyun mlanutl mlan0 sleeppd : Get sleep period configuration 3970*4882a593Smuzhiyun mlanutl mlan0 sleeppd 10 : Set sleep period to 10 ms 3971*4882a593Smuzhiyun 3972*4882a593Smuzhiyunsysclock 3973*4882a593Smuzhiyun This command is used to set/get system clocks in MHz. 3974*4882a593Smuzhiyun The current system clock, configurable system clocks and all of the 3975*4882a593Smuzhiyun supported system clocks will be returned if no parameter provided. 3976*4882a593Smuzhiyun 3977*4882a593Smuzhiyun Examples: 3978*4882a593Smuzhiyun mlanutl mlan0 sysclock : Get system clocks 3979*4882a593Smuzhiyun 80 80 128 128 128 5 11 16 20 22 32 40 44 64 80 106 128 160 ... 3980*4882a593Smuzhiyun (The current system clock is 80 MHz. 3981*4882a593Smuzhiyun The configurable system clocks of non-security, security, non-security 3982*4882a593Smuzhiyun A-MPDU and security A-MPDU are 80 MHz, 128 MHz, 128 MHz and 128 MHz. 3983*4882a593Smuzhiyun The supported system clocks are 5 MHz, 11 MHz, ..., 160 MHz, 182 MHz, 3984*4882a593Smuzhiyun 213 MHz, 256 MHz, 320 Mhz, 366 MHz , ... . the Max system clocks is different 3985*4882a593Smuzhiyun for different chips, you could use this command to get the supported system clock) 3986*4882a593Smuzhiyun 3987*4882a593Smuzhiyun mlanutl mlanX sysclock 80 : Set system clock in non-security mode 3988*4882a593Smuzhiyun to 80 MHz, no change for others 3989*4882a593Smuzhiyun mlanutl mlanX sysclock 0 0 128 : Set system clock in non-security A-MPDU 3990*4882a593Smuzhiyun mode to 128 MHz, no changes for others 3991*4882a593Smuzhiyun 3992*4882a593Smuzhiyuntcpackenh 3993*4882a593Smuzhiyun This command is used to set/get TCP ACK enhancement mode. 3994*4882a593Smuzhiyun 3995*4882a593Smuzhiyun Usage: 3996*4882a593Smuzhiyun mlanutl mlanX tcpackenh [l] [m] 3997*4882a593Smuzhiyun 3998*4882a593Smuzhiyun where 3999*4882a593Smuzhiyun [l] is a control to set TCP ACK enhancement mode 4000*4882a593Smuzhiyun 1 -- Enable TCP ACK enhancement (default) 4001*4882a593Smuzhiyun 0 -- Disable TCP ACK enhancement 4002*4882a593Smuzhiyun [m] is to configure TCP ACK max hold number 4003*4882a593Smuzhiyun default value is 9, which means driver could hold up to 9 TCP ACK and 4004*4882a593Smuzhiyun only send the last one to peer. 4005*4882a593Smuzhiyun 4006*4882a593Smuzhiyun Examples: 4007*4882a593Smuzhiyun mlanutl mlan0 tcpackenh : Display TCP ACK enhancement 4008*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 : Enable TCP ACK enhancement 4009*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 0 : Disable TCP ACK enhancement 4010*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 1 : Enable TCP ACK enhancement and 4011*4882a593Smuzhiyun configure TCP ACK drop percentage to 50% 4012*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 2 : Enable TCP ACK enhancement and 4013*4882a593Smuzhiyun configure TCP ACK drop percentage to 67% 4014*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 3 : Enable TCP ACK enhancement and 4015*4882a593Smuzhiyun configure TCP ACK drop percentage to 75% 4016*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 4 : Enable TCP ACK enhancement and 4017*4882a593Smuzhiyun configure TCP ACK drop percentage to 80% 4018*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 5 : Enable TCP ACK enhancement and 4019*4882a593Smuzhiyun configure TCP ACK drop percentage to 83% 4020*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 6 : Enable TCP ACK enhancement and 4021*4882a593Smuzhiyun configure TCP ACK drop percentage to 85% 4022*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 7 : Enable TCP ACK enhancement and 4023*4882a593Smuzhiyun configure TCP ACK drop percentage to 87.5% 4024*4882a593Smuzhiyun mlanutl mlan0 tcpackenh 1 8 : Enable TCP ACK enhancement and 4025*4882a593Smuzhiyun configure TCP ACK drop percentage to 88.8% 4026*4882a593Smuzhiyun 4027*4882a593Smuzhiyunhost_tdls_config 4028*4882a593Smuzhiyun This command is used to support channel switch and uapsd for host based tdls 4029*4882a593Smuzhiyun 4030*4882a593Smuzhiyun Usage: 4031*4882a593Smuzhiyun mlanutl mlanX host_tdls_config <host_tdls.conf> 4032*4882a593Smuzhiyun 4033*4882a593Smuzhiyun 4034*4882a593Smuzhiyun Where the parameter is: 4035*4882a593Smuzhiyun host_tdls.conf: The configuration file specifying to enable/disable uapsd/cs and related parameters. 4036*4882a593Smuzhiyun 4037*4882a593Smuzhiyun Examples: 4038*4882a593Smuzhiyun mlanutl mlan0 host_tdls_config config/host_tdls.conf 4039*4882a593Smuzhiyun : enable or disable uapsd/cs, config the channel related ie, based on the configuration file. 4040*4882a593Smuzhiyuntdls_channel_switch 4041*4882a593Smuzhiyun This command is used to send TDLS channel switch request. 4042*4882a593Smuzhiyun 4043*4882a593Smuzhiyun Usage: 4044*4882a593Smuzhiyun mlanutl mlanX tdls_channel_switch <tdls.conf> 4045*4882a593Smuzhiyun 4046*4882a593Smuzhiyun Where the parameter is: 4047*4882a593Smuzhiyun tdls.conf: The configuration file for sending TDLS channel switch command. 4048*4882a593Smuzhiyun 4049*4882a593Smuzhiyun Examples: 4050*4882a593Smuzhiyun mlanutl mlan0 tdls_channel_switch config/tdls.conf 4051*4882a593Smuzhiyun : Send TDLS channel switch command, based on the configuration file. 4052*4882a593Smuzhiyun 4053*4882a593Smuzhiyuntdls_config 4054*4882a593Smuzhiyun This command is used to enable/disable TDLS on device. 4055*4882a593Smuzhiyun 4056*4882a593Smuzhiyun Usage: 4057*4882a593Smuzhiyun mlanutl mlanX tdls_config <0/1> 4058*4882a593Smuzhiyun 4059*4882a593Smuzhiyun Where the parameter is: 4060*4882a593Smuzhiyun 0: Enable TDLS. 4061*4882a593Smuzhiyun 1: Disable TDLS. 4062*4882a593Smuzhiyun 4063*4882a593Smuzhiyun Examples: 4064*4882a593Smuzhiyun mlanutl mlan0 tdls_config 0 : Disable TDLS 4065*4882a593Smuzhiyun mlanutl mlan0 tdls_config 1 : Enable TDLS 4066*4882a593Smuzhiyun 4067*4882a593Smuzhiyuntdls_cs_params 4068*4882a593Smuzhiyun This command is used to set TDLS channel switch params 4069*4882a593Smuzhiyun 4070*4882a593Smuzhiyun Usage: 4071*4882a593Smuzhiyun mlanutl mlanX tdls_cs_params <tdls.conf> 4072*4882a593Smuzhiyun 4073*4882a593Smuzhiyun Where the parameter is: 4074*4882a593Smuzhiyun tdls.conf: The configuration file specifying the TDLS channel switch params. 4075*4882a593Smuzhiyun 4076*4882a593Smuzhiyun Examples: 4077*4882a593Smuzhiyun mlanutl mlan0 tdls_cs_params config/tdls.conf 4078*4882a593Smuzhiyun : Set TDLS channel switch params, based on the configuration file. 4079*4882a593Smuzhiyun 4080*4882a593Smuzhiyuntdls_debug 4081*4882a593Smuzhiyun This command is used for FW debug functionality and tests. 4082*4882a593Smuzhiyun 4083*4882a593Smuzhiyuntdls_disable_cs 4084*4882a593Smuzhiyun This command is used to disable TDLS channel switch 4085*4882a593Smuzhiyun 4086*4882a593Smuzhiyun Usage: 4087*4882a593Smuzhiyun mlanutl mlanX tdls_disable_cs <tdls.conf> 4088*4882a593Smuzhiyun 4089*4882a593Smuzhiyun Where the parameter is: 4090*4882a593Smuzhiyun tdls.conf: The configuration file to disable TDLS channel switch. 4091*4882a593Smuzhiyun 4092*4882a593Smuzhiyun Examples: 4093*4882a593Smuzhiyun mlanutl mlan0 tdls_disable_cs config/tdls.conf 4094*4882a593Smuzhiyun : Disable TDLS channel switch, based on the configuration file. 4095*4882a593Smuzhiyun 4096*4882a593Smuzhiyuntdls_discovery 4097*4882a593Smuzhiyun This command is used to request TDLS discovery. 4098*4882a593Smuzhiyun 4099*4882a593Smuzhiyun Usage: 4100*4882a593Smuzhiyun mlanutl mlanX tdls_discovery <tdls.conf> 4101*4882a593Smuzhiyun 4102*4882a593Smuzhiyun Where the parameter is: 4103*4882a593Smuzhiyun tdls.conf: The configuration file to request TDLS discovery. 4104*4882a593Smuzhiyun 4105*4882a593Smuzhiyun Examples: 4106*4882a593Smuzhiyun mlanutl mlan0 tdls_discovery config/tdls.conf 4107*4882a593Smuzhiyun : Request TDLS discovery based on the configuration file. 4108*4882a593Smuzhiyun 4109*4882a593Smuzhiyuntdls_link_status [peer_mac_address] 4110*4882a593Smuzhiyun This command is used to get link information about TDLS links or 4111*4882a593Smuzhiyun a TDLS link correponding to peer mac address. 4112*4882a593Smuzhiyun 4113*4882a593Smuzhiyun Usage: 4114*4882a593Smuzhiyun mlanutl mlanX tdls_link_status <tdls.conf> 4115*4882a593Smuzhiyun 4116*4882a593Smuzhiyun Where the parameter is: 4117*4882a593Smuzhiyun tdls.conf: The configuration file to send TDLS command to get current link status. 4118*4882a593Smuzhiyun 4119*4882a593Smuzhiyun Examples: 4120*4882a593Smuzhiyun mlanutl mlan0 tdls_link_status config/tdls.conf 4121*4882a593Smuzhiyun : Send TDLS command to get current link status based on the configuration file. 4122*4882a593Smuzhiyun 4123*4882a593Smuzhiyuntdls_powermode 4124*4882a593Smuzhiyun This command is used to send TDLS powermode request. 4125*4882a593Smuzhiyun 4126*4882a593Smuzhiyun Usage: 4127*4882a593Smuzhiyun mlanutl mlanX tdls_powermode <tdls.conf> 4128*4882a593Smuzhiyun 4129*4882a593Smuzhiyun Where the parameter is: 4130*4882a593Smuzhiyun tdls.conf: The configuration file for sending TDLS powermode command. 4131*4882a593Smuzhiyun 4132*4882a593Smuzhiyun Examples: 4133*4882a593Smuzhiyun mlanutl mlan0 tdls_powermode config/tdls.conf 4134*4882a593Smuzhiyun : Send TDLS powermode (either 0:Active, 1:PowerSave) command, based on the configuration file. 4135*4882a593Smuzhiyun 4136*4882a593Smuzhiyuntdls_setinfo 4137*4882a593Smuzhiyun This command is used for setting the capabilities of the TDLS station. 4138*4882a593Smuzhiyun 4139*4882a593Smuzhiyun Usage: 4140*4882a593Smuzhiyun mlanutl mlanX tdls_setinfo <tdls.conf> 4141*4882a593Smuzhiyun 4142*4882a593Smuzhiyun Where the parameter is: 4143*4882a593Smuzhiyun tdls.conf: The configuration file specifying the capabilities of the TDLS station. 4144*4882a593Smuzhiyun 4145*4882a593Smuzhiyun Examples: 4146*4882a593Smuzhiyun mlanutl mlan0 tdls_setinfo config/tdls.conf 4147*4882a593Smuzhiyun : Set capabilities of the TDLS station, based on the configuration file. 4148*4882a593Smuzhiyun 4149*4882a593Smuzhiyuntdls_setup 4150*4882a593Smuzhiyun This command is used to send TDLS setup request. 4151*4882a593Smuzhiyun 4152*4882a593Smuzhiyun Usage: 4153*4882a593Smuzhiyun mlanutl mlanX tdls_setup <tdls.conf> 4154*4882a593Smuzhiyun 4155*4882a593Smuzhiyun Where the parameter is: 4156*4882a593Smuzhiyun tdls.conf: The configuration file for sending TDLS setup request. 4157*4882a593Smuzhiyun 4158*4882a593Smuzhiyun Examples: 4159*4882a593Smuzhiyun mlanutl mlan0 tdls_setup config/tdls.conf 4160*4882a593Smuzhiyun : Send TDLS setup request, based on the configuration file. 4161*4882a593Smuzhiyun 4162*4882a593Smuzhiyuntdls_stop_channel_switch 4163*4882a593Smuzhiyun This command is used to send stop TDLS channel switch request. 4164*4882a593Smuzhiyun 4165*4882a593Smuzhiyun Usage: 4166*4882a593Smuzhiyun mlanutl mlanX tdls_stop_channel_switch <tdls.conf> 4167*4882a593Smuzhiyun 4168*4882a593Smuzhiyun Where the parameter is: 4169*4882a593Smuzhiyun tdls.conf: The configuration file for sending stop TDLS channel switch command. 4170*4882a593Smuzhiyun 4171*4882a593Smuzhiyun Examples: 4172*4882a593Smuzhiyun mlanutl mlan0 tdls_stop_channel_switch config/tdls.conf 4173*4882a593Smuzhiyun : Send stop TDLS channel switch command, based on the configuration file. 4174*4882a593Smuzhiyun 4175*4882a593Smuzhiyuntdls_teardown 4176*4882a593Smuzhiyun This command is used to send TDLS teardown request. 4177*4882a593Smuzhiyun 4178*4882a593Smuzhiyun Usage: 4179*4882a593Smuzhiyun mlanutl mlanX tdls_teardown <tdls.conf> 4180*4882a593Smuzhiyun 4181*4882a593Smuzhiyun Where the parameter is: 4182*4882a593Smuzhiyun tdls.conf: The configuration file for requesting teardown of TDLS link. 4183*4882a593Smuzhiyun 4184*4882a593Smuzhiyun Examples: 4185*4882a593Smuzhiyun mlanutl mlan0 tdls_teardown config/tdls.conf 4186*4882a593Smuzhiyun : Request teardown of TDLS link, based on the configuration file. 4187*4882a593Smuzhiyun 4188*4882a593Smuzhiyunhal_phy_cfg 4189*4882a593Smuzhiyun This command is used to set the hal/phy related config parameters 4190*4882a593Smuzhiyun 4191*4882a593Smuzhiyun Usage: 4192*4882a593Smuzhiyun mlanutl mlanX/uapX hal_phy_cfg <hal_phy_cfg.conf> 4193*4882a593Smuzhiyun 4194*4882a593Smuzhiyun Where the parameter is: 4195*4882a593Smuzhiyun hal_phy_cfg.conf: The configuration file specifying to the values of hal/phy related config parameters 4196*4882a593Smuzhiyun 4197*4882a593Smuzhiyun Examples: 4198*4882a593Smuzhiyun mlanutl mlan0 hal_phy_cfg config/hal_phy_cfg.conf 4199*4882a593Smuzhiyun : to enable or disable 11b_psd_mask the file would contain following paramters 4200*4882a593Smuzhiyun hal_phy_cfg{ 4201*4882a593Smuzhiyun 11b_psd_mask_cfg=1 # 1: 11b_psd_mask_enable, 0: 11b_psd_mask_disable 4202*4882a593Smuzhiyun } 4203*4882a593Smuzhiyun 4204*4882a593Smuzhiyunthermal 4205*4882a593Smuzhiyun This command is used to get the current thermal reading. 4206*4882a593Smuzhiyun 4207*4882a593Smuzhiyun Examples: 4208*4882a593Smuzhiyun mlanutl mlan0 thermal : Get thermal reading 4209*4882a593Smuzhiyun 4210*4882a593Smuzhiyunts_status 4211*4882a593Smuzhiyun This command queries the FW for the status of TSIDs 0 through 7 4212*4882a593Smuzhiyun configured via call admission control and displays the results in a 4213*4882a593Smuzhiyun table. 4214*4882a593Smuzhiyun 4215*4882a593Smuzhiyun Usage: 4216*4882a593Smuzhiyun mlanutl mlanX ts_status 4217*4882a593Smuzhiyun 4218*4882a593Smuzhiyuntsf 4219*4882a593Smuzhiyun Set/Get the TSF timer value for the station. Station maintains a TSF timer with 4220*4882a593Smuzhiyun modulus 2^64 counting in increments of microseconds. 4221*4882a593Smuzhiyun 4222*4882a593Smuzhiyun Usage: 4223*4882a593Smuzhiyun mlanutl mlanX/uapX tsf [t] 4224*4882a593Smuzhiyun 4225*4882a593Smuzhiyun where, 4226*4882a593Smuzhiyun [t] : 64bit timestamp value in microseconds 4227*4882a593Smuzhiyun 4228*4882a593Smuzhiyun Examples: 4229*4882a593Smuzhiyun mlanutl mlan0 tsf : Get timestamp 4230*4882a593Smuzhiyun mlanutl uap0 tsf 669468581993 : Set timestamp 4231*4882a593Smuzhiyun 4232*4882a593Smuzhiyuntxaggrctrl 4233*4882a593Smuzhiyun This command is used to enable/disable TX AMPDU on infra link when TDLS link is established 4234*4882a593Smuzhiyun 4235*4882a593Smuzhiyun Usage: 4236*4882a593Smuzhiyun mlanutl mlanX txaggrctrl [m] 4237*4882a593Smuzhiyun 4238*4882a593Smuzhiyun Where: 4239*4882a593Smuzhiyun [m]: 1 to enable TX AMPDU on infra link; 0 to disable TX AMPDU on infra link 4240*4882a593Smuzhiyun 4241*4882a593Smuzhiyun Examples: 4242*4882a593Smuzhiyun mlanutl mlan0 txaggrctrl : Get current TX AMPDU status on infra link 4243*4882a593Smuzhiyun mlanutl mlan0 txaggrctrl 0 : Disable TX AMPDU on infra link 4244*4882a593Smuzhiyun mlanutl mlan0 txaggrctrl 1 : Enable TX AMPDU on infra link 4245*4882a593Smuzhiyun 4246*4882a593Smuzhiyun Note: 4247*4882a593Smuzhiyun The set command only works when TDLS link is established. 4248*4882a593Smuzhiyun 4249*4882a593Smuzhiyuntxbufcfg 4250*4882a593Smuzhiyun This command can be used to get current buffer size. 4251*4882a593Smuzhiyun 4252*4882a593Smuzhiyun eg: 4253*4882a593Smuzhiyun mlanutl mlanX txbufcfg - This will display the current buffer size. 4254*4882a593Smuzhiyun 4255*4882a593Smuzhiyun Note:- The actual tx buf size will depends on AP's capability and max transmit buffer size. 4256*4882a593Smuzhiyun 4257*4882a593Smuzhiyunaggrctrl 4258*4882a593Smuzhiyun This command is used to set/get aggregation parameters. 4259*4882a593Smuzhiyun 4260*4882a593Smuzhiyun Usage: 4261*4882a593Smuzhiyun mlanutl mlanX aggrctrl [l] 4262*4882a593Smuzhiyun 4263*4882a593Smuzhiyun where the parameter: 4264*4882a593Smuzhiyun [l]: Enable (1) or disable (0) Tx aggregation 4265*4882a593Smuzhiyun 4266*4882a593Smuzhiyun Examples: 4267*4882a593Smuzhiyun mlanutl mlan0 aggrctrl : Display aggregation configurations 4268*4882a593Smuzhiyun mlanutl mlan0 aggrctrl 0 : Disable Tx aggregation 4269*4882a593Smuzhiyun mlanutl mlan0 aggrctrl 1 : Enable Tx aggregation 4270*4882a593Smuzhiyun 4271*4882a593Smuzhiyunusbaggrctrl 4272*4882a593Smuzhiyun This command is used to set/get USB aggregation parameters. 4273*4882a593Smuzhiyun 4274*4882a593Smuzhiyun Usage: 4275*4882a593Smuzhiyun mlanutl mlanX usbaggrctrl [l] [m] [n] [o] [p] [q] [r] [s] 4276*4882a593Smuzhiyun 4277*4882a593Smuzhiyun where the parameter: 4278*4882a593Smuzhiyun [l]: Enable (1) or disable (0) Tx aggregation 4279*4882a593Smuzhiyun [m]: Enable (1) or disable (0) Rx aggregation 4280*4882a593Smuzhiyun [n]: Tx aggregation max size/number 4281*4882a593Smuzhiyun For number based aggregation, the values supported are 4282*4882a593Smuzhiyun - 2, 4, 8, 16 4283*4882a593Smuzhiyun For size based aggregation, the number supported are 4284*4882a593Smuzhiyun - 4096, 8192, 16384, 32768 4285*4882a593Smuzhiyun [o]: Rx aggregation max size/number 4286*4882a593Smuzhiyun For number based deaggregation, the values supported are 4287*4882a593Smuzhiyun - 2, 4, 8, 16 4288*4882a593Smuzhiyun For size based deaggregation, the number supported are 4289*4882a593Smuzhiyun - 4096, 8192, 16384, 32768 4290*4882a593Smuzhiyun [p]: Tx aggregation alignment 4291*4882a593Smuzhiyun The value must be 2048, 4096, 8192 etc. 4292*4882a593Smuzhiyun [q]: Rx aggregation alignment 4293*4882a593Smuzhiyun The value must be 512, 1024, 2048, 4096, 8192 etc. 4294*4882a593Smuzhiyun [r]: Tx aggregation timeout 4295*4882a593Smuzhiyun Timeout value in us, 0 for disabled, 0xFFFF for dynamic timeout 4296*4882a593Smuzhiyun and 1-10000 are valid timeout value 4297*4882a593Smuzhiyun [s]: Rx aggregation timeout 4298*4882a593Smuzhiyun Timeout value in us, 0 for disabled 4299*4882a593Smuzhiyun 4300*4882a593Smuzhiyun Examples: 4301*4882a593Smuzhiyun mlanutl mlan0 usbaggrctrl : Display USB aggregation configurations 4302*4882a593Smuzhiyun mlanutl mlan0 usbaggrctrl 0 0 : Disable both Tx and Rx aggregation 4303*4882a593Smuzhiyun mlanutl mlan0 usbaggrctrl 1 1 4 8 2048 512 1000 200 : Enable both Tx and Rx aggregation 4304*4882a593Smuzhiyun 4305*4882a593Smuzhiyunusbresume 4306*4882a593Smuzhiyun This command is used to resume the device from suspend mode. 4307*4882a593Smuzhiyun Note: It's only valid on kernel 2.6.24 or later. 4308*4882a593Smuzhiyun 4309*4882a593Smuzhiyunusbsuspend 4310*4882a593Smuzhiyun This command is used to put device to suspend mode. 4311*4882a593Smuzhiyun Note: It's only valid on kernel 2.6.24 or later. 4312*4882a593Smuzhiyun 4313*4882a593Smuzhiyunopermodecfg 4314*4882a593Smuzhiyun This command is used to set and get 11ac Operating Mode Notification configuration. 4315*4882a593Smuzhiyun 4316*4882a593Smuzhiyun where <m> is <bw> 4317*4882a593Smuzhiyun <bw> - This is the channel width setting for the opermodecfg 4318*4882a593Smuzhiyun 1: 20MHz 4319*4882a593Smuzhiyun 2: 40MHz 4320*4882a593Smuzhiyun 3: 80MHz 4321*4882a593Smuzhiyun 4: 160MHz or 80+80MHz 4322*4882a593Smuzhiyun 4323*4882a593Smuzhiyun where <n> is <nss> 4324*4882a593Smuzhiyun <nss> - This parameter specifies the nss that the STA can receive. 4325*4882a593Smuzhiyun 1: NSS1 4326*4882a593Smuzhiyun 2: NSS2 4327*4882a593Smuzhiyun 3: NSS3 4328*4882a593Smuzhiyun 4: NSS4 4329*4882a593Smuzhiyun 5: NSS5 4330*4882a593Smuzhiyun 6: NSS6 4331*4882a593Smuzhiyun 7: NSS7 4332*4882a593Smuzhiyun 8: NSS8 4333*4882a593Smuzhiyun 4334*4882a593Smuzhiyunwakeupreason 4335*4882a593Smuzhiyun This command is used to get the host sleep wakeup reason. 4336*4882a593Smuzhiyun 4337*4882a593Smuzhiyun Usage: 4338*4882a593Smuzhiyun mlanutl mlanX wakeupreason 4339*4882a593Smuzhiyun mlanutl uapX wakeupreason 4340*4882a593Smuzhiyun Examples: 4341*4882a593Smuzhiyun mlanutl mlan0 wakeupreason : Get the host sleep wakeup reason 4342*4882a593Smuzhiyun mlanutl uap0 wakeupreason : Get the host sleep wakeup reason 4343*4882a593Smuzhiyun 0: unknown 4344*4882a593Smuzhiyun 1: Broadcast data matched 4345*4882a593Smuzhiyun 2: Multicast data matched 4346*4882a593Smuzhiyun 3: Unicast data matched 4347*4882a593Smuzhiyun 4: Maskable event matched 4348*4882a593Smuzhiyun 5. Non-maskable event matched 4349*4882a593Smuzhiyun 6: Non-maskable condition matched (EAPoL rekey) 4350*4882a593Smuzhiyun 7: Magic pattern matched 4351*4882a593Smuzhiyun 8: Control frame matched 4352*4882a593Smuzhiyun 9: Management frame matched 4353*4882a593Smuzhiyun Others: reserved. (0) 4354*4882a593Smuzhiyun 4355*4882a593Smuzhiyunwarmreset 4356*4882a593Smuzhiyun This command is used for warm reset of the interface. 4357*4882a593Smuzhiyun 4358*4882a593Smuzhiyun Usage: 4359*4882a593Smuzhiyun mlanutl mlanX warmreset 4360*4882a593Smuzhiyun 4361*4882a593Smuzhiyunwpssession 4362*4882a593Smuzhiyun This command is used to control wps session. No argument is used to get. 4363*4882a593Smuzhiyun 4364*4882a593Smuzhiyun where value of n is: 4365*4882a593Smuzhiyun 0 -- Disable 4366*4882a593Smuzhiyun 1 -- Enable 4367*4882a593Smuzhiyun 4368*4882a593Smuzhiyun Examples: 4369*4882a593Smuzhiyun mlanutl mlan0 wpssession 1 : Enable wpssession 4370*4882a593Smuzhiyun mlanutl mlan0 wpssession : Get wpssession status 4371*4882a593Smuzhiyun 4372*4882a593Smuzhiyunwmmcfg 4373*4882a593Smuzhiyun This command is used to control WMM. No argument is used to get. 4374*4882a593Smuzhiyun 4375*4882a593Smuzhiyun where value of n is: 4376*4882a593Smuzhiyun 0 -- Disable 4377*4882a593Smuzhiyun 1 -- Enable 4378*4882a593Smuzhiyun 4379*4882a593Smuzhiyun Examples: 4380*4882a593Smuzhiyun mlanutl mlan0 wmmcfg 1 : Enable WMM 4381*4882a593Smuzhiyun mlanutl mlan0 wmmcfg : Get WMM status 4382*4882a593Smuzhiyun 4383*4882a593Smuzhiyunwmmparamcfg 4384*4882a593Smuzhiyun This command is used to configure WMM paramameters. 4385*4882a593Smuzhiyun 4386*4882a593Smuzhiyun Usage: 4387*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg [AC_BE AIFSN ECW_MAX ECW_MIN TX_OP] 4388*4882a593Smuzhiyun [AC_BK AIFSN ECW_MAX ECW_MIN TX_OP] 4389*4882a593Smuzhiyun [AC_VI AIFSN ECW_MAX ECW_MIN TX_OP] 4390*4882a593Smuzhiyun [AC_VO AIFSN ECW_MAX ECW_MIN TX_OP] 4391*4882a593Smuzhiyun 4392*4882a593Smuzhiyun The supported option are: 4393*4882a593Smuzhiyun AC_BE: 0 4394*4882a593Smuzhiyun AC_BK: 1 4395*4882a593Smuzhiyun AC_VI: 2 4396*4882a593Smuzhiyun AC_V0: 3 4397*4882a593Smuzhiyun AIFSN: AIFSN value 4398*4882a593Smuzhiyun ECW_MAX: ECW max 4399*4882a593Smuzhiyun ECW_MIN: ECW min 4400*4882a593Smuzhiyun TX_OP: TXOP Limit 4401*4882a593Smuzhiyun empty - Get current WMM parameters 4402*4882a593Smuzhiyun 4403*4882a593Smuzhiyun Example: 4404*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg 0 3 10 4 0 4405*4882a593Smuzhiyun Set AC_BE with AIFSN 3, ECW_MAX 10, ECW_MIN 4 and TXOP 0 4406*4882a593Smuzhiyun 4407*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg 1 7 10 4 0 4408*4882a593Smuzhiyun Set AC_BK with AIFSN 7, ECW_MAX 10, ECW_MIN 4 and TXOP 0 4409*4882a593Smuzhiyun 4410*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg 2 2 4 3 94 4411*4882a593Smuzhiyun Set AC_VI with AIFSN 2, ECW_MAX 4, ECW_MIN 3 and TXOP 94 4412*4882a593Smuzhiyun 4413*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg 3 2 3 2 47 4414*4882a593Smuzhiyun Set AC_VO with AIFSN 2, ECW_MAX 3, ECW_MIN 2 and TXOP 47 4415*4882a593Smuzhiyun 4416*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg 4417*4882a593Smuzhiyun Get current WMM parameters 4418*4882a593Smuzhiyun 4419*4882a593Smuzhiyun mlanutl mlanX wmmparamcfg 0 3 10 4 0 1 7 10 4 0 2 2 4 3 94 3 2 3 2 47 4420*4882a593Smuzhiyun Set AC_BE with AIFSN 3, ECW_MAX 10, ECW_MIN 4 and TXOP 0 4421*4882a593Smuzhiyun Set AC_BK with AIFSN 7, ECW_MAX 10, ECW_MIN 4 and TXOP 0 4422*4882a593Smuzhiyun Set AC_VI with AIFSN 2, ECW_MAX 4, ECW_MIN 3 and TXOP 94 4423*4882a593Smuzhiyun Set AC_VO with AIFSN 2, ECW_MAX 3, ECW_MIN 2 and TXOP 47 4424*4882a593Smuzhiyun 4425*4882a593Smuzhiyunwwscfg 4426*4882a593Smuzhiyun This command is used to set/get the WWS (World Wide Safe) mode. 4427*4882a593Smuzhiyun 4428*4882a593Smuzhiyun where value of m is: 4429*4882a593Smuzhiyun 0 -- Disable WWS mode (default) 4430*4882a593Smuzhiyun 1 -- Enable WWS mode 4431*4882a593Smuzhiyun 4432*4882a593Smuzhiyun Examples: 4433*4882a593Smuzhiyun mlanutl mlan0 wwscfg : Get WWS mode 4434*4882a593Smuzhiyun mlanutl mlan0 wwscfg 1 : Enable WWS mode 4435*4882a593Smuzhiyun mlanutl mlan0 wwscfg 0 : Disable WWS mode 4436*4882a593Smuzhiyun 4437*4882a593Smuzhiyuncfg_noa 4438*4882a593Smuzhiyun This is used to get/set P2P NoA (Notice of Absence) parameters only for P2P GO. 4439*4882a593Smuzhiyun 4440*4882a593Smuzhiyun Usage: 4441*4882a593Smuzhiyun mlanutl p2pX cfg_noa [h] [i] [j] [k] [l] 4442*4882a593Smuzhiyun 4443*4882a593Smuzhiyun where: 4444*4882a593Smuzhiyun [h] : noa_enable : 1/0 Set to 1 to enable NoA, 0 to disable NoA. 4445*4882a593Smuzhiyun [i] : index : 0 - 255 Identifies an instance of NoA timing. 4446*4882a593Smuzhiyun [j] : count : 1 - 255 Indicates the number of absence intervals. 4447*4882a593Smuzhiyun 255 means a continuous schedule. 4448*4882a593Smuzhiyun [k] : duration : Indicates the maximum duration in units of microseconds 4449*4882a593Smuzhiyun that P2P GO can remain absent following the start of 4450*4882a593Smuzhiyun a NoA interval. 4451*4882a593Smuzhiyun [l] : interval : Indicates the length of the NoA interval in units of 4452*4882a593Smuzhiyun microseconds. 4453*4882a593Smuzhiyun 4454*4882a593Smuzhiyun Examples: 4455*4882a593Smuzhiyun mlanutl p2pX cfg_noa : Get noa configuration. 4456*4882a593Smuzhiyun mlanutl p2pX cfg_noa 1 1 255 50 100 : Set noa configuration. 4457*4882a593Smuzhiyun 4458*4882a593Smuzhiyuncfg_opp_ps 4459*4882a593Smuzhiyun This is used to get/set P2P OPP-PS parameters only for P2P GO. 4460*4882a593Smuzhiyun 4461*4882a593Smuzhiyun Usage: 4462*4882a593Smuzhiyun mlanutl p2pX cfg_opp_ps [m] [n] 4463*4882a593Smuzhiyun 4464*4882a593Smuzhiyun where: 4465*4882a593Smuzhiyun [m] : ps_enable : 1/0 Set to 1 to indicate P2P GO is using opportunistic 4466*4882a593Smuzhiyun power save. Set to 0 if opportunistic power save is disabled. 4467*4882a593Smuzhiyun [n] : ct_window : A period of time in TU after a TBTT during which P2P GO 4468*4882a593Smuzhiyun is present. 0 indicates that there shall be no 4469*4882a593Smuzhiyun CTWindow (Client Traffic Window). 4470*4882a593Smuzhiyun 4471*4882a593Smuzhiyun Examples: 4472*4882a593Smuzhiyun mlanutl p2pX cfg_opp_ps : Get noa configuration. 4473*4882a593Smuzhiyun mlanutl p2pX cfg_opp_ps 1 7 : Set noa configuration. 4474*4882a593Smuzhiyun 4475*4882a593Smuzhiyunrxpktcoal_cfg 4476*4882a593Smuzhiyun This is used to get/set RX packet coalescing paramters 4477*4882a593Smuzhiyun Usage: 4478*4882a593Smuzhiyun mlanutl mlanX rxpktcoal_cfg [m] [n] 4479*4882a593Smuzhiyun 4480*4882a593Smuzhiyun where: 4481*4882a593Smuzhiyun [m]: pkt_threshold: count after which packets would be sent to host. Valid values 1-7 4482*4882a593Smuzhiyun [n]: delay: timeout in ms after which packets would be sent to host. Valid values 1-4 4483*4882a593Smuzhiyun Coalescing is disabled if both or either of packet_thershold and delay is zero 4484*4882a593Smuzhiyun 4485*4882a593Smuzhiyun RX packet coalescing parameters can be changed only when device is in 4486*4882a593Smuzhiyun idle state i.e. all interfaces are disconnected. 4487*4882a593Smuzhiyun 4488*4882a593Smuzhiyunget_sensor_temp 4489*4882a593Smuzhiyun This command is used to get SOC temperature 4490*4882a593Smuzhiyun Usage: 4491*4882a593Smuzhiyun mlanutl mlanX get_sensor_temp 4492*4882a593Smuzhiyun 4493*4882a593Smuzhiyunindrstcfg 4494*4882a593Smuzhiyun This command is used to set/ get independent reset mode configuration 4495*4882a593Smuzhiyun 4496*4882a593Smuzhiyun Usage : 4497*4882a593Smuzhiyun mlanutl <interface> indrstcfg <ir_mode> [gpio_pin] 4498*4882a593Smuzhiyun 4499*4882a593Smuzhiyun interface : mlanX, uapX 4500*4882a593Smuzhiyun ir_mode : 0 -- Disable 4501*4882a593Smuzhiyun 1 -- Enable out band reset, disable in band 4502*4882a593Smuzhiyun 2 -- Enable in band, disable out band 4503*4882a593Smuzhiyun gpio_pin : 255 -- Default pin for reset 4504*4882a593Smuzhiyun any other number for changing the gpio for reset. 4505*4882a593Smuzhiyun 4506*4882a593Smuzhiyun Example : 4507*4882a593Smuzhiyun mlanutl mlan0 indrstcfg 1 255 : Set default pin on interface mlan0 as reset pin 4508*4882a593Smuzhiyun mlanutl mlan0 indrstcfg 0 : Disable the gpio 17 as reset pin on interface mlan0 4509*4882a593Smuzhiyun mlanutl mlan0 indrstcfg : Get the status and the pin used for reset pin 4510*4882a593Smuzhiyun mlanutl mlan0 indrstcfg 2 : Enable in band reset mode 4511*4882a593Smuzhiyun 4512*4882a593Smuzhiyunctrldeauth 4513*4882a593Smuzhiyun This command is used to set/get firmware ctrldeauth setting 4514*4882a593Smuzhiyun Usage : 4515*4882a593Smuzhiyun mlanutl uapX ctrldeauth <n> 4516*4882a593Smuzhiyun 4517*4882a593Smuzhiyun Where value of n is : 4518*4882a593Smuzhiyun 0 -- Firmware will use default behavior 4519*4882a593Smuzhiyun 1 -- Firmware will not send deauth packet when uap move to another channel. 4520*4882a593Smuzhiyun 4521*4882a593Smuzhiyun Example : 4522*4882a593Smuzhiyun mlanutl uap0 ctrldeauth : Get current setting 4523*4882a593Smuzhiyun mlanutl uap0 ctrldeauth : Firmware will not send deauth packet when uap move to different channel. 4524*4882a593Smuzhiyun 4525*4882a593Smuzhiyunrobustcoex 4526*4882a593Smuzhiyun This command is used to set robust coex. 4527*4882a593Smuzhiyun 4528*4882a593Smuzhiyun Usage : 4529*4882a593Smuzhiyun mlanutl <interface> robustcoex <gpiocfg> [Enable/Disable] [gpionum] [gpiopolarity] 4530*4882a593Smuzhiyun Enable/Disable : 0 -- Disable ; 1 -- Enable 4531*4882a593Smuzhiyun gpionum : Number of gpio 4532*4882a593Smuzhiyun gpiopolarity : polarity of gpio 4533*4882a593Smuzhiyun 4534*4882a593Smuzhiyun Example : 4535*4882a593Smuzhiyun mlanutl mlan0 robustcoex gpiocfg 1 4 1 : Enable robustcoex gpio, set gpionum to 4 and gpiopolarity to 1 4536*4882a593Smuzhiyun mlanutl mlan0 robustcoex gpiocfg 0 : Disable robustcoex gpio 4537*4882a593Smuzhiyun 4538*4882a593Smuzhiyuncwmode 4539*4882a593Smuzhiyun This command is used to set Cont. Tx/Wave mode. 4540*4882a593Smuzhiyun 4541*4882a593Smuzhiyun Usage: 4542*4882a593Smuzhiyun mlanutl <interface> cwmode config/cwmode.conf 4543*4882a593Smuzhiyun interface: mlanX 4544*4882a593Smuzhiyun cwmode.conf: This config file specifies whether to enable/disable Cont Tx/Wave mode. 4545*4882a593Smuzhiyun User can specify parameters like Channel, datarate, BW, Channel Offset, Band. 4546*4882a593Smuzhiyun Detailed information about parameters is mentioned in the conf file. 4547*4882a593Smuzhiyun Example: 4548*4882a593Smuzhiyun mlanutl mlan0 cwmode config/cwmode.conf : Enable/Disable Cont Tx/Wave mode. 4549*4882a593Smuzhiyun mlanutl mlan0 cwmode : Get current Tx mode 4550*4882a593Smuzhiyun 4551*4882a593Smuzhiyunbootsleep 4552*4882a593Smuzhiyun This command is used to set and get boot sleep configure. 4553*4882a593Smuzhiyun 4554*4882a593Smuzhiyun Usage : 4555*4882a593Smuzhiyun mlanutl mlanX/uapX bootsleep <enable> 4556*4882a593Smuzhiyun <enable> : enable boot sleep 4557*4882a593Smuzhiyun : 0 - disable boot sleep 4558*4882a593Smuzhiyun : 1 - enable boot sleep 4559*4882a593Smuzhiyun 4560*4882a593Smuzhiyun Example : 4561*4882a593Smuzhiyun mlanutl mlan0/uap0 bootsleep 1 : Enable boot sleep 4562*4882a593Smuzhiyun mlanutl mlan0/uap0 bootsleep : Get boot sleep configure 4563*4882a593Smuzhiyun 4564*4882a593Smuzhiyunssu 4565*4882a593Smuzhiyun Collect spectral analysis data and save them into /data/ssudump.txt 4566*4882a593Smuzhiyun 4567*4882a593Smuzhiyun Usage : 4568*4882a593Smuzhiyun mlanutl mlanX ssu [mode] [ssu file] 4569*4882a593Smuzhiyun 4570*4882a593Smuzhiyun mode : 2 -- Enable ssu and use FW default ssu parameter 4571*4882a593Smuzhiyun ssu file : file to config ssu parameter 4572*4882a593Smuzhiyun 4573*4882a593Smuzhiyun Example : 4574*4882a593Smuzhiyun mlanutl mlan0 ssu :Enable SSU and use driver default ssu parameter 4575*4882a593Smuzhiyun mlanutl mlan0 ssu config/ssu.conf :Enable SSU and use ssu parameter from ssu.conf 4576*4882a593Smuzhiyun mlanutl mlan0 ssu 2 :Enable SSU and use FW default ssu parameter 4577*4882a593Smuzhiyun 4578*4882a593Smuzhiyuncsi 4579*4882a593Smuzhiyun Enable/disable channel state information collection 4580*4882a593Smuzhiyun 4581*4882a593Smuzhiyun Usage : 4582*4882a593Smuzhiyun mlanutl mlanX csi <disable/enable (config file)> 4583*4882a593Smuzhiyun disable : 0 4584*4882a593Smuzhiyun enable : config file with csi filters 4585*4882a593Smuzhiyun 4586*4882a593Smuzhiyun Example : 4587*4882a593Smuzhiyun mlanutl mlan0 csi config/csi.conf : Enable CSI 4588*4882a593Smuzhiyun mlanutl mlan0 csi 0 : Disable CSI 4589*4882a593Smuzhiyun 4590*4882a593Smuzhiyunarb 4591*4882a593Smuzhiyun Set HW ARB mode 4592*4882a593Smuzhiyun The command needs to be issued before association. 4593*4882a593Smuzhiyun 4594*4882a593Smuzhiyun Usage: 4595*4882a593Smuzhiyun mlanutl mlanX arb [mode] 4596*4882a593Smuzhiyun 4597*4882a593Smuzhiyun where the parameter is: 4598*4882a593Smuzhiyun [mode]: 4599*4882a593Smuzhiyun 0: arb mode 0 (default) 4600*4882a593Smuzhiyun 1: arb mode 1 4601*4882a593Smuzhiyun 2: arb mode 2 4602*4882a593Smuzhiyun 3: arb mode 3 (Improve TX throughput) 4603*4882a593Smuzhiyun 4: arb mode 4 (Improve RX throughput) 4604*4882a593Smuzhiyun 4605*4882a593Smuzhiyun Example : 4606*4882a593Smuzhiyun mlanutl mlan0 arb 1 : Set HW ARB mode 1 4607*4882a593Smuzhiyun 4608*4882a593Smuzhiyundmcs 4609*4882a593Smuzhiyun This command is used to config DMCS or get DMCS status. 4610*4882a593Smuzhiyun 4611*4882a593Smuzhiyun Usage: 4612*4882a593Smuzhiyun mlanutl mlanX dmcs <subcmd> [value] 4613*4882a593Smuzhiyun 4614*4882a593Smuzhiyun <subcmd = 0> : config mapping policy 4615*4882a593Smuzhiyun disable dynamic mapping when [value = 0] 4616*4882a593Smuzhiyun enable dynamic mapping when [value = 1] 4617*4882a593Smuzhiyun <subcmd = 1> : get DMCS status 4618*4882a593Smuzhiyun 4619*4882a593Smuzhiyun Example : 4620*4882a593Smuzhiyun mlanutl mlan0 dmcs 0 1 : Enable dynamic mapping 4621*4882a593Smuzhiyun mlanutl mlan0 dmcs 0 0 : Disable dynamic mapping 4622*4882a593Smuzhiyun mlanutl mlan0 dmcs 1 : Get DMCS status 4623*4882a593Smuzhiyun 4624*4882a593Smuzhiyunrange_ext 4625*4882a593Smuzhiyun This command is used to config range extension mode. 4626*4882a593Smuzhiyun 4627*4882a593Smuzhiyun Usage: 4628*4882a593Smuzhiyun mlanutl mlanX/uapX range_ext [mode] 4629*4882a593Smuzhiyun 4630*4882a593Smuzhiyun where the parameter is: 4631*4882a593Smuzhiyun [mode]: 4632*4882a593Smuzhiyun 0: Default Mode(Auto Rate) 4633*4882a593Smuzhiyun 1: HE ER+DCM Mode 4634*4882a593Smuzhiyun 2: Legacy Mode(1 Mbps Rate) 4635*4882a593Smuzhiyun 4636*4882a593Smuzhiyun Example: 4637*4882a593Smuzhiyun mlanutl mlan0 range_ext : get range extension mode 4638*4882a593Smuzhiyun mlanutl mlan0 range_ext 1 : set range extension mode to HE ER+DCM mode 4639*4882a593Smuzhiyun 4640*4882a593Smuzhiyuntwt_setup 4641*4882a593Smuzhiyun This command is used to config TWT setup parameters using conf file. 4642*4882a593Smuzhiyun 4643*4882a593Smuzhiyun Usage: 4644*4882a593Smuzhiyun mlanutl mlanX twt_setup [conf file] 4645*4882a593Smuzhiyun 4646*4882a593Smuzhiyun Example: 4647*4882a593Smuzhiyun mlanutl mlan0 twt_setup config/twt.conf 4648*4882a593Smuzhiyun 4649*4882a593Smuzhiyuntwt_teardown 4650*4882a593Smuzhiyun This command is used to config TWT teardown parameters using conf file. 4651*4882a593Smuzhiyun 4652*4882a593Smuzhiyun Usage: 4653*4882a593Smuzhiyun mlanutl mlanX twt_teardown [conf file] 4654*4882a593Smuzhiyun 4655*4882a593Smuzhiyun Example: 4656*4882a593Smuzhiyun mlanutl mlan0 twt_teardown config/twt.conf 4657*4882a593Smuzhiyun 4658*4882a593Smuzhiyunrx_abort_cfg 4659*4882a593Smuzhiyun This command is used to set/get static rx abort config for pkt having 4660*4882a593Smuzhiyun weaker RSSI than threshold. This threshold will be overwritten on starting 4661*4882a593Smuzhiyun dynamic rx abort cfg ext. 4662*4882a593Smuzhiyun 4663*4882a593Smuzhiyun Usage: 4664*4882a593Smuzhiyun mlanutl <interface> rx_abort_cfg [enable] [rssi_threshold] 4665*4882a593Smuzhiyun 4666*4882a593Smuzhiyun Where the parameters are: 4667*4882a593Smuzhiyun <interface> : mlanX, 4668*4882a593Smuzhiyun uapX 4669*4882a593Smuzhiyun [enable] : 0 - Disable Rx abort 4670*4882a593Smuzhiyun 1 - Enable Rx abort of pkt having weak RSSI 4671*4882a593Smuzhiyun [rssi_threshold] : weak RSSI pkt threshold in dBm (absolute value) 4672*4882a593Smuzhiyun (default = 70) 4673*4882a593Smuzhiyun 4674*4882a593Smuzhiyun Examples: 4675*4882a593Smuzhiyun mlanutl mlan0 rx_abort_cfg 4676*4882a593Smuzhiyun - Display current rx abort configuration 4677*4882a593Smuzhiyun mlanutl uap0 rx_abort_cfg 1 60 4678*4882a593Smuzhiyun - Enable rx abort and set weak RSSI Threshold to -60 dBm 4679*4882a593Smuzhiyun mlanutl mlan0 rx_abort_cfg 1 40 4680*4882a593Smuzhiyun - Enable rx abort and set weak RSSI Threshold to -40 dBm 4681*4882a593Smuzhiyun mlanutl mlan0 rx_abort_cfg 0 4682*4882a593Smuzhiyun - Disable rx abort 4683*4882a593Smuzhiyun 4684*4882a593Smuzhiyunrx_abort_cfg_ext 4685*4882a593Smuzhiyun This command is used to set/get dynamic rx abort config. This will set 4686*4882a593Smuzhiyun threshold based on minimum of ceiling rssi threshold and the weakest 4687*4882a593Smuzhiyun RSSI among all connected peers. Margin can be specified as an offset to 4688*4882a593Smuzhiyun this threshold. Default margin is set to -10 dBm. Ceiling rssi threshold 4689*4882a593Smuzhiyun can be changed by specifying. Default ceil is set to -70 dBm. 4690*4882a593Smuzhiyun This will be disabled on enabling fixed rx abort (rx_abort_cfg) 4691*4882a593Smuzhiyun 4692*4882a593Smuzhiyun Note: This dynamic rx abort mode is enabled by default. 4693*4882a593Smuzhiyun 4694*4882a593Smuzhiyun Usage: 4695*4882a593Smuzhiyun mlanutl <interface> rx_abort_cfg_ext [enable] [margin ceil_thresh] 4696*4882a593Smuzhiyun 4697*4882a593Smuzhiyun Where the parameters are: 4698*4882a593Smuzhiyun <interface> : mlanX, 4699*4882a593Smuzhiyun uapX 4700*4882a593Smuzhiyun [enable] : 0 - Disable Rx abort 4701*4882a593Smuzhiyun 1 - Enable Rx abort of pkt having weak RSSI 4702*4882a593Smuzhiyun [margin] : rssi margin in dBm (absolute val) 4703*4882a593Smuzhiyun (default = 10) 4704*4882a593Smuzhiyun [ceil_thresh] : ceiling weak RSSI pkt threshold in dBm 4705*4882a593Smuzhiyun (absolute value) (default = 70) 4706*4882a593Smuzhiyun 4707*4882a593Smuzhiyun Examples: 4708*4882a593Smuzhiyun mlanutl mlan0 rx_abort_cfg_ext 4709*4882a593Smuzhiyun - Display current rx abort configuration 4710*4882a593Smuzhiyun mlanutl uap0 rx_abort_cfg_ext 1 10 60 4711*4882a593Smuzhiyun - Enable dynamic rx abort, set margin to -10 dBm and set ceil 4712*4882a593Smuzhiyun RSSI Threshold to -60 dBm 4713*4882a593Smuzhiyun mlanutl mlan0 rx_abort_cfg_ext 1 5 50 4714*4882a593Smuzhiyun - Enable dynamic rx abort, set margin to -5 dBm and set ceil 4715*4882a593Smuzhiyun RSSI Threshold to -50 dBm 4716*4882a593Smuzhiyun mlanutl mlan0 rx_abort_cfg_ext 0 4717*4882a593Smuzhiyun - Disable dynamic rx abort 4718*4882a593Smuzhiyun 4719*4882a593Smuzhiyuntx_ampdu_prot_mode 4720*4882a593Smuzhiyun This command is used to set either RTS/CTS or CTS2SELF protection mechanism 4721*4882a593Smuzhiyun in MAC, for aggregated Tx QoS data frames. RTS/CTS is enabled by default. 4722*4882a593Smuzhiyun 4723*4882a593Smuzhiyun Usage: 4724*4882a593Smuzhiyun mlanutl <interface> tx_ampdu_prot_mode [mode] 4725*4882a593Smuzhiyun 4726*4882a593Smuzhiyun Where the parameters are: 4727*4882a593Smuzhiyun <interface> : mlanX, 4728*4882a593Smuzhiyun uapX 4729*4882a593Smuzhiyun [mode] : 0 - Set RTS/CTS mode 4730*4882a593Smuzhiyun 1 - Set CTS2SELF mode 4731*4882a593Smuzhiyun 2 - Disable Protection mode 4732*4882a593Smuzhiyun 3 - Set Dynamic RTS/CTS mode 4733*4882a593Smuzhiyun 4734*4882a593Smuzhiyun Examples: 4735*4882a593Smuzhiyun mlanutl mlan0 tx_ampdu_prot_mode 4736*4882a593Smuzhiyun - Get currently set protection mode for Tx AMPDU 4737*4882a593Smuzhiyun mlanutl mlan0 tx_ampdu_prot_mode 1 4738*4882a593Smuzhiyun - Set protection mode for Tx AMPDU to CTS2SELF 4739*4882a593Smuzhiyun 4740*4882a593Smuzhiyunrate_adapt_cfg 4741*4882a593Smuzhiyun This command is used to switch between SR rateadapt and Legacy rateadapt. 4742*4882a593Smuzhiyun FW default Algorithm is Legacy rateadapt 4743*4882a593Smuzhiyun when SR rateadapt is enabled then it is used to set static threshold based 4744*4882a593Smuzhiyun or dynamic noise based rate adaptation and set the timer interval to evaluate 4745*4882a593Smuzhiyun sw rate adaptation.For static mode, low and high thresholds for Tx aggregated 4746*4882a593Smuzhiyun pkt success rate should be configured. The Tx rate will decrease if success rate 4747*4882a593Smuzhiyun goes lower than LOW_THRESH, will increase if it goes beyond HIGH_THRESH, and will 4748*4882a593Smuzhiyun remain the same when success rate is between these thresholds.To set dynamic mode, 4749*4882a593Smuzhiyun specify 0xff for both low and high thresh. 4750*4882a593Smuzhiyun 4751*4882a593Smuzhiyun Note: config can be set only before associating with an external AP 4752*4882a593Smuzhiyun when in STA mode, or before starting bss when in uAP mode 4753*4882a593Smuzhiyun 4754*4882a593Smuzhiyun Usage: 4755*4882a593Smuzhiyun mlanutl <interface> rate_adapt_cfg 4756*4882a593Smuzhiyun [sr_rateadapt low_thresh high_thresh timer_interval] 4757*4882a593Smuzhiyun 4758*4882a593Smuzhiyun Where the parameters are: 4759*4882a593Smuzhiyun <interface> : mlanX, 4760*4882a593Smuzhiyun uapX 4761*4882a593Smuzhiyun [sr_rateadapt] : SR Rateadapt or Legacy Rateadapt 4762*4882a593Smuzhiyun [low_thresh] : lower tx success rate threshold 4763*4882a593Smuzhiyun [high_thresh] : higher tx success rate threshold 4764*4882a593Smuzhiyun [timer_interval] : interval to evaluate tx rate in sw in multiples 4765*4882a593Smuzhiyun of 10 (ms) 4766*4882a593Smuzhiyun 4767*4882a593Smuzhiyun Examples: 4768*4882a593Smuzhiyun mlanutl mlan0 rate_adapt_cfg 4769*4882a593Smuzhiyun - Display SR rateadapt or Legacy rateadapt enabled 4770*4882a593Smuzhiyun - Display current rate adapt configuration if SR rateadapt is enabled. 4771*4882a593Smuzhiyun mlanutl uap0 rate_adapt_cfg 1 60 80 10 4772*4882a593Smuzhiyun - set lower Tx success rate threshold to 60%, higher to 80% 4773*4882a593Smuzhiyun and evaluate tx rate every 100 ms (i.e 10 * 10 = 100 ms) 4774*4882a593Smuzhiyun when SR Rateadapt is enabled. 4775*4882a593Smuzhiyun mlanutl mlan0 rateadapt_cfg 0 4776*4882a593Smuzhiyun - switch to Legacy rateadapt. 4777*4882a593Smuzhiyun mlanutl mlan0 rateadapt_cfg 1 4778*4882a593Smuzhiyun - switch to SR rateadapt. 4779*4882a593Smuzhiyun Fw default is dynamic Success threshold enabled 4780*4882a593Smuzhiyun with 100 ms linkadapt timer. 4781*4882a593Smuzhiyun mlanutl mlan0 rate_adapt_cfg 1 50 70 50 4782*4882a593Smuzhiyun - set lower Tx success rate threshold to 50%, higher to 70% 4783*4882a593Smuzhiyun and evaluate tx rate every 500 ms (i.e 50 * 10 = 500 ms) 4784*4882a593Smuzhiyun when SR Rateadapt is enabled. 4785*4882a593Smuzhiyun mlanutl mlan0 rate_adapt_cfg 1 0xff 0xff 10 4786*4882a593Smuzhiyun - set dynamic environment noise based mode and evaluate tx rate 4787*4882a593Smuzhiyun every 100 ms (i.e 10 * 10 = 100 ms) 4788*4882a593Smuzhiyun when SR Rateadapt is enabled. 4789*4882a593Smuzhiyun 4790*4882a593Smuzhiyuncck_desense_cfg 4791*4882a593Smuzhiyun This command is used to configure CCK (802.11b) Desensitization RSSI 4792*4882a593Smuzhiyun threshold. All CCK traffic beyond this threshold will be ignored, resulting 4793*4882a593Smuzhiyun in higher Tx throughput. Threshold value is in absolute value of rssi in 4794*4882a593Smuzhiyun dBm. In dynamic and enhanced modes, cck desense will be turned on only in 4795*4882a593Smuzhiyun presence of an active connection and the effective CCK desense RSSI 4796*4882a593Smuzhiyun threshold will be updated every rateadapt interval, based on: 4797*4882a593Smuzhiyun min{ceil_thresh, [min RSSI among all connected peers] - margin} 4798*4882a593Smuzhiyun 4799*4882a593Smuzhiyun Further, for dynamic enhanced mode, CCK desense will be turned on/off based 4800*4882a593Smuzhiyun on environment noise condition and ongoing Tx traffic rate. In this mode, 4801*4882a593Smuzhiyun CCK desense will also be turned off periodically in order to allow 802.11b 4802*4882a593Smuzhiyun Rx frames from Ext-AP, if rx rssi becomes weaker than the current threshold 4803*4882a593Smuzhiyun or when in uAP mode, frames from clients which attempt to connect with the 4804*4882a593Smuzhiyun uAP, but have weaker RSSI than the set threshold. 4805*4882a593Smuzhiyun Turn on and off intervals are specified in terms of rateadapt intervals. 4806*4882a593Smuzhiyun Please note that in this mode, if dynamic Rx Abort is enabled, then it 4807*4882a593Smuzhiyun will turn on/off in sync with cck desense. 4808*4882a593Smuzhiyun 4809*4882a593Smuzhiyun Usage: 4810*4882a593Smuzhiyun mlanutl <interface> cck_desense_cfg [mode] [margin ceil_thresh] 4811*4882a593Smuzhiyun [num_on_intervals num_off_intervals] 4812*4882a593Smuzhiyun 4813*4882a593Smuzhiyun Where the parameters are: 4814*4882a593Smuzhiyun <interface> : mlanX, 4815*4882a593Smuzhiyun uapX 4816*4882a593Smuzhiyun [mode] : 0 - Disable cck desense 4817*4882a593Smuzhiyun 1 - Enable dynamic cck desense mode 4818*4882a593Smuzhiyun 2 - Enable dynamic enhanced cck desense mode 4819*4882a593Smuzhiyun [margin] : rssi margin in dBm (absolute val) 4820*4882a593Smuzhiyun (default = 10) 4821*4882a593Smuzhiyun [ceil_thresh] : ceiling weak RSSI pkt threshold in dBm 4822*4882a593Smuzhiyun (absolute value) (default = 70) 4823*4882a593Smuzhiyun [num_on_intervals] : number of rateadapt intervals to keep cck 4824*4882a593Smuzhiyun desense "on" [for mode 2 only] (default = 20) 4825*4882a593Smuzhiyun [num_off_intervals]: number of rateadapt intervals to keep cck 4826*4882a593Smuzhiyun desense "off" [for mode 2 only] (default = 3) 4827*4882a593Smuzhiyun 4828*4882a593Smuzhiyun Examples: 4829*4882a593Smuzhiyun mlanutl mlan0 cck_desense_cfg 4830*4882a593Smuzhiyun - Display current cck desense configuration 4831*4882a593Smuzhiyun mlanutl uap0 cck_desense_cfg 1 10 70 4832*4882a593Smuzhiyun - Set dynamic mode, margin to -10 dBm and ceil RSSI Threshold to 4833*4882a593Smuzhiyun -70 dBm 4834*4882a593Smuzhiyun mlanutl uap0 cck_desense_cfg 2 10 60 30 5 4835*4882a593Smuzhiyun - Set dynamic enhanced mode, margin to -10 dBm, ceil RSSI Threshold 4836*4882a593Smuzhiyun to -60 dBm, num on intervals to 30 and num off intervals to 5. 4837*4882a593Smuzhiyun mlanutl mlan0 cck_desense_cfg 1 10 50 4838*4882a593Smuzhiyun - Set dynamic mode, margin to -10 dBm and ceil RSSI Threshold to 4839*4882a593Smuzhiyun -50 dBm 4840*4882a593Smuzhiyun mlanutl mlan0 cck_desense_cfg 2 5 60 4841*4882a593Smuzhiyun - Set dynamic enhanced mode, set margin to -5 dBm, set ceil RSSI 4842*4882a593Smuzhiyun Threshold to -60 dBm, and retain previous num on/off intervals 4843*4882a593Smuzhiyun setting. 4844*4882a593Smuzhiyun mlanutl mlan0 cck_desense_cfg 0 4845*4882a593Smuzhiyun - Disable cck desense 4846*4882a593Smuzhiyun 4847*4882a593Smuzhiyunlpm 4848*4882a593Smuzhiyun This command is used to configure low power mode. 4849*4882a593Smuzhiyun 4850*4882a593Smuzhiyun Usage: 4851*4882a593Smuzhiyun mlanutl mlanX/uapX lpm [mode] 4852*4882a593Smuzhiyun 4853*4882a593Smuzhiyun Where the paramter is: 4854*4882a593Smuzhiyun [mode] : low power mode 0, 1, 2, 3 4855*4882a593Smuzhiyun 4856*4882a593Smuzhiyun Examples: 4857*4882a593Smuzhiyun mlanutl mlan0 lpm Get low power mode 4858*4882a593Smuzhiyun mlanutl mlan0 lpm 1 Set low power mode to 1 4859*4882a593Smuzhiyun 4860*4882a593Smuzhiyundot11mc_unassoc_ftm_cfg 4861*4882a593Smuzhiyun This command is used to enable or disable the configuration for 4862*4882a593Smuzhiyun DOT11MC FTM frames exchanges in un-associated state for STA or uAP 4863*4882a593Smuzhiyun 4864*4882a593Smuzhiyun Usage: 4865*4882a593Smuzhiyun mlanutl <interface> dot11mc_unassoc_ftm_cfg [enable] 4866*4882a593Smuzhiyun 4867*4882a593Smuzhiyun Where the parameters are: 4868*4882a593Smuzhiyun <interface> : mlanX, 4869*4882a593Smuzhiyun uapX 4870*4882a593Smuzhiyun [enable] : 0 - Disable unassociated state FTM 4871*4882a593Smuzhiyun 1 - Enable unassociated state FTM 4872*4882a593Smuzhiyun 4873*4882a593Smuzhiyun Examples: 4874*4882a593Smuzhiyun mlanutl mlan0 dot11mc_unassoc_ftm_cfg 4875*4882a593Smuzhiyun - Get current state of unassociated state FTM cfg 4876*4882a593Smuzhiyun mlanutl mlan0 dot11mc_unassoc_ftm_cfg 1 4877*4882a593Smuzhiyun - Set the unassociated state FTM cfg to Enabled 4878*4882a593Smuzhiyun 4879*4882a593Smuzhiyuntp_state 4880*4882a593Smuzhiyun This command is used to collect throughput result at different 4881*4882a593Smuzhiyun drop points. 4882*4882a593Smuzhiyun 4883*4882a593Smuzhiyun Usage: 4884*4882a593Smuzhiyun mlanutl mlanX tp_state [mode] [drop_point] 4885*4882a593Smuzhiyun 4886*4882a593Smuzhiyun Where the parameter is: 4887*4882a593Smuzhiyun [mode] : enable/disable tp_state collecting 4888*4882a593Smuzhiyun 0 - Disable 1 - Enable 4889*4882a593Smuzhiyun [drop_point] : Request driver to drop tx packets at this point 4890*4882a593Smuzhiyun 0 - Reserved for Tx 4891*4882a593Smuzhiyun 1 - Kernel sends packets with .ndo_start_xmit 4892*4882a593Smuzhiyun 2 - Before adding tx packets into queues 4893*4882a593Smuzhiyun 3 - After main process handles tx packets 4894*4882a593Smuzhiyun 4 - Before attaching pkts to bus 4895*4882a593Smuzhiyun 5 - Rx PCIE interrupt Recv Data before enqueue to list 4896*4882a593Smuzhiyun 6 - Rx after dequeue from list 4897*4882a593Smuzhiyun 7 - Rx before de-amsdu 4898*4882a593Smuzhiyun 8 - Rx before send to kernel 4899*4882a593Smuzhiyun 9 - Reserved for Rx 4900*4882a593Smuzhiyun Examples: 4901*4882a593Smuzhiyun mlanutl mlan0 tp_state 1 1 Collect throughput result and drop tx pkts at point 1. 4902*4882a593Smuzhiyun mlanutl mlan0 tp_state Get throughput results (only works with enable mode). 4903*4882a593Smuzhiyun mlanutl mlan0 tp_state 0 Disable throughput accounting. 4904*4882a593Smuzhiyun mlanutl mlan0 tp_state 1 0xff Just for reading TX/RX accounting, no pkts drop 4905*4882a593Smuzhiyun 4906*4882a593Smuzhiyunclocksync 4907*4882a593Smuzhiyun This command is used to set and get WIFI TSF based clock sync setting 4908*4882a593Smuzhiyun 4909*4882a593Smuzhiyun Usage: 4910*4882a593Smuzhiyun mlanutl mlanX/uapX clocksync [j][k] [l] [m] [n] 4911*4882a593Smuzhiyun 4912*4882a593Smuzhiyun where 4913*4882a593Smuzhiyun [j] mode 4914*4882a593Smuzhiyun <mode> - This parameter use to configure GPIO TSF latch mode 4915*4882a593Smuzhiyun 0: GPIO level 4916*4882a593Smuzhiyun 1: GPIO toggle 4917*4882a593Smuzhiyun 2: GPIO toggle on Next Beacon. 4918*4882a593Smuzhiyun [k] role 4919*4882a593Smuzhiyun <role> 4920*4882a593Smuzhiyun 0: when mode set to 0 or 1 4921*4882a593Smuzhiyun 1: AP 4922*4882a593Smuzhiyun 2: STA 4923*4882a593Smuzhiyun [l] gpio pin number 4924*4882a593Smuzhiyun [m] GPIO Level/Toggle 4925*4882a593Smuzhiyun mode = 0 4926*4882a593Smuzhiyun 0: low 1: high 4927*4882a593Smuzhiyun mode = 1 or 2 4928*4882a593Smuzhiyun 0: low to high 4929*4882a593Smuzhiyun 1: high to low 4930*4882a593Smuzhiyun [n] GPIO pulse width 4931*4882a593Smuzhiyun mode = 0, reserved, set to 0 4932*4882a593Smuzhiyun mode 1 or 2 4933*4882a593Smuzhiyun 0: GPIO remain on toggle level (high or low) 4934*4882a593Smuzhiyun Non-0: GPIO pulse width in microseconds (min 1 us) 4935*4882a593Smuzhiyun 4936*4882a593Smuzhiyun If no parameter provided, get is performed. 4937*4882a593Smuzhiyun 4938*4882a593Smuzhiyun Examples: 4939*4882a593Smuzhiyun mlanutl mlan0 clocksync 0 0 5 0 0 4940*4882a593Smuzhiyun mlanutl mlan0 clocksync 1 0 10 1 500 4941*4882a593Smuzhiyun mlanutl mlan0 clocksync 1 0 5 0 0 4942*4882a593Smuzhiyun mlanutl mlan0 clocksync 2 1 10 1 500 4943*4882a593Smuzhiyun mlanutl mlan0 clocksync 2 2 3 0 0 4944*4882a593Smuzhiyun mlanutl mlan0 clocksync 4945*4882a593Smuzhiyun 4946*4882a593Smuzhiyungettsfinfo 4947*4882a593Smuzhiyun This command is used to get TSF info 4948*4882a593Smuzhiyun 4949*4882a593Smuzhiyun Usage: 4950*4882a593Smuzhiyun mlanutl mlanX gettsfinfo [j] 4951*4882a593Smuzhiyun where 4952*4882a593Smuzhiyun [j] format 4953*4882a593Smuzhiyun 0: Report GPIO assert TSF 4954*4882a593Smuzhiyun 1: Report Beacon TSF and Offset (valid if CONFIG Mode 2) 4955*4882a593Smuzhiyun 4956*4882a593Smuzhiyun Examples: 4957*4882a593Smuzhiyun mlanutl mlan0 gettsfinfo Get GPIO assert TSF 4958*4882a593Smuzhiyun mlanutl mlan0 gettsfinfo 1 Get Beacon TSP and Offset (valid if CONFIG mode 2) 4959*4882a593Smuzhiyun 4960*4882a593Smuzhiyuntargetchan 4961*4882a593Smuzhiyun This command is used to get/set target channel for UAP 4962*4882a593Smuzhiyun 4963*4882a593Smuzhiyun Usage: 4964*4882a593Smuzhiyun mlanutl uaX targetchan [j] 4965*4882a593Smuzhiyun where 4966*4882a593Smuzhiyun [j] target channel 4967*4882a593Smuzhiyun 4968*4882a593Smuzhiyun Examples: 4969*4882a593Smuzhiyun mlanutl uap0 targetchan Get current target channel 4970*4882a593Smuzhiyun mlanutl uap0 targetchan 52 Set target channel to 52 4971*4882a593Smuzhiyunbackuptchan 4972*4882a593Smuzhiyun This command is used to get/set backup channel for UAP 4973*4882a593Smuzhiyun 4974*4882a593Smuzhiyun Usage: 4975*4882a593Smuzhiyun mlanutl uaX backupchan [j] 4976*4882a593Smuzhiyun where 4977*4882a593Smuzhiyun [j] backup channel 4978*4882a593Smuzhiyun 4979*4882a593Smuzhiyun Examples: 4980*4882a593Smuzhiyun mlanutl uap0 backupchan Get current backup channel 4981*4882a593Smuzhiyun mlanutl uap0 backupchan 52 Set backup channel to 52 4982*4882a593Smuzhiyun 4983*4882a593Smuzhiyunips_cfg 4984*4882a593Smuzhiyun This command is used to get/set IPS 4985*4882a593Smuzhiyun 4986*4882a593Smuzhiyun Usage: 4987*4882a593Smuzhiyun mlanutl mlanX ips_cfg [1/0] 4988*4882a593Smuzhiyun 4989*4882a593Smuzhiyun Examples: 4990*4882a593Smuzhiyun mlanutl mlan0 ips_cfg Get current IPS config 4991*4882a593Smuzhiyun mlanutl mlan0 ips_cfg 1 Enable IPS 4992*4882a593Smuzhiyun 4993*4882a593Smuzhiyunmcast_aggr_group 4994*4882a593Smuzhiyun This command is used to add/remove multicast address to mcast_aggr_group. 4995*4882a593Smuzhiyun Also, while the address is set, stats for each of these addresses will be auto-logged. (Refer 'stats' command for more info) 4996*4882a593Smuzhiyun 4997*4882a593Smuzhiyun Usage: 4998*4882a593Smuzhiyun mlanutl mlanX/uapX mcast_aggr_group [action] [mcast_addr] 4999*4882a593Smuzhiyun where 5000*4882a593Smuzhiyun [action] : add/remove multicast mac address to mcast_aggr_group 5001*4882a593Smuzhiyun 0 - remove 1 - add 5002*4882a593Smuzhiyun [mcast_addr] : mcast address 5003*4882a593Smuzhiyun 5004*4882a593Smuzhiyun Examples: 5005*4882a593Smuzhiyun mlanutl uap0 mcast_aggr_group 1 01:00:5e:00:00:42 Add 01:00:5e:00:00:42 to mcast_aggr_group 5006*4882a593Smuzhiyun mlanutl uap0 mcast_aggr_group 0 01:00:5e:00:00:43 Remove 01:00:5e:00:00:43 from mcast_aggr_group 5007*4882a593Smuzhiyun mlanutl uap0 mcast_aggr_group List current mcast_aggr_group 5008*4882a593Smuzhiyun 5009*4882a593Smuzhiyunmc_aggr_cfg 5010*4882a593Smuzhiyun This command gets or sets the configuration of multicast packet aggregation. 5011*4882a593Smuzhiyun 5012*4882a593Smuzhiyun Usage: 5013*4882a593Smuzhiyun mlanutl mlanX/uapX mc_aggr_cfg [i][j] 5014*4882a593Smuzhiyun where 5015*4882a593Smuzhiyun [i]: Enable Bitmap , 1-Enable, 0-Disable 5016*4882a593Smuzhiyun Valid if corresponding mask bit is 1 5017*4882a593Smuzhiyun Bit 0: MC aggregation 5018*4882a593Smuzhiyun Bit 1: Packet expiry 5019*4882a593Smuzhiyun Bit 2: CTS2Self 5020*4882a593Smuzhiyun Bit 3: CTS2Sef duration offset 5021*4882a593Smuzhiyun [j]: Mask Bitmap, 1-valid, 0-invalid 5022*4882a593Smuzhiyun Bit 0: MC aggregation 5023*4882a593Smuzhiyun Bit 1: Packet expiry 5024*4882a593Smuzhiyun Bit 2: CTS2Self 5025*4882a593Smuzhiyun 5026*4882a593Smuzhiyun Examples: 5027*4882a593Smuzhiyun mlanutl uap0 mc_aggr_cfg 1 1 Enable MC aggregation 5028*4882a593Smuzhiyun mlanutl uap0 mc_aggr_cfg 7 7 Enable MC aggregation,Packet expiry,CTS2Self feature 5029*4882a593Smuzhiyun mlanutl uap0 mc_aggr_cfg Query current MC aggregation configuration. 5030*4882a593Smuzhiyun 5031*4882a593Smuzhiyunmcast_tx 5032*4882a593Smuzhiyun This command is used to transmit multicast packets as per the mcast_tx conf file. 5033*4882a593Smuzhiyun 5034*4882a593Smuzhiyun Usage: 5035*4882a593Smuzhiyun mlanutl <interface> mcast_tx <mcast_tx.conf> 5036*4882a593Smuzhiyun where 5037*4882a593Smuzhiyun <interface> : wifi interface name i.e. uap0 5038*4882a593Smuzhiyun <mcast_tx.conf> : multicast tx conf file 5039*4882a593Smuzhiyun 5040*4882a593Smuzhiyunstats 5041*4882a593Smuzhiyun This command is used to get/reset Tx-Rx stats for unicast/multicast address. 5042*4882a593Smuzhiyun Usage: 5043*4882a593Smuzhiyun ./mlanutl uapx stats [action] 5044*4882a593Smuzhiyun Where 5045*4882a593Smuzhiyun [action] : get/reset all stats for unicast and multicast addresses. 5046*4882a593Smuzhiyun all: get all stats collection 5047*4882a593Smuzhiyun reset: reset all stats collection 5048*4882a593Smuzhiyun mcast_timeout: get all multicast timeout stats collection 5049*4882a593Smuzhiyun 5050*4882a593Smuzhiyun Examples: 5051*4882a593Smuzhiyun mlanutl uap0 stats all Get all stats for mac address configured using mcast_aggr_group command 5052*4882a593Smuzhiyun mlanutl uap0 stats reset Reset all stats for mac address configured using mcast_aggr_group command 5053*4882a593Smuzhiyun mlanutl uap0 stats mcast_timeout Get all multicast timeout stats for mac address configured using mcast_aggr_group command 5054*4882a593Smuzhiyun 5055*4882a593Smuzhiyungetuuid 5056*4882a593Smuzhiyun This command is used to read 16 byte uuid for a given interface and uuid remains same for 5057*4882a593Smuzhiyun <sta, uap, wfd> 5058*4882a593Smuzhiyun Usage: 5059*4882a593Smuzhiyun ./mlanutl <interface> getuuid 5060*4882a593Smuzhiyun 5061*4882a593Smuzhiyun Examples: 5062*4882a593Smuzhiyun i/p: mlanutl uap0 getuuid 5063*4882a593Smuzhiyun o/p: uuid: a0b0c0d0d0c0b0a0a0b0c0d0d0c0b0a0 5064*4882a593Smuzhiyun 5065*4882a593Smuzhiyun=============================================================================== 5066*4882a593Smuzhiyun=============================================================================== 5067*4882a593Smuzhiyun U S E R M A N U A L F O R Enable Scan GAP 5068*4882a593Smuzhiyun 5069*4882a593SmuzhiyunFollowing commands can be used to enable gap between scans. 5070*4882a593Smuzhiyun 5071*4882a593Smuzhiyunmlanutl mlanX scancfg [t] [m] [p] [s] [a] [b] [c] [ext] [gap] 5072*4882a593Smuzhiyunmlanutl mlanX setuserscan [ARGS] 5073*4882a593Smuzhiyun 5074*4882a593SmuzhiyunFor detail information, please refer the command description. 5075*4882a593Smuzhiyun=============================================================================== 5076