| =============================================================================== |
| U S E R M A N U A L |
| |
| Copyright 2008-2022 NXP |
| |
| |
| 1) FOR DRIVER BUILD |
| |
| Goto source code directory wlan_src/. |
| make [clean] build |
| The driver and utility binaries can be found in ../bin_xxxx directory. |
| The driver code supports Linux kernel from 2.6.32 to 6.0.0. |
| |
| 2) FOR DRIVER INSTALL |
| |
| a) Copy firmware image to /lib/firmware/nxp/, copy wifi_mod_para.conf to /lib/firmware/nxp/. |
| b) Install WLAN driver |
| There are drv_mode, max_sta_bss, max_uap_bss etc. module parameters. |
| The bit settings of drv_mode are, |
| Bit 0 : STA |
| Bit 1 : uAP |
| Bit 2 : WIFIDIRECT |
| |
| max_sta_bss: Maximum number of STA BSS (default 1, max 1) |
| sta_name: Name of the STA interface (default: "mlan") |
| max_uap_bss: Maximum number of uAP BSS (default 1, max 2) |
| uap_name: Name of the uAP interface (default: "uap") |
| max_wfd_bss: Maximum number of WIFIDIRECT BSS (default 1, max 1) |
| wfd_name: Name of the WIFIDIRECT interface (default: "wfd") |
| max_vir_bss: Number of Virtual interfaces (default 0) |
| uap_oper_ctrl: uAP operation control when in-STA disconnect with ext-AP |
| 0: default do nothing, 2: uAP stops and restarts automatically |
| For example, to install multi-chip driver, |
| insmod mlan.ko |
| insmod moal.ko mod_para=nxp/wifi_mod_para.conf [drvdbg=0x7] |
| wifi_mod_para.conf is used to support multi-chips which has different load module parameters. It contains |
| the module parameters for different chips. |
| c) Uninstall WLAN driver, |
| ifconfig mlanX down |
| ifconfig uapX down |
| rmmod moal |
| rmmod mlan |
| |
| To load driver with MFG firmware file, use mfg_mode=1 when insmod WLAN driver and |
| specify MFG firmware name if needed. |
| |
| To load driver with rf_test firmware file, use rf_test_mode=1 when insmod WLAN driver. |
| This parameter only used for 9177(FC) |
| |
| There are some other parameters for debugging purpose etc. Use modinfo to check details. |
| drvdbg=<bit mask of driver debug message control> |
| dev_cap_mask=<Bit mask of the device capability> |
| mac_addr=xx:xx:xx:xx:xx:xx <override the MAC address (in hex)> |
| auto_ds=0|1|2 <use MLAN default | enable auto deepsleep | disable auto deepsleep> |
| ext_scan=0|1|2 <use MLAN default | Enable Extended Scan| Enable Enhanced Extended Scan> |
| net_rx=0|1 <use netif_rx_ni in rx | use netif_receive_skb in rx> |
| amsdu_deaggr=0|1 <default | Try avoid buf copy in amsud deaggregation> |
| |
| ps_mode=0|1|2 <use MLAN default | enable IEEE PS mode | disable IEEE PS mode> |
| sched_scan=0|1 <disable sched_scan | enable sched_scan default> |
| max_tx_buf=2048|4096|8192 <maximum AMSDU Tx buffer size> |
| pm_keep_power=1|0 <PM keep power in suspend (default) | PM no power in suspend> |
| shutdown_hs=1|0 <Enable HS when shutdown | No HS when shutdown (default)> |
| cfg_11d=0|1|2 <use MLAN default | enable 11d | disable 11d> |
| dts_enable=0|1 <Disable DTS | Enable DTS (default)> |
| fw_name = <FW file name> |
| e.g. copy pcieuart9098_combo_v1.bin to firmware directory, fw_name=nxp/pcieuart9098_combo_v1.bin |
| hw_name = <hardware name> |
| reg_work=0|1 <Disable register work queue| Enable register work queue> |
| hw_test=0|1 <Disable hardware test (default) | Enable hardware test> |
| fw_serial=0|1 <support parallel download FW | support serial download FW (default)> |
| req_fw_nowait=0|1 <use request_firmware API (default) | use request_firmware_nowait API> |
| dfs53cfg=0|1|2 <use Fw Default | New W53 | Old W53> |
| mcs32=0|1 <disable HT MCS32 support | enable HT MCS32 (default)> |
| SD8887: antcfg=0|1|2|0xffff <default | Tx/Rx antenna 1 | Tx/Rx antenna 2 | enable antenna diversity> |
| SD8897/SD8997: antcfg=0x11|0x13|0x33 <Bit0:Rx Path A, Bit1:Rx Path B, Bit 4:Tx Path A, Bit 5:Tx Path B> |
| slew_rate: Slew Rate Control value = 0|1|2|3 (0 is the slowest slew rate and 03 has the highest slew rate (default)) |
| init_cfg=<init config (MAC addresses, registers etc.) file name> |
| e.g. copy init_cfg.conf to firmware directory, init_cfg=nxp/init_cfg.conf |
| cal_data_cfg=<CAL data config file name> |
| e.g. copy cal_data.conf to firmware directory, cal_data_cfg=nxp/cal_data.conf |
| Note: Loading driver with 8887 must include correct cal_data_cfg parameter. |
| dpd_data_cfg=<DPD data config file name> |
| e.g. copy dpd_data.conf to firmware directory, dpd_data_cfg=nxp/dpd_data.conf |
| txpwrlimit_cfg=<Tx power limit config file name> |
| e.g. copy txpwrlimit_cfg_set.conf to firmware directory, txpwrlimit_cfg=nxp/txpwrlimit_cfg_set.conf |
| cntry_txpwr=0|1|2 |
| 0: Disable setting tx power table of country (default) |
| 1: Enable setting tx power table of country |
| 2: Enable setting rgpower table of country |
| init_hostcmd_cfg=<init hostcmd config file name> |
| e.g. copy init_hostcmd_cfg.conf to firmware directory, init_hostcmd_cfg=nxp/init_hostcmd_cfg.conf |
| band_steer_cfg=<band steer config file name> |
| e.g. generate bscfg.conf by band_steer_cfg.conf, then copy bscfg.conf to firmware directory, band_steer_cfg=nxp/bscfg.conf |
| sdio_rx_aggr=1|0 <Enable SDIO rx aggr (default) | Disable SDIO rx aggr> |
| cfg80211_wext=<bit mask of CFG80211 and WEXT control> |
| Bit 0: STA WEXT |
| Bit 1: uAP WEXT |
| Bit 2: STA CFG80211 |
| Bit 3: uAP CFG80211 |
| cfg80211_drcs=1|0 <Enable DRCS support (default) | Disable DRCS support> |
| reg_alpha2=<Regulatory alpha2 (default NULL)> |
| skip_fwdnld=0|1 <enable FW download support (default) | disable FW download support> |
| wq_sched_prio: Priority for work queue |
| wq_sched_policy: Scheduling policy for work queue |
| (0: SCHED_NORMAL, 1: SCHED_FIFO, 2: SCHED_RR, 3: SCHED_BATCH, 5: SCHED_IDLE) |
| Please note that, both wq_sched_prio and wq_sched_policy should be provided |
| as module parameters. If wq_sched_policy is (0, 3 or 5), then wq_sched_prio |
| must be 0. wq_sched_prio should be 1 to 99 otherwise. |
| rx_work=0|1|2 <default | Enable rx_work_queue | Disable rx_work_queue> |
| pcie_int_mode=0|1|2 <Legacy mode, MSI mode (default), MSI-X mode> |
| pcie_int_mode=0|1 <Legacy mode, MSI mode (default)> |
| ring_size=32|64|128|256|512 <adma ring size for 9097/9098> |
| aggrctrl=1|0 <enable Tx aggr | disable Tx aggr> |
| usb_aggr=0|1|2 <use MLAN default (disabled) | enable USB aggr | disable USB aggr> |
| low_power_mode_enable=0|1 <disable low power mode (default)| enable low power mode> |
| When low power mode is enabled, the output power will be clipped at ~+10dBm and the |
| expected PA current is expected to be in the 80-90 mA range for b/g/n modes |
| wakelock_timeout=<set wakelock_timeout value (ms)> |
| pmic=0|1 <No pmic configure cmd sent to firmware | Send pmic configure cmd to firmware> |
| indication_gpio=0xXY <GPIO to indicate wakeup source and its level; high four bits X: |
| level(0/1) for normal wakeup; low four bits Y: GPIO pin number. This parameter |
| only works with specific board and firmware.> |
| hs_wake_interval=<Host sleep wakeup interval,it will round to nearest multiple dtim*beacon_period in fw> |
| disconnect_on_suspend=0|1 <Disable disconnect wifi on suspend (default) | Enable disconnect wifi on suspend> |
| hs_mimo_switch=0|1 <Disable dynamic MIMO-SISO switch during host sleep (default) | Enable dynamic MIMO-SISO switch during host sleep> |
| gtk_rekey_offload=0|1|2 <disable gtk_rekey_offload|enable gtk_rekey_offload (default) | enable gtk_rekey_offload in suspend mode only> |
| napi=0|1 <disable napi | enable napi> |
| fixed_beacon_buffer=0|1 <allocate default buffer size (default) | allocate max buffer size> |
| GoAgeoutTime=0|x <use default ageout time (default) | set Go age out time xTU(TU 100ms)> |
| multi_dtim=0|x <use default DTIM interval(default) | set x*beacon_period as DTIM interval> |
| inact_tmo=0|x <use default IEEE ps inactivity timout value (default) | use IEEE ps inactivity timeout value x ms> |
| drcs_chantime_mode=0|x <channel time and mode for DRCS, use default value (default) | use setting value> |
| Bit31~Bit24:Channel time for channel index0; |
| Bit23~Bit16:mode for channel index0; 0|1 <PM1 | Null2Self> |
| Bit15~Bit8:Channel time for channel index1; |
| Bit7~Bit0:mode for channel index1; 0|1 <PM1 | Null2Self> |
| roamoffload_in_hs=0|1 <always enable fw roaming (default) | enable fw roaming only when host suspend> |
| uap_max_sta: Maximum number of STA for UAP/GO (default 0, max 64) |
| host_mlme=0|1 <Operate in non-host_mlme mode | Operate in host_mlme mode (default)> |
| for supplicant/authenticator running on host side, WPA3 support is available only in host_mlme mode |
| country_ie_ignore=0|1 <Follow countryIE from AP and beacon hint enable (default) | Ignore countryIE from AP and beacon hint disable> |
| beacon_hints=0|1 <enable beacon hints(default) | disable beacon hints> |
| |
| chan_track=0|1 <restore channel tracking parameters(default) | set channel tracking new parameters> for 9098 only |
| keep_previous_scan=0|1, <Flush previous scan result before start scan | Keep previous scan result(default)> |
| |
| |
| Note: On some platforms (e.g. PXA910/920) double quotation marks ("") need to used |
| for module parameters. |
| insmod sdxxx.ko "<para1> <para2> ..." |
| |
| 3) FOR DRIVER PROC & DEBUG |
| |
| The following info are provided in /proc/net/mwlan/adapterX/mlanY|uapY|wfdY/info, |
| on kernel 2.6.24 or later, the entry is /proc/mwlan/adapterX/mlanY|uapY|wfdY/info. |
| |
| driver_name = "wlan" or "uap" |
| driver_version = <chip id, firmware version and driver version> |
| interface_name = "mlanX", "uapX" or "wfdX" |
| bss_mode = "Ad-hoc" | "Managed" | "Auto" | "Unknown" |
| media_state = "Disconnected" | "Connected" |
| mac_address = <6-byte adapter MAC address> |
| multicase_count = <multicast address count> // Only for STA |
| essid = <current SSID> // Only for STA |
| bssid = <current BSSID> // Only for STA |
| channel = <current channel> // Only for STA |
| region_code = <current region code> // Only for STA |
| multicast_address[n] = <multicast address> // Only for STA |
| num_tx_bytes = <number of bytes sent to device> |
| num_rx_bytes = <number of bytes received from device and sent to kernel> |
| num_tx_pkts = <number of packets sent to device> |
| num_rx_pkts = <number of packets received from device and sent to kernel> |
| num_tx_pkts_dropped = <number of Tx packets dropped by driver> |
| num_rx_pkts_dropped = <number of Rx packets dropped by driver> |
| num_tx_pkts_err = <number of Tx packets failed to send to device> |
| num_rx_pkts_err = <number of Rx packets failed to receive from device> |
| carrier "on" | "off" |
| tx queue "stopped" | "started" |
| tkip_mic_failures = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) |
| ccmp_decrypt_errors = 0 // Only for uAP |
| wep_undecryptable_count = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) |
| wep_icv_error_count = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) |
| decrypt_failure_count = 0 // Only for uAP |
| mcast_tx_count = 0 // Only for uAP |
| failed_count = 0 // Only for uAP |
| retry_count = 0 // Only for uAP |
| multiple_retry_count = 0 // Only for uAP |
| frame_duplicate_count = 0 // Only for uAP |
| rts_success_count = 0 // Only for uAP |
| rts_failure_count = 0 // Only for uAP |
| ack_failure_count = 0 // Only for uAP |
| rx_fragment_count = 0 // Only for uAP |
| mcast_rx_frame_count = 0 // Only for uAP |
| fcs_error_count = 0 // Only for uAP |
| tx_frame_count = 0 // Only for uAP |
| rsna_tkip_cm_invoked = 0 // Only for uAP (use of WEP/TKIP is not recommended anymore) |
| rsna_4way_hshk_failures = 0 // Only for uAP |
| |
| The following debug info are provided in /proc/net/mwlan/adapterX/mlanY|uapY|wfdY/debug, |
| on kernel 2.6.24 or later, the entry is /proc/mwlan/adapterX/mlanY|uapY|wfdY/debug. |
| |
| drvdbg = <bit mask of driver debug message control> |
| wmm_ac_vo = <number of packets sent to device from WMM AcVo queue> |
| wmm_ac_vi = <number of packets sent to device from WMM AcVi queue> |
| wmm_ac_be = <number of packets sent to device from WMM AcBE queue> |
| wmm_ac_bk = <number of packets sent to device from WMM AcBK queue> |
| max_tx_buf_size = <maximum Tx buffer size> |
| tx_buf_size = <current Tx buffer size> |
| curr_tx_buf_size = <current Tx buffer size in FW> |
| ps_mode = <0/1, CAM mode/PS mode> |
| ps_state = <0/1/2/3, awake state/pre-sleep state/sleep-confirm state/sleep state> |
| is_deep_sleep = <0/1, not deep sleep state/deep sleep state> // Only for STA |
| wakeup_dev_req = <0/1, wakeup device not required/required> |
| wakeup_tries = <wakeup device count, cleared when device awake> |
| hs_configured = <0/1, host sleep not configured/configured> |
| hs_activated = <0/1, extended host sleep not activated/activated> |
| tx_pkts_queued = <number of Tx packets queued> |
| pps_uapsd_mode = <0/1, PPS/UAPSD mode disabled/enabled> // Only for STA |
| sleep_pd = <sleep period in milliseconds> // Only for STA |
| qos_cfg = <WMM QoS info> // Only for STA |
| tx_lock_flag = <0/1, Tx lock flag> // Only for STA |
| port_open = <0/1, port open flag> // Only for STA |
| scan_processing = <0/1, scan processing flag> // Only for STA |
| num_bridge_pkts = <number of bridged packets> // Only for uAP |
| num_drop_pkts = <number of dropped packets> // Only for uAP |
| num_tx_timeout = <number of Tx timeout> |
| num_cmd_timeout = <number of timeout commands> |
| timeout_cmd_id = <command id of the last timeout command> |
| timeout_cmd_act = <command action of the last timeout command> |
| last_cmd_id = <command id of the last several commands sent to device> |
| last_cmd_act = <command action of the last several commands sent to device> |
| last_cmd_index = <0 based last command index> |
| last_cmd_resp_id = <command id of the last several command responses received from device> |
| last_cmd_resp_index = <0 based last command response index> |
| last_event = <event id of the last several events received from device> |
| last_event_index = <0 based last event index> |
| num_cmd_h2c_fail = <number of commands failed to send to device> |
| num_cmd_sleep_cfm_fail = <number of sleep confirm failed to send to device> |
| num_tx_h2c_fail = <number of data packets failed to send to device> |
| num_cmdevt_c2h_fail = <number of commands/events failed to receive from device> |
| num_rx_c2h_fail = <number of data packets failed to receive from device> |
| num_int_read_fail = <number of interrupt read failures> |
| last_int_status = <last interrupt status> |
| num_evt_deauth = <number of deauthenticated events received from device> // Only for STA |
| num_evt_disassoc = <number of disassociated events received from device> // Only for STA |
| num_evt_link_lost = <number of link lost events received from device> // Only for STA |
| num_cmd_deauth = <number of deauthenticate commands sent to device> // Only for STA |
| num_cmd_assoc_ok = <number of associate commands with success return> // Only for STA |
| num_cmd_assoc_fail = <number of associate commands with failure return> // Only for STA |
| cmd_sent = <0/1, send command resources available/sending command to device> |
| data_sent = <0/1, send data resources available/sending data to device> |
| mp_rd_bitmap = <SDIO multi-port read bitmap> |
| curr_rd_port = <SDIO multi-port current read port> |
| mp_wr_bitmap = <SDIO multi-port write bitmap> |
| curr_wr_port = <SDIO multi-port current write port> |
| txbd_rdptr = <PCIE transmit read pointer> |
| txbd_wrptr = <PCIE transmit write pointer> |
| rxbd_rdptr = <PCIE recieve read pointer> |
| rxbd_wrptr = <PCIE recieve write pointer> |
| eventbd_rdptr = <PCIE event read pointer> |
| eventbd_wrptr = <PCIE event write pointer> |
| cmd_resp_received = <0/1, no cmd response to process/response received and yet to process> |
| event_received = <0/1, no event to process/event received and yet to process> |
| tx_cmd_urb_pending = <number of URB pending for cmd transmit> |
| tx_data_urb_pending = <number of URB pending for data transmit> |
| rx_cmd_urb_pending = <number of URB pending for cmd receive> |
| rx_data_urb_pending = <number of URB pending for data receive> |
| ioctl_pending = <number of ioctl pending> |
| tx_pending = <number of Tx packet pending> |
| rx_pending = <number of Rx packet pending> |
| lock_count = <number of lock used> |
| malloc_count = <number of malloc done> |
| mbufalloc_count = <number of mlan_buffer allocated> |
| malloc_cons_count = <number of consistent malloc done> |
| main_state = <current state of the main process> |
| sdiocmd53w = <SDIO Cmd53 write status> |
| sdiocmd53r = <SDIO Cmd52 read status> |
| hs_skip_count = <number of skipped suspends> |
| hs_force_count = <number of forced suspends> |
| |
| Issue SDIO cmd52 read/write through proc. |
| Usage: |
| echo "sdcmd52rw=<func> <reg> [data]" > /proc/mwlan/adapterX/config |
| where the parameters: |
| func: The function number to use (0-7) |
| reg: The address of the register |
| data: The value to write, read if the value is absent |
| For SDIO MMC driver, only function 0 and WLAN function access is allowed. |
| And there is a limitation for function 0 write, only vendor specific CCCR |
| registers (0xf0 -0xff) are permiited. |
| Examples: |
| echo "sdcmd52rw= 0 4" > /proc/mwlan/adapterX/config # read func 0 address 4 |
| cat /proc/mwlan/adapterX/config # display the register value |
| echo "sdcmd52rw= 1 3 0xf" > /proc/mwlan/adapterX/config # write 0xf to func 1 address 3 |
| |
| Issue debug_dump command through proc. |
| Usage: |
| echo "debug_dump" > /proc/mwlan/adapterX/config |
| |
| Examples: |
| echo "debug_dump" > /proc/mwlan/adapterX/config # dump driver internal debug status. |
| To obtain fw dump or driver dump, use command: |
| cat /proc/mwlan/adapter0/drv_dump > file_drv_dump #save the drv dump to file_drv_dump |
| cat /proc/mwlan/adapter0/fw_dump > file_fw_dump #save the fw dump to file_fw_dump |
| cat /proc/mwlan/adapter1/drv_dump > file_drv_dump_2 #save the adapter1 drv dump to file_drv_dump_2 |
| |
| Use dmesg or cat /var/log/debug to check driver debug messages. |
| |
| Update /proc/sys/kernel/printk to change message log levels. |
| For example, |
| echo 6 > /proc/sys/kernel/printk (messages with a higher priority than 6 |
| will be printed to the console) |
| echo 15 > /proc/sys/kernel/printk (all messages will be printed to console) |
| |
| 4) FOR FW RELOAD |
| a) Enable parallel firmware download in driver parameter |
| insmod sdxxx.ko fw_serial=0 |
| |
| b) default fw name for parallel firmware download |
| sd8887_wlan_a2.bin |
| |
| c) Trigger FW reload |
| echo "fw_reload=1" > /proc/mwlan/adapterX/config trigger inband firmware reset and reload firmware |
| echo "fw_reload=2" > /proc/mwlan/adapterX/config trigger firmware reload |
| echo "fw_reload=3" > /proc/mwlan/adapterX/config set firmware reload flag in driver. |
| echo "fw_reload=4" > /proc/mwlan/config trigger pcie FLR and reload firmware. |
| |
| (Note: This feature will be supported on Robin3 and KF2. |
| For CAC-A2, it only work with the board which supports parallel fw download) |
| |
| 5) FOR RF test mode commands: |
| |
| Following commands are used to perform RF testing of the wifi chipset. |
| Please not that these test mode commands can only be issued while the |
| device is in disconnected state and the uAP BSS is inactive. |
| Normal wifi operations cannot be used on entering RF Test Mode. |
| |
| Enter RF Test Mode: |
| echo "rf_test_mode=1" > /proc/mwlan/adapterX/config |
| |
| Exit RF Test Mode: |
| echo "rf_test_mode=0" > /proc/mwlan/adapterX/config |
| Please note that after exiting the RF Test Mode, the FW needs to be |
| reset in order to use normal wifi connectivity. |
| |
| To get the set of available RF Test Mode commands, currently set |
| parameters values for each command and the output, |
| cat /proc/mwlan/adapterX/config |
| |
| Set Tx Antenna |
| For 1x1 chipsets, 1:Main, 2:Aux when antenna diversity is supported |
| For 2x2 chipsets, 1:Path A, 2: Path B, 3: Path A+B |
| Both Tx and Rx must be set to same antenna path |
| echo "tx_antenna=1" > /proc/mwlan/adapterX/config |
| |
| Set Rx Antenna |
| For 1x1 chipsets, 1:Main, 2:Aux when antenna diversity is supported |
| For 2x2 chipsets, 1:Path A, 2:Path B, 3:Path A+B |
| Both Tx and Rx must be set to same antenna path |
| echo "rx_antenna=1" > /proc/mwlan/adapterX/config |
| |
| Set RF band (0:2G, 1:5G) |
| For 2G, channel will be reset to 6, while for 5G, to channel 36 |
| echo "band=0" > /proc/mwlan/adapterX/config |
| |
| Set RF bandwidth (0:20MHz, 1:40MHz, 4:80MHz) |
| echo "bw=0" > /proc/mwlan/adapterX/config |
| |
| Set RF channel |
| echo "channel=6" > /proc/mwlan/adapterX/config |
| |
| Set Radio Mode |
| echo "radio_mode=14 4" > /proc/mwlan/adapterX/config |
| |
| Get and reset packet error rate |
| echo "get_and_reset_per" > /proc/mwlan/adapterX/config |
| |
| Set Tx Power |
| This command will set power only if caldata is already loaded in the FW. |
| Power (0 to 24 dBm) |
| Modulation (0: CCK, 1:OFDM, 2:MCS) |
| Path ID (0: PathA, 1:PathB, 2:PathA+B) |
| echo "tx_power=16 2 0" > /proc/mwlan/adapterX/config |
| |
| Set MFG HE TB Tx to configure Trigger based TX reponse |
| Enable Tx (0:disable, 1:enable) |
| Q num (0-7 : TCQs 0-7, 17-20: AXQs 0-3) |
| AID (Association ID as applicable) |
| AXQ MU Timer(to set the MU EDCA Timer for the Queue) |
| Tx Power (-11 to 9 dBm) |
| echo "he_tb_tx=1 1 5 400 10" > /proc/mwlan/adapterX/config |
| |
| Set Tx Continuous Mode |
| Start (0:disable, 1:enable) |
| Continuous Wave Mode (0:disable, 1:enable) |
| Payload Pattern (0 to 0xFFFFFFFF) |
| CS Mode (Applicable only when continuous wave is disabled) |
| (0:disable, 1:enable) |
| Active SubChannel (0:low, 1:upper, 3:both) |
| Tx Data Rate (Rate Index corresponding to legacy/HT/VHT rates) |
| |
| Example: To start continuous wave (tone) mode, first stop any ongoing |
| Tx and then start wave mode: |
| step1: echo "tx_continuous=0" > /proc/mwlan/adapterX/config |
| step2: echo "tx_continuous=1 1 0xAAA 0 3 7" > /proc/mwlan/adapterX/config |
| |
| Example: To start continuous packet mode, first stop any ongoing Tx and |
| then start pkt mode: |
| step1: echo "tx_continuous=0" > /proc/mwlan/adapterX/config |
| step2: echo "tx_continuous=1 0 0xAAA 0 3 7" > /proc/mwlan/adapterX/config |
| |
| stop: |
| echo "tx_continuous=0" > /proc/mwlan/adapterX/config |
| |
| Set Tx Frame |
| Start (0:disable, 1:enable) |
| Tx Data Rate (Rate Index corresponding to legacy/HT/VHT rates) |
| Payload Pattern (0 to 0xFFFFFFFF) |
| Payload Length (1 to 0x400) |
| Adjust Burst SIFS Gap (0:disable, 1:enable) |
| Burst SIFS in us (0 to 255us) |
| Short Preamble (0:disable, 1:enable) |
| Active SubChannel (0:low, 1:upper, 3:both) |
| Short GI (0:disable, 1:enable) |
| Adv Coding (0:disable, 1:enable) |
| Beamforming (0:disable, 1:enable) |
| GreenField Mode (0:disable, 1:enable) |
| STBC (0:disable, 1:enable) |
| NumPkt (Set to default value -1) |
| MaxPktExt (Set to default value -1) |
| BeamChange (Set to default value -1) |
| DCM (Set to default value -1) |
| Doppler (Set to default value -1) |
| MidamblePeriod (Set to default value -1) |
| QNum (Set to default value 1) |
| BSSID (xx:xx:xx:xx:xx:xx) |
| |
| Example: To start Tx frame with duty cycle, first stop any ongoing Tx |
| and then start Tx frame: |
| echo "tx_frame=0" > /proc/mwlan/adapterX/config |
| 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 |
| |
| Configure Trigger Frame |
| Example: To configure Trigger frame: |
| echo "trigger_frame=1 0 1 2 5484 0 256 0 0 2 1 0 0 0 1 60 1 0 65535 0 511 5 0 67 0 0 0 0 90 0 0 0 0" > /proc/mwlan/adapter0/config |
| |
| Example: To disable configuration of Trigger frame: |
| echo "trigger_frame=0" > /proc/mwlan/adapter0/config |
| |
| For more information about trigger frame configuration as per supported BW(80MHz, 40MHz and 20MHz), |
| Please refer : config/trigger_frame_cfg.conf |
| |
| Example : To start trigger frame transmission : |
| echo "rf_test_mode=1" > /proc/mwlan/adapter0/config |
| echo "band=1" > /proc/mwlan/adapter0/config |
| echo "bw=0" > /proc/mwlan/adapter0/config |
| echo "channel=36" > /proc/mwlan/adapter0/config |
| echo "trigger_frame=1 0 1 2 5484 0 256 0 0 0 1 0 0 0 1 60 1 0 65535 0 511 5 0 61 0 0 0 0 90 0 0 0 0" > /proc/mwlan/adapter0/config |
| echo "tx_frame=1 0x1102 0xabababab 200" >/proc/mwlan/adapter0/config |
| |
| 6) Set host sleep parameters |
| |
| hssetpara |
| This command is used to set host sleep parameters. |
| Example: |
| echo "hssetpara=2 0xff 0xc8 3 400" > /proc/mwlan/adapter0/config |
| echo "hssetpara=2 1 0xc8 3 400 " > /proc/mwlan/adapter0/config |
| |
| 7) For Antenna Diversity Command |
| |
| antcfg |
| This command is used to set/get the mode of Tx/Rx path. |
| |
| GET Command Format: cat /proc/mwlan/adapter0/config |
| SET Command Format: echo "antcfg=[m] [n] [o] [p]" > /proc/mwlan/adapter0/config |
| |
| For chip which support STREAM_2X2 |
| where value of m is: |
| Bit 0 -- Tx Path A or Tx/Rx Path A if [n] is not provided |
| Bit 1 -- Tx Path B or Tx/Rx Path B if [n] is not provided |
| Bit 0-1 -- Tx Path A+B or Tx/Rx Path A+B if [n] is not provided |
| For 9097/9098/IW62X, LOW BYTE for 2G setting |
| Bit 8 -- Tx Path A or Tx/Rx Path A if [n] is not provided |
| Bit 9 -- Tx Path B or Tx/Rx Path B if [n] is not provided |
| Bit 8-9 -- Tx Path A+B or Tx/Rx Path A+B if [n] is not provided |
| For 9097/9098/IW62X, HIGH BYTE for 5G setting |
| where value of n is: |
| Bit 0 -- Rx Path A |
| Bit 1 -- Rx Path B |
| Bit 0-1 -- Rx Path A+B |
| For 9097/9098/IW62X, LOW BYTE for 2G setting |
| Bit 8 -- Rx Path A |
| Bit 8 -- Rx Path B |
| Bit 8-9 -- Rx Path A+B |
| For 9097/9098/IW62X, HIGH BYTE for 5G setting |
| The Tx path setting (m) is used for both Tx and Rx if Rx path (n) is not provided. |
| |
| Examples: |
| cat /proc/mwlan/adapter0/config : Get Tx and Rx path |
| echo "antcfg=3" > /proc/mwlan/adapter0/config : Set Tx and Rx path to A+B |
| echo "antcfg=1 3" > /proc/mwlan/adapter0/config : Set Tx path to A and Rx path to A+B |
| |
| echo "antcfg=0x103" > /proc/mwlan/adapter0/config : Set Tx and Rx path to A+B on 2G and Tx and Rx path to A on 5G |
| echo "antcfg=0x103 0x103" > /proc/mwlan/adapter0/config : Set Tx path to A+B and Rx path to A+B on 2G, and Tx and Rx path to A on 5G |
| |
| echo "antcfg=0x202" > /proc/mwlan/adapter0/config : Use 5GHz path B pin for 5G TX/RX and 2GHz path B pin for 2G TX/RX |
| |
| On RD board connection is as follows : |
| 5GHz path A pin -> AntA |
| 5GHz path B pin -> AntB |
| 2GHz path A pin -> AntB |
| 2GHz path B pin -> AntA |
| |
| For chip which support SAD |
| where value of m is: |
| Bit 0 -- Tx/Rx antenna 1 |
| Bit 1 -- Tx/Rx antenna 2 |
| ... |
| 0xFFFF -- Tx/Rx antenna diversity |
| |
| where value of n is: |
| SAD evaluate time interval, only be provided when m = 0xFFFF, default value is 6s(0x1770) |
| |
| Examples: |
| cat /proc/mwlan/adapter0/config : Get Tx/Rx antenna mode |
| echo "antcfg=1" > /proc/mwlan/adapter0/config : Set Tx/Rx antenna 1 |
| echo "antcfg=0xFFFF" > /proc/mwlan/adapter0/config : Set Tx/Rx antenna diversity |
| echo "antcfg=0xFFFF 0x1770" > /proc/mwlan/adapter0/config : Set antenna evaluate time interval to 6s |
| |
| |
| |
| =============================================================================== |
| U S E R M A N U A L F O R MLANUTL |
| |
| NAME |
| mlanutl - configure the additional parameters available for NXP mdriver. |
| |
| SYNOPSIS |
| mlanutl -v |
| mlanutl <mlanX|uapX|wfdx> <command> [parameters] ... |
| |
| mlanutl mlanX verext |
| mlanutl mlanX version |
| mlanutl mlanX hostcmd <conf> generate_raw <raw_data_file> |
| mlanutl mlanX hostcmd <send_om.conf> send_om_set |
| mlanutl mlanX getdatarate |
| mlanutl uapX getdatarate |
| mlanutl mlanX drvdbg [n] |
| mlanutl mlanX getlog |
| mlanutl mlanX getsignal [m] [n] |
| mlanutl mlanX signalextcfg [m] |
| mlanutl mlanX getsignalextv2 [m] |
| mlanutl mlanX getsignalext [m] |
| mlanutl mlanX get_txpwrlimit <n> [raw_data_file] |
| mlanutl mlanX aggrpriotbl [<m0> <n0> <m1> <n1> ... <m7> <n7>] |
| mlanutl uapX aggrpriotbl [<m0> <n0> <m1> <n1> ... <m7> <n7>] |
| mlanutl mlanX addbapara [<m> <n> <o> <p> <q>] |
| mlanutl uapX addbapara [<m> <n> <o> <p> <q>] |
| mlanutl mlanX addbareject [<m0> <m1> ... <m7>] |
| mlanutl uapX addbareject [<m0> <m1> ... <m7>] |
| mlanutl mlanX dyn_bw [n] |
| mlanutl mlanX vhtcfg <j> <k> [l] [m] [n] [o] |
| mlanutl uapX vhtcfg <j> <k> [l] [m] [n] [o] |
| mlanutl mlanX httxcfg [<m>] [<n>] |
| mlanutl mlanX htcapinfo [<m>] [<n>] |
| mlanutl mlanX 11axcfg [config/11axcfg.conf] |
| mlanutl mlanX 11axcmd <subcmd> <value> |
| mlanutl mlanX txratecfg [l] [m] [n] [o] |
| mlanutl uapX txratecfg [l] [m] [n] [o] |
| mlanutl mlanX txwatchdog [l] |
| mlanutl uapX txwatchdog [l] |
| mlanutl mlanX hssetpara condition [GPIO# [gap]] [ind_GPIO# [level]] |
| mlanutl mlanX mefcfg <mef.conf> |
| mlanutl mlanX cloud_keep_alive <keep_alive.conf> <start/stop/reset> |
| mlanutl mlanX min_ba_threshold <n> |
| mlanutl mlanX 11dcfg |
| mlanutl mlanX 11dclrtbl |
| mlanutl mlanX addts <filename.conf> <section# of tspec> <timeout in ms> |
| mlanutl mlanX amsduaggrctrl <n> |
| mlanutl mlanX antcfg [m] [n] |
| mlanutl mlanX/uapX mimoswitch [tx_antmode] [rx_antmode] |
| mlanutl mlanX arpfilter <arpfilter.conf> |
| mlanutl mlanX assocctrl <j> [k] [l] [m] [n] |
| mlanutl mlanX assocessid <"[essid]"> |
| mlanutl mlanX assocessid_bssid <"[bssid] [essid]"> |
| mlanutl mlanX associate "<bssid> <ssid>" |
| mlanutl mlanX get_chnrgpwr [save_region_channel_power_data_file] |
| mlanutl mlanX comparergpwr <uncompressed file> [target_file] |
| mlanutl mlanX comparetrpc <target_file> <src_file> [display] |
| mlanutl mlanX getcfgchanlist |
| mlanutl mlanX authtype [n] |
| mlanutl mlanX autotdls [n] |
| mlanutl mlanX tdls_idle_time [n] |
| mlanutl uapX dfs_offload [n] |
| mlanutl mlanX bandcfg [l] [m] [n] |
| mlanutl mlanX bcninterval [n] |
| mlanutl wfdX bssrole [l] |
| mlanutl mlanX cfgdata <register type> [<conf file>] |
| mlanutl mlanX cfpcode [m] [n] |
| mlanutl mlanX changraph [<load | anpi | anpiload> <loops>] |
| mlanutl mlanX coex_rx_winsize [m] |
| mlanutl mlanX countrycode [l] |
| |
| mlanutl mlanX cfpinfo |
| mlanutl uapX cfpinfo |
| |
| mlanutl mlanX customie [[[<index>] <mask>] <IEBuffer>] |
| mlanutl mlanX deauth [l] |
| mlanutl uapX deauth [l] |
| mlanutl mlanX deepsleep [l] [m] |
| mlanutl mlanX delba <l> [<m> <n>] |
| mlanutl uapX delba <l> [<m> <n>] |
| mlanutl mlanX delts <filename.conf> <section# of tspec> |
| mlanutl mlanX dfstesting [<user_cac_pd> <user_nop_pd> <no_chan_change> <fixed_chan_num><cac_restart>] |
| mlanutl uapX clear_nop |
| mlanutl uapX nop_list |
| mlanutl uapX fake_radar |
| mlanutl uapX getchload <duration> [<cca_threshold>] |
| mlanutl uapX getchload <duration> |
| mlanutl dfsX dfs_cac <channel> [<bw> <cac-period>] |
| mlanutl dfsX autodfs <stop | start> [conf_file] |
| mlanutl mlanX dfs_repeater [n] |
| mlanutl mlanX dfs53cfg [n] |
| mlanutl uapX dfs_mode [n] |
| mlanutl mlanX esuppmode [l] [m] [n] |
| mlanutl mlanX extcapcfg [<ext_cap>] |
| mlanutl mlanX fwmacaddr [mac_addr] |
| mlanutl mlanX getkey |
| mlanutl mlanX getscantable [ARGS] |
| mlanutl uapX getstalist |
| mlanutl uapX channel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth/num_pkts> |
| mlanutl uapX channel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth> |
| mlanutl mlanX hostcmd <11n_2040coex.conf> 2040coex |
| mlanutl mlanX hostcmd <auto_tx.conf> auto_tx_get |
| mlanutl mlanX hostcmd <auto_tx.conf> auto_tx_unreg |
| mlanutl mlanX hostcmd <bg_scan.conf> bgscfg |
| |
| mlanutl mlanX hostcmd <pkt_coalescing.conf> coalesce_cfg |
| mlanutl mlanX hostcmd <ed_mac_ctrl.conf> ed_mac_ctrl |
| mlanutl mlanX hostcmd <crypto_test.conf> crypto_test |
| mlanutl mlanX hostcmd <auto_tx.conf> nat_keep_alive |
| mlanutl mlanX hostcmd <pad_cfg.conf> pad_cfg_get |
| mlanutl mlanX hostcmd <pad_cfg.conf> pad_cfg_set |
| mlanutl mlanX hostcmd <requesttpc.conf> requesttpc |
| mlanutl mlanX hostcmd <robust_btc.conf> mode_get |
| mlanutl mlanX hostcmd <robust_btc.conf> mode_timeshare |
| mlanutl mlanX hostcmd <robust_btc.conf> mode_spatial |
| mlanutl mlanX hostcmd <robust_btc.conf> mode_none |
| mlanutl mlanX hostcmd <robust_btc.conf> mode_bca |
| mlanutl mlanX hostcmd <robust_btc.conf> gpio_cfg |
| mlanutl mlanX hostcmd <robust_btc.conf> external_coex_config |
| mlanutl mlanX hostcmd <robust_btc.conf> external_coex_pta_config |
| mlanutl mlanX hostcmd <robust_btc.conf> external_coex_uart_config |
| mlanutl mlanX hostcmd <robust_btc.conf> generictime |
| mlanutl mlanX hostcmd <robust_btc.conf> a2dptime |
| mlanutl mlanX hostcmd <robust_btc.conf> inquirytim |
| mlanutl mlanX hostcmd <robust_btc.conf> ap_generictime |
| mlanutl mlanX hostcmd <robust_btc.conf> ap_a2dptime |
| mlanutl mlanX hostcmd <robust_btc.conf> ap_inquirytime |
| mlanutl mlanX hostcmd <coex_int_api.conf> get_bca_arb_config |
| mlanutl mlanX hostcmd <coex_int_api.conf> set_en_bca_arb_config |
| mlanutl mlanX hostcmd <coex_int_api.conf> set_dis_bca_arb_config |
| mlanutl mlanX hostcmd <coex_int_api.conf> set_wlan_traffic_priority |
| mlanutl mlanX hostcmd <coex_int_api.conf> get_wlan_traffic_priority |
| mlanutl mlanX hostcmd <coex_int_api.conf> get_wlan_stats |
| mlanutl mlanX hostcmd <coex_int_api.conf> get_15_4_stats |
| mlanutl mlanX hostcmd <coex_int_api.conf> get_bt_stats |
| mlanutl mlanX hostcmd <coex_int_api.conf> get_ble_stats |
| mlanutl mlanX hostcmd <sdio_pulldown.conf> sdio_pulldown_disable |
| mlanutl mlanX hostcmd <sdio_pulldown.conf> sdio_pulldown_get |
| mlanutl mlanX hostcmd <sdio_pulldown.conf> sdio_pulldown_set |
| mlanutl mlanX hostcmd <subevent.conf> subevent_get |
| mlanutl mlanX hostcmd <subevent.conf> subevent_set |
| mlanutl mlanX hostcmd <txpwrlimit_cfg.conf> txpwrlimit_2g_cfg_set |
| mlanutl mlanX hostcmd <txpwrlimit_cfg.conf> txpwrlimit_5g_cfg_set |
| mlanutl mlanX hostcmd <txpwrlimit_cfg.conf> txpwrlimit_cfg_get |
| mlanutl mlanX hostcmd <txrate_cfg.conf> txrate_cfg_get |
| mlanutl mlanX hostcmd <txrate_cfg.conf> txrate_cfg_set_bg |
| mlanutl mlanX hostcmd <txrate_cfg.conf> txrate_cfg_set_bgn |
| mlanutl mlanX hostcmd <conf> generate_raw <raw_data_file> |
| mlanutl mlanX hostcmd <fwdump.conf> fwdump |
| |
| mlanutl mlanX hostcmd <debug.conf> stop_su |
| mlanutl mlanX hostcmd <debug.conf> start_su |
| |
| mlanutl mlanX hotspotcfg [<bitmap>] |
| mlanutl mlanX hscfg [condition [[GPIO# [gap]]]] [ind_GPIO# [level]] |
| mlanutl mlanX mgmtfilter <mgmtfilter.conf> |
| mlanutl mlanX auto_arp [n] |
| mlanutl mlanX htstreamcfg [n] |
| mlanutl mlanX httxbfcap [cap] |
| mlanutl mlanX httxbfcfg "<action>[;GlobalData/tsData/interval/txPeerData/snrData]" |
| mlanutl mlanX inactivityto <n> <m> <l> [k] |
| mlanutl mlanX ipaddr ["<op>;<ipaddr>"] |
| mlanutl mlanX linkstats |
| mlanutl mlanX listeninterval [l] |
| mlanutl mlanX macctrl [n] |
| mlanutl uapX macctrl [n] |
| mlanutl mlanX memrdwr <address> [value] |
| mlanutl mlanX miracastcfg [l] [m] [n] |
| mlanutl mlanX mgmtframectrl [<mask>] |
| mlanutl uapX mgmtframectrl [<mask>] |
| mlanutl mlanX mgmtframetx <mgmt_frame.conf> |
| mlanutl mlanX mpactrl [tx_ena] [rx_ena] [tx_size] [rx_size] [tx_ports] [rx_ports] |
| mlanutl mlanX netmon [<act> [<filter> <band> <chan> <opt>]] |
| mlanutl mlanX offchannel [<l> <m> <n> <bandwidth>] |
| mlanutl mlanX otpuserdata <l> |
| mlanutl mlanX passphrase [l] |
| mlanutl mlanX pb_bypass [data_1, data_2, ... data_n] |
| mlanutl mlanX pcieregrw <offset> [value] |
| mlanutl mlanX pciebar0regrw <offset> [value] |
| mlanutl mlanX pmfcfg <mfpc> <mfpr> |
| mlanutl mlanX port_ctrl [n] |
| mlanutl mlanX powercons [n] |
| mlanutl mlanX pscfg [k] [d] [l] ... |
| mlanutl mlanX bcntimeoutcfg [l] [m] [o] [p] |
| mlanutl mlanX psmode [l] |
| |
| mlanutl <interface> robustcoex <gpiocfg> [Enable/Disable] [gpionum] [gpiopolarity] |
| mlanutl mlanX qconfig def [Queue Id: 0-3] |
| mlanutl mlanX qconfig get [Queue Id: 0-3] |
| mlanutl mlanX qconfig set msdu <lifetime in TUs> [Queue Id: 0-3] |
| mlanutl mlanX qoscfg |
| mlanutl mlanX qstatus |
| mlanutl mlanX radioctrl [n] |
| mlanutl mlanX rdeeprom <offset> <length> |
| mlanutl mlanX reassoctrl [n] |
| mlanutl mlanX regioncode [n] |
| mlanutl mlanX regrdwr <type> <offset> [value] |
| mlanutl mlanX rejectaddbareq [conditions] |
| mlanutl uapX rejectaddbareq [conditions] |
| mlanutl mlanX scancfg [t] [m] [p] [s] [a] [b] [c] [ext] [gap] |
| mlanutl mlanX sdcmd52rw <FN no.> <address> [data] |
| mlanutl mlanX sdcmd53rw <FN no.> <address> <mode> <blksize> <blknum> [data1] ... [dataN] |
| mlanutl mlanX sdioclock <n> |
| mlanutl mlanX setuserscan [ARGS] |
| mlanutl mlanX cancelscan |
| mlanutl mlanX sleepparams [<p1> <p2> <p3> <p4> <p5> <p6>] |
| mlanutl mlanX sleeppd [n] |
| mlanutl mlanX sysclock [clk1] [clk2] [clk3] [clk4] |
| mlanutl mlanX tcpackenh [l] [m] |
| mlanutl mlanX tdls_channel_switch <tdls.conf> |
| mlanutl mlanX tdls_config <0/1> |
| mlanutl mlanX tdls_cs_params <tdls.conf> |
| mlanutl mlanX tdls_debug "allow_weak_security" <0/1> |
| mlanutl mlanX tdls_debug "cs_im_return" <0/1> |
| mlanutl mlanX tdls_debug "fail_setup_confirm" <0/1> |
| mlanutl mlanX tdls_debug "higher_lower_mac" <0/1> |
| mlanutl mlanX tdls_debug "ignore_key_expiry" <0/1> |
| mlanutl mlanX tdls_debug "setup_existing_link" <0/1> |
| mlanutl mlanX tdls_debug "setup_with_prohibited" <0/1> |
| mlanutl mlanX tdls_debug "stop_rx" <0/1> |
| mlanutl mlanX tdls_debug "wrong_bss" <0/1> |
| mlanutl mlanX tdls_disable_cs <0/1> |
| mlanutl mlanX tdls_discovery <tdls.conf> |
| mlanutl mlanX tdls_link_status |
| mlanutl mlanX tdls_powermode <tdls.conf> |
| mlanutl mlanX tdls_setinfo <tdls.conf> |
| mlanutl mlanX tdls_setup <tdls.conf> |
| mlanutl mlanX tdls_stop_channel_switch <tdls.conf> |
| mlanutl mlanX tdls_teardown <tdls.conf> |
| mlanutl mlanX thermal |
| mlanutl mlanX ts_status |
| mlanutl mlanX tsf |
| mlanutl mlanX txaggrctrl [m] |
| mlanutl mlanX txbufcfg |
| mlanutl mlanX aggrctrl [l] |
| mlanutl mlanX usbaggrctrl [l] [m] [n] [o] [p] [q] [r] [s] |
| mlanutl mlanX usbresume |
| mlanutl mlanX usbsuspend |
| mlanutl <interface> per_pkt_cfg [tx_rx_control] [type_num] [ether_type1 ether_type2 ...] [tx_rx_control] [type_num] [ether_type1 ether_type2 ...] |
| mlanutl <interface> dot11_txrx <send/recv> <options> |
| mlanutl mlanX txrxhistogram [action] [tx_rx_statics] |
| mlanutl uapX txrxhistogram [action] [tx_rx_statics] |
| mlanutl mlanX wakeupreason |
| mlanutl uapX wakeupreason |
| mlanutl mlanX warmreset |
| mlanutl mlanX wpssession [n] |
| mlanutl mlanX wmmcfg [n] |
| mlanutl mlanX wmmparamcfg [AC_BE AIFSN ECW_MAX ECW_MIN TX_OP] |
| [AC_BK AIFSN ECW_MAX ECW_MIN TX_OP] |
| [AC_VI AIFSN ECW_MAX ECW_MIN TX_OP] |
| [AC_VO AIFSN ECW_MAX ECW_MIN TX_OP] |
| mlanutl mlanX wwscfg [m] |
| mlanutl mlanX mc_cfg [n] |
| mlanutl mlanX mc_policy [n] |
| mlanutl mlanX mc_cfg_ext [c] [s] [u] [m] <a> <b> <d> <e> |
| mlanutl p2pX cfg_noa [h] [i] [j] [k] [l] |
| mlanutl p2pX cfg_opp_ps [m] [n] |
| mlanutl mlanX get_sensor_temp |
| mlanutl <inteface> indrstcfg <ir_mode> [gpio_pin] |
| |
| |
| mlanutl uapX ctrldeauth <n> |
| |
| mlanutl mlanX/uapX bootsleep <1/0> |
| |
| mlanutl mlanX ssu [mode] [ssu file] |
| |
| mlanutl mlanX csi <disable/enable (config file)> |
| |
| mlanutl mlanX arb [mode] |
| |
| mlanutl mlanX dmcs <subcmd> [value] |
| |
| mlanutl mlanX/uapX range_ext [mode] |
| mlanutl mlanX twt_setup [config/twt.conf] |
| mlanutl mlanX twt_teardown [config/twt.conf] |
| mlanutl <interface> rx_abort_cfg [enable] [rssi_threshold] |
| mlanutl <interface> rx_abort_cfg_ext [enable] [margin ceil_thresh] |
| mlanutl <interface> tx_ampdu_prot_mode [mode] |
| mlanutl <interface> rate_adapt_cfg [low_thresh high_thresh timer_interval] |
| mlanutl <interface> cck_desense_cfg [mode] [margin ceil_thresh] [num_on_intervals num_off_intervals] |
| mlanutl mlanX/uapX lpm [mode] |
| mlanutl <interface> dot11mc_unassoc_ftm_cfg [enable] |
| mlanutl mlanX tp_state [mode] [drop_point] |
| mlanutl mlanX/uapX clocksync [j][k] [l] [m] [n] |
| mlanutl mlanX/uapX gettsfinfo [j] |
| mlanutl uapX backupchan [j] |
| mlanutl uapX targetchan [j] |
| mlanutl mlanX ips_cfg [1/0] |
| mlanutl mlanX/uapX mcast_aggr_group [action] [mcast_addr] |
| mlanutl mlanX/uapX mc_aggr_cfg [i][j] |
| mlanutl uapX mcast_tx <mcast_tx.conf> |
| mlanutl <interface> getuuid |
| |
| DESCRIPTION |
| Those commands are used to send additional commands to the NXP MLAN |
| card via the Linux device driver. |
| |
| The mlanX parameter specifies the network device that is to be used to |
| perform this command on. It could be mlan0, mlan1 etc. |
| |
| verext |
| Retrieve and display an extended version string from the firmware |
| |
| Usage: |
| mlanutl mlanX verext [#] |
| |
| where [#] is an optional argument to retrieve a specific version string, |
| omission of the argument retrieves the 0 indexed string. |
| |
| version |
| This is used to get the current version of the driver and the firmware. |
| |
| drvdbg |
| This command is used to set/get the bit masks of driver debug message control. |
| |
| Usage: |
| mlanutl mlanX drvdbg [n] |
| |
| Where the parameter <n> is the generic debug message control bit mask. |
| The following types of driver debug messages can be dynamically enabled or |
| disabled by setting or clearing the corresponding bits, |
| bit 0: MMSG PRINTM(MMSG,...) |
| bit 1: MFATAL PRINTM(MFATAL,...) |
| bit 2: MERROR PRINTM(MERROR,...) |
| bit 3: MDATA PRINTM(MDATA,...) |
| bit 4: MCMND PRINTM(MCMND,...) |
| bit 5: MEVENT PRINTM(MEVENT,...) |
| bit 6: MINTR PRINTM(MINTR,...) |
| bit 7: MIOCTL PRINTM(MIOCTL,...) |
| ... |
| bit 16: MDAT_D PRINTM(MDAT_D,...), DBG_HEXDUMP(MDAT_D,...) |
| bit 17: MCMD_D PRINTM(MCMD_D,...), DBG_HEXDUMP(MCMD_D,...) |
| bit 18: MEVT_D PRINTM(MEVT_D,...), DBG_HEXDUMP(MEVT_D,...) |
| bit 19: MFW_D PRINTM(MFW_D,...), DBG_HEXDUMP(MFW_D,...) |
| bit 20: MIF_D PRINTM(MIF_D,...), DBG_HEXDUMP(MIF_D,...) |
| ... |
| bit 28: MENTRY PRINTM(MENTRY,...), ENTER(), LEAVE() |
| bit 29: MWARN PRINTM(MWARN,...) |
| bit 30: MINFO PRINTM(MINFO,...) |
| |
| If CONFIG_DEBUG=2, all kinds of debug messages can be configured. |
| |
| If CONFIG_DEBUG=1, all kinds of debug messages can be configured except |
| for MENTRY, MWARN and MINFO. By default MMSG, MFATAL and MERROR are enabled. |
| |
| Some special debug messages, |
| '*' // MLAN driver ISR is called (bit 6 MINTR enabled) |
| '|' // PS awake event is received (bit 5 MEVENT enabled) |
| '_' // PS sleep event is received (bit 5 MEVENT enabled) |
| '+' // PS sleep confirm is sent (bit 5 MEVENT enabled) |
| |
| Examples: |
| mlanutl mlan0 drvdbg : Get the current driver debug masks |
| mlanutl mlan0 drvdbg 0 : Disable all the debug messages |
| mlanutl mlan0 drvdbg 7 : Enable MMSG, MFATAL and MERROR messages |
| mlanutl mlan0 drvdbg 0x20037 : Enable MMSG, MFATAL, MEEROR, |
| MCMND, MEVENT and MCMD_D messages |
| mlanutl mlan0 drvdbg -1 : Enable all the debug messages |
| |
| hostcmd generate_raw |
| This command is used to generate the raw data(hostcommand block) for |
| hostcommand in <conf_file> and write that to file <raw_data_file> |
| |
| Usage: |
| mlanutl mlanX hostcmd <conf_file> generate_raw <raw_data_file> |
| |
| hostcmd send_om_set |
| This command is used to configure the STAUT to include OM control subfield |
| |
| Usage: |
| mlanutl mlanX hostcmd <send_om.conf> send_om_set |
| |
| getdatarate |
| This command is used to get the data rate being used in last Tx |
| packet and last Rx packet. |
| |
| getlog |
| This command is used to get the statistics available in the station. |
| Following stats are displayed:- |
| dot11MulticastTransmittedFrameCount Increments when the multicast bit is set in the destination |
| MAC address of a successfully transmitted MSDU |
| |
| dot11FailedCount Increments when an MSDU is not transmitted successfully |
| |
| dot11RetryCount Increments when an MSDU is successfully transmitted after one |
| or more retransmissions |
| |
| dot11MultipleRetryCount Increments when an MSDU is successfully transmitted after more |
| than one retransmission |
| |
| dot11FrameDuplicateCount Increments when a frame is received that the Sequence Control |
| field is indicating a duplicate count |
| |
| dot11RTSSuccessCount Increments when a CTS is received in response to an RTS |
| |
| dot11RTSFailureCount Increments when a CTS is not received in response to an RTS |
| |
| dot11ACKFaliureCount Increments when an ACK is not received when expected |
| |
| dot11ReceivedFragmentCount Increments for each successfully received MPDU of type Data or Management |
| |
| dot11MulticastReceivedFrameCount Increments when a MSDU is received with the multicast bit set in the destination MAC address |
| |
| dot11FCSErrorCount Increments when an FCS error is detected in a received MPDU |
| |
| dot11TransmittedFrameCount Increments for each successfully transmitted MSDU |
| |
| dot11WeplcvErrCnt Increment when WEP (use of WEP/TKIP is not recommended anymore)decryption error for key index 0.3 |
| |
| beaconReceivedCnt Increments when received beacon |
| |
| beaconMissedCnt Increments when beacon missed |
| |
| dot11TransmittedFrameCount Increments for each successfully transmitted MSDU |
| |
| dot11QosTransmittedFragmentCount Increments when a corresponding UP's MPDU transmitted successfully |
| |
| dot11QosFailedCount Increments when a corresponding UP's MSDU not transmitted successfully |
| |
| dot11QosRetryCount Increment when a corresponding UP's MSDU transmitted successfully after one or more retransmission |
| |
| dot11QosMultipleRetryCount Increments when a corresponding UP's MSDU is successfully transmitted after more than one retransmission |
| |
| dot11QosFrameDuplicateCount Increments when a corresponding UP's frame is received that the Sequence |
| Control field is indicating a duplicate frame |
| |
| dot11QosRTSSuccessCount Increments when a CTS is received in response to an RTS, which is sent for a corresponding UP's Qos frame |
| |
| dot11QosRTSFailureCount Increments when a CTS is not received in response to an RTS, which is sent for a corresponding UP's |
| Qos frame |
| |
| dot11QosACKFailureCount Increments when an ACK is not received when expected for a corresponding UP's Qos frame |
| |
| dot11QosReceivedFragmentCount Increments when a corresponding UP's MPDU received |
| |
| dot11QosTransmittedFrameCount Increments when a corresponding UP's MSDU transmitted |
| |
| dot11QosDiscardedFrameCount Increments when a corresponding UP's MSDU not transmitted successfully |
| |
| dot11QosMPDUsReceivedCount Increments when a corresponding UP's MDPU received |
| |
| |
| dot11QosRetriesReceivedCount Increments when a corresponding UP's MDPU received which retry bit is set |
| |
| dot11RSNAStatsCMACICVErrors Increment when a MPDU discard by CMAC integrity check |
| |
| dot11RSNAStatsCMACReplays Increments when a MPDU discarded by the CMAC replay error |
| |
| dot11RSNAStatsRobustMgmtCCMPReplays Increments when a robust management frame discarded by CCMP replay error |
| |
| dot11RSNAStatsTKIPICVErrors Increments when a MPDU discarded by TKIP ICV error //(use of WEP/TKIP is not recommended anymore) |
| |
| dot11RSNAStatsTKIPReplays Increments when a MPDU discarded by TKIP replay error //(use of WEP/TKIP is not recommended anymore) |
| |
| dot11RSNAStatsCCMPDecryptErrors Increments when a MPDU discarded by CCMP decryption error |
| |
| dot11RSNAStatsCCMPReplays Increments when a MPDU discarded by CCMP replay error |
| |
| dot11TransmittedAMSDUCount Increments when a A-MSDU transmitted successfully |
| |
| dot11FailedAMSDUCount Increments when a A-MSDU not transmitted successfully |
| |
| dot11RetryAMSDUCount Increments when a A-MSDU is successfully transmitted after one or more retransmissions |
| |
| dot11MultipleRetryAMSDUCount Increments when a A-MSDU is successfully transmitted after more than one retransmissions |
| |
| dot11TransmittedOctetsInAMSDUCount Increments by the number of octets in the frame body |
| of an A-MSDU frame when an A-MSDU frame is successfully transmitted |
| |
| dot11AMSDUAckFailureCount Increments when an acknowledgment to an A-MSDU is not received when expected. |
| |
| dot11ReceivedAMSDUCount Increments when a A-MSDU frame received |
| |
| dot11ReceivedOctetsInAMSDUCount Increments by the number of octets in the frame body |
| of an A-MSDU frame when an A-MSDU frame is received |
| |
| dot11TransmittedAMPDUCount Increments when an A-MPDU is transmitted |
| |
| dot11TransmittedMPDUsInAMPDUCount Increments by the number of MPDUs in the A-MPDU when an A-MPDU is transmitted |
| |
| dot11TransmittedOctetsInAMPDUCount Increments by the number of octets in the A-MPDU frame when an A-MPDU frame is transmitted |
| |
| dot11AMPDUReceivedCount Increments when the MAC receives an A-MPDU from the PHY |
| |
| dot11MPDUInReceivedAMPDUCount Increments by the number of MPDUs received in the |
| A-MPDU when an A-MPDU is received |
| |
| dot11ReceivedOctetsInAMPDUCount Increments by the number of octets in the A-MPDU |
| frame when an A-MPDU frame is received |
| |
| dot11AMPDUDelimiterCRCErrorCount Increments when an MPDU delimiter has a CRC error when this is the first |
| CRC error in the received A-MPDU or when the previous delimiter has been decoded correctly |
| |
| Cmd Usage: mlanutl mlanX getlog ext |
| The above command is used with the argument "ext" to display the following error statistics:- |
| |
| rxStuckIssueCount-1 |
| rxStuckIssueCount-2 |
| rxStuckRecoveryCount |
| rxStuckTsf-1 |
| rxStuckTsf-2 |
| txWatchdogRecoveryCount |
| txWatchdogTsf-1 |
| txWatchdogTsf-2 |
| channelSwitchAnnouncementSent |
| channelSwitchState |
| registerClass |
| channelNumber |
| channelSwitchMode |
| RxResetRecoveryCount |
| RxIsr2NotDoneCnt |
| gdmaAbortCnt |
| gResetRxMacCnt |
| gOwnrshpCtlErrCnt |
| gOwnrshpBcnErrCnt |
| gOwnrshpMgtErrCnt |
| gOwnrshpDatErrCnt |
| |
| getsignal |
| This command gets the last and average value of RSSI, SNR and NF of |
| Beacon and Data. |
| Note: This command is available only when STA is connected. |
| |
| where value of m is: |
| 1 -- RSSI (Receive Signal Strength Indication) |
| 2 -- SNR (Signal to Noise Ratio) |
| 3 -- NF (Noise Floor) |
| where value of n is: |
| 1 -- Beacon last |
| 2 -- Beacon average |
| 3 -- Data last |
| 4 -- Data average |
| |
| Examples: |
| mlanutl mlan0 getsignal 1 : Get the RSSI info (beacon last, beacon |
| average, data last and data average) |
| mlanutl mlan0 getsignal 3 4 : Get the NF of data average |
| mlanutl mlan0 getsignal 2 1 : Get the SNR of beacon last |
| mlanutl mlan0 getsignal : Get all of the signal info |
| mlan0 getsignal:-32 -33 -35 -36 67 59 63 56 -99 -92 -98 -92 |
| RSSI info: beacon last -32, beacon average -33, data last -35, data average -36 |
| SNR info: beacon last 67, beacon average 59, data last 63, data average 56 |
| NF info: beacon last -99, beacon average -92, data last -98, data average -92 |
| |
| getsignalext |
| This command gets the last and average value of RSSI, SNR and NF of |
| Beacon and Data of spectific antenna path. |
| Note: This command is available only when STA is connected. |
| Driver will enable signalext and collect signal information for one second |
| |
| where value of m is: |
| 1 -- PATH A |
| 2 -- PATH B |
| 3 -- PATH A+B |
| |
| Examples: |
| mlanutl mlan0 getsignalext :Get All path's signal. |
| mlanutl maln0 getsignalext 3 :Get path A+B signal |
| mlanutl maln0 getsignalext 1 :Get path A signal |
| mlanutl mlan0 getsignalext 2 :Get path B signal |
| |
| PATH A: -46 -46 -49 -49 65 45 39 42 -111 -91 -88 -91 |
| |
| PATH A: RSSI info: beacon last -46, beacon average -46, data last -49, data average -49 |
| SNR info: beacon last 65, beacon average 45, data last 39, data average 42 |
| NF info: beacon last -111, beacon average -91, data last -88, data average -91 |
| |
| signalextcfg |
| This command is used to enable/disable signalext |
| Usage: |
| mlanutl mlanX signalextcfg [m] |
| where the value of [m] is: |
| 1 -- enable signalext in firmware |
| 0 -- disable signalext in firmware |
| Examples: |
| mlanutl mlan0 signalextcfg 1 : Enable signalext in firmware |
| mlanutl mlan0 signalextcfg 0 : Disable signalext in firmware |
| |
| getsignalextv2 |
| This command gets the last and average value of RSSI, SNR and NF of |
| Beacon and Data of spectific antenna path. |
| Note: This command is available only when STA is connected. |
| "mlanutl mlanX signalextcfg 1" command needs to be issued before issuing this command |
| |
| where value of m is: |
| 1 -- PATH A |
| 2 -- PATH B |
| 3 -- PATH A+B |
| |
| Examples: |
| mlanutl mlan0 getsignalextv2 :Get All path's signal. |
| mlanutl maln0 getsignalextv2 3 :Get path A+B signal |
| mlanutl maln0 getsignalextv2 1 :Get path A signal |
| mlanutl mlan0 getsignalextv2 2 :Get path B signal |
| |
| PATH A: -46 -46 -49 -49 65 45 39 42 -111 -91 -88 -91 |
| |
| PATH A: RSSI info: beacon last -46, beacon average -46, data last -49, data average -49 |
| SNR info: beacon last 65, beacon average 45, data last 39, data average 42 |
| NF info: beacon last -111, beacon average -91, data last -88, data average -91 |
| |
| get_txpwrlimit |
| This command is used to get the txpwrlimit table in FW |
| Usage: |
| mlanutl mlanX get_txpwrlimit <n> [raw_data_file] |
| where <n> |
| 0: Get 2.4G txpwrlimit table |
| 0x10: Get 5G sub0 txpwrlimit table |
| 0x11: Get 5G sub1 txpwrlimit table |
| 0x12: Get 5G sub2 txpwrlimit table |
| 0x13: Get 5G sub3 txpwrlimit table |
| 0x1f: Get all 5G txpwrlimit table |
| 0xff: Get both 2G and 5G txpwrlimit table |
| <raw_data_file> driver will save fw raw data to this file. |
| |
| Examples: |
| mlanutl mlan0 get_txpwrlimit 0 : Get 2G txpwrlimit table. |
| mlanutl mlan0 get_txpwrlimit 0x10 : Get 5G sub band0 txpwrlimit table |
| mlanutl mlan0 get_txpwrlimit 0xff txpwrlimit.bin : Get both 2G/5G txpwrlimit table and save to txpwrlimit.bin |
| |
| aggrpriotbl |
| This command is used set/get the priority table for AMPDU/AMSDU traffic per tid. |
| This command can also be used to disable AMPDU/AMSDU for a given tid. |
| In case of AMPDU this priority table will be used to setup block ack (to make |
| sure the highest priority tid always uses AMPDU as we have limited AMPDU streams) |
| |
| where <m0> <n0> <m1> <n1> ... <m7> <n7> |
| |
| <mx> - This is priority for Tid0 for AMPDU packet. A priority could be any |
| values between 0 - 7, 0xff to disable aggregation. |
| <nx> - This is priority for Tid0 for AMSDU packet. A priority could be any |
| values between 0 - 7, 0xff to disable aggregation. |
| |
| eg: |
| mlanutl mlanX aggrpriotbl - This command will get the current Priority table for AMPDU and AMSDU. |
| <2 2 0 0 1 1 3 3 4 4 5 5 255 255 255 255>. This is read as |
| <"Prio for AMPDU for Tid0" "Prio for AMSDU for Tid0" |
| "Prio for AMPDU for Tid1" "Prio for AMSDU for Tid1" and so on |
| mlanutl mlanX aggrpriotbl 2 2 0 0 1 1 3 3 4 4 5 5 255 255 255 255 - |
| This will set the priority table for AMPDU and AMSDU |
| Priority for Tid0/AMPDU = 2, Tid0/AMSDU = 2, Tid1/AMPDU = 0, Tid1/AMSDU = 0 |
| and so on. Aggregation for Tid6 and Tid7 are disabled. |
| Here higher the priority number, higher the priority (i.e. 7 |
| has higher priority than 6). Similarly for AMSDU. |
| mlanutl mlanX aggrpriotbl 0xff 2 0xff 0 0xff 1 0xff 3 0xff 4 0xff 5 0xff 0xff 0xff 0xff - This will disable |
| AMPDU for all the TIDs but will still keep AMSDU enabled to Tid0 to Tid5 |
| |
| The default setting is 2 255 0 255 1 255 3 255 4 255 5 255 255 255 255 255. |
| |
| A delBA should be seen in case a disable happens on a TID for which AMPDU stream |
| is currently setup. |
| |
| Note:- This command should only be issue in disconnected state. |
| |
| addbapara |
| This command can be used to update the default ADDBA parameters. |
| |
| where <m> is <timeout> |
| <timeout> - This is the block ack timeout for ADDBA request. |
| 0 : Disable (recommended for throughput test) |
| 1 - 65535 : Block Ack Timeout in TU |
| |
| where <n> is <txwinsize> |
| <txwinsize> - Window size for ADDBA request. (16 is recommended and default value) |
| |
| where <o> is <rxwinsize> |
| <rxwinsize> - Window size for ADDBA response. (48 is recommended and 32 is default value) |
| (16 is recommended for IWNCOMM AP in WAPI throughput test) |
| |
| Current window size limit for Tx as well as Rx is 1023. |
| |
| where <p> is <txamsdu> |
| <txamsdu> - amsdu support for ADDBA request. (1 is default value) |
| 0: disable amsdu in ADDBA request |
| 1: enable amsdu in ADDBA request |
| |
| where <q> is <rxamsdu> |
| <rxamsdu> - amsdu support for ADDBA response. (1 is default value) |
| 0: disable amsdu in ADDBA response |
| 1: enable amsdu in ADDBA response |
| |
| eg: |
| mlanutl mlanX addbapara - This command will get the current addba params |
| mlanutl mlanX addbapara 1000 64 8 0 0 - This will change the ADDBA timeout to (1000 * 1024) us, |
| txwinsize to 64 and rxwinsize to 8 and disable amdsu in ADDBA request/response. |
| |
| The default setting is 65535 16 32 1 1. |
| |
| In case the ADDBA timeout value is updated then a ADDBA is sent for all streams |
| to update the timeout value. |
| |
| In case txwinsize and/or rxwinsize is updated, the effect could only be seen on |
| next ADDBA request/response. The current streams will not be affected with this |
| change. |
| |
| In case of txamsdu/rxamsdu is updated, the effect could only be seen on |
| next ADDBA request/response. The current streams will not be affected with this |
| change. AMSDU in AMPDU stream will be enabled when AP support this feature |
| and AMSDU is enabled in aggrpriotbl. |
| |
| addbareject |
| This command is used set/get the addbareject table for all the TIDs. |
| This command can also be used to enable rejection of ADDBA requests for a given tid. |
| |
| where <m0> <m1> ... <m7> |
| |
| <mX> - This can be 0/1 for TidX. 1 enables rejection of ADDBA request for TidX and |
| 0 would accept any ADDBAs for TidX. |
| |
| eg: |
| mlanutl mlanX addbareject - This command will get the current table. |
| [0 0 0 0 0 0 0 0]. ADDBA would be accepted for all TIDs. This is the default state. |
| |
| mlanutl mlanX addbareject 0 0 1 1 0 0 0 0 - This command will accept ADDBA requests for |
| Tid [0,1,4,5,6,7] and reject ADDBA requests for Tid [2,3] |
| |
| mlanutl mlanX addbareject 1 1 1 1 1 1 1 1 - This will enable rejection of ADDBA requests for |
| all Tids. |
| |
| Note:- This command should only be issue in disconnected state. |
| |
| vhtcfg |
| This command is used to set and get various 11ac specific configuration |
| for transmission and reception. For the SET operation, all paramaters |
| may be applied. For the GET operation, only the first two parameters are applied. |
| The 6th argument "rx_mcs_set" can be used to disbale/enable 802.11ac. |
| |
| where <j> is <band> |
| <band> - This is the band setting for the vhtcfg |
| 0: Settings for both 2.4G and 5G bands (for SET operation, 11N BW only) |
| 1: Settings for 2.4G band (for 11N BW only) |
| 2: Settings for 5G band |
| |
| where <k> is <txrx> |
| <txrx> - This parameter specifies the configuration of VHT operation for TX or/and VHT capabilities |
| 0: Unspecified |
| 1: configuration of VHT capabilities for Tx operations (STA only) |
| 2: configuration of VHT capabilities for association (STA only) |
| 3: configuration of VHT capabilities (uAP only) |
| Note: For the STA, the VHT capabilities configuration is applied in association, |
| whereas the VHT operations configuration is actually used in Tx. |
| |
| where [l] is <bwcfg> |
| <bwcfg> - This parameter specifies the bandwidth (BW) configuration |
| applied to the vhtcfg. |
| If <txrx> is 1/3 (Tx operations), |
| 0: Tx BW follows the BW (20/40 MHz) from 11N CFG |
| 1: Tx BW follows the BW (80/160/80+80 MHz) from VHT Capabilities |
| defined in <vhtcap> below for 5G band. |
| If <txrx> is 2 (association), |
| 0: Rx BW follows the BW (20/40 MHz) from 11N CFG |
| 1: Rx BW follows the BW (80/160/80+80 MHz) from VHT Capabilities |
| defined in <vhtcap> below for 5G band. |
| |
| where [m] is <vhtcap> |
| <vhtcap> - This parameter specifies the VHT capabilities info if <txrx> is 2 (association) |
| or the VHT Tx operations if <txrx> is 1 (Tx operations). |
| The VHT Tx operation should be a subset of VHT capabilities for association. |
| It is a bitmap and should be used as follows: |
| |
| Bit 31-30: Reserved and set to 0 |
| Bit 29: TX antenna pattern consistency |
| 1: antenna pattern does not change |
| 0: antenna pattern might change |
| Bit 28: RX antenna pattern consistency |
| 1: antenna pattern does not change |
| 0: antenna pattern might change |
| Bit 27-26: VHT link adaptation capable |
| 0: no feedback of VHT MFB from the STA |
| 1: unsolicted feedback of VHT MFB from the STA |
| 2: both response and unsolicted feedback of VHT MFB |
| from the STA |
| 3: reserved and set to 0 |
| Bit 25-23: Maximum A-MPDU length exponent |
| Bit 22: +HTC-VHT capable (1: enable. 0 disable) |
| Bit 21: VHT TXOP PS |
| Bit 20: MU beamformee capable (1: enable. 0 disable) |
| Bit 19: MU beamformer capable (1: enable. 0 disable) |
| Bit 18-16: Number of sounding dimensions (set to maximum-1 |
| if Bit 11 is 1. Otherwise, reserved and set to 0) |
| Bit 15-13: Compressed steering number of beamformer |
| antennas supported (set to maximum-1 if Bit 12 is 1. |
| Otherwise, reserved and set to 0) |
| Bit 12: SU beamformee capable (1: enable. 0 disable) |
| Bit 11: SU beamformer capable (1: enable. 0 disable) |
| Bit 10-8: Rx STBC |
| 0: no support |
| 1: support of 1 spatial stream |
| 2: support of 1-2 streams |
| 3: support of 1-3 spatial streams |
| 4: support of 1-4 spatial streams |
| 5-7: reserved and set to 0 |
| Bit 7: TX STBC (1: enable. 0 disable) |
| Bit 6: Short GI for 160 and 80+80 MHz (1: enable. 0 disable) |
| Bit 5: Short GI for 80 MHz (1: enable. 0 disable) |
| Bit 4: Rx LDPC (1: enable. 0 disable) |
| Bit 3-2: Supported channel width set. |
| 0: no support of either 160 or 80+80 MHz. |
| 1: support of 160 MHz |
| 2: support of both 160 and 80+80 MHz. |
| 3: reserved and set to 0. |
| Bit 1-0: Maximum MPDU length |
| 0: 3895 octets. |
| 1: 7991 octets. |
| 2: 11454 octets. |
| 3: reserved and set to 0. |
| |
| Note: for the STA, if <txrx> is 1 (Tx operations), the bitmap for <vhtcap> may be simplied as follows: |
| Bit 31-8: Reserved and set to 0 |
| Bit 7: Tx STBC (1: enable. 0 disable) |
| Bit 6: Reserved and set to 0 |
| Bit 5: Short GI for 80 Mhz (1: enable. 0 disable) |
| Bit 4: LDPC (1: enable. 0 disable) |
| Bit 3-0: Reserved and set to 0 |
| |
| where [n] is <tx_mcs_map>, |
| <tx_mcs_map> - This parameter specifies the TX MCS map. It may not be used for the STA if <txrx> is 1 (Tx operations). |
| It is a bitmap and should be used as following |
| Bit 15-0: MCS map, which is defined as folows: |
| Bit 15-14: Max MCS for 8 SS |
| Bit 13-12: Max MCS for 7 SS |
| Bit 11-10: Max MCS for 6 SS |
| Bit 9-8: Max MCS for 5 SS |
| Bit 7-6: Max MCS for 4 SS |
| Bit 5-4: Max MCS for 3 SS |
| Bit 3-2: Max MCS for 2 SS |
| Bit 1-0: Max MCS for 1 SS |
| |
| where [o] is <rx_mcs_map>. |
| <rx_mcs_map> - This parameter specifies the RX MCS map. It may not be used for the STA if <txrx> is 1 (Tx operations). |
| It is a bitmap with the same sructure as for <tx_mcs_map> |
| rx_mcs_map = 0xffff : FW will disable 802.11ac |
| rx_mcs_map = others : FW will enable 802.11ac |
| |
| Note: The user setting of vhtcap may be overwritten by the driver |
| if the setting of those fields is beyond the hardware capabilities. |
| |
| Examples: |
| mlanutl mlan0 vhtcfg 2 1 : Get current VHT configuration in 5GHz for the STA. |
| mlanutl mlan0 vhtcfg 2 2 : Get maximum VHT configuration in 5GHz for the STA. |
| mlanutl mlan0 vhtcfg 2 1 1 0x000001f0 |
| : Set the Tx operations configuration in 5GHz for the STA, |
| Tx BW follows the VHT Capabilities. |
| mlanutl mlan0 vhtcfg 2 2 0 0x000001f0 0xfff5 0xfffa |
| : Set the VHT capabilities configuration in 5GHz for the STA, |
| the Tx supports MCS 0-8 for both 1 and 2 spatial streams, |
| while the Rx supports MCS 0-9 for both 1 and 2 spatial streams. |
| mlanutl uap0 vhtcfg 2 3 0 0x000001f0 0xfffa 0xfffa |
| : Set the current/maximum VHT configuration in 5GHz for the uAP. |
| Both Tx and Rx supports MCS 0-9 for both 1 and 2 spatial streams. |
| mlanutl uap0 vhtcfg 2 3 0 0x000001b0 |
| : Set the VHT capability information in 5GHz for the uAP, and keep the Tx/Rx MCS Map same as before. |
| |
| dyn_bw |
| This command is used to set/get dynamic bandwidth. |
| |
| Usage: |
| mlanutl mlanX dyn_bw [n] |
| |
| where <n> |
| [BIT0] |
| 0 = TxInfo Indicated BW Disable |
| 1 = TxInfo Indicated BW Enable |
| [BIT1] |
| 0 = TxInfo Dynamatic BW Disable |
| 1 = TxInfo Dynamatic BW Enable |
| [BIT2] |
| 0 = TxInfo Force send RTS Disable |
| 1 = TxInfo Force send RTS Enable |
| [BIT3] |
| 0 = Mac Dynamic BW Operation Mode Disable (Static BW Operation Mode) |
| 1 = Mac Dynamic BW Operation Mode Enable |
| other bits reserved. |
| |
| If no parameter provided, get is performed. |
| |
| Examples: |
| mlanutl mlan0 dyn_bw 0x1 : Enable TxInfo Indicated BW |
| mlanutl mlan0 dyn_bw : get current setting |
| |
| httxcfg |
| This command is used to configure various 11n specific configuration |
| for transmit (such as Short GI, Channel BW and Green field support) |
| |
| where <m> is <txcfg> |
| This is a bitmap and should be used as following |
| Bit 15-8: Reserved set to 0 |
| Bit 7: STBC enable/disable |
| Bit 6: Short GI in 40 Mhz enable/disable |
| Bit 5: Short GI in 20 Mhz enable/disable |
| Bit 4: Green field enable/disable |
| Bit 3-2: Reserved set to 1 |
| Bit 1: 20/40 Mhz enable disable. |
| Bit 0: LDPC enable/disable |
| |
| When Bit 1 is set then firmware could transmit in 20Mhz or 40Mhz based |
| on rate adaptation. When this bit is reset then firmware will only |
| transmit in 20Mhz. |
| |
| where <n> is <band> |
| <band> - This is the band info for <txcfg> settings. |
| 0: Settings for both 2.4G and 5G bands |
| 1: Settings for 2.4G band |
| 2: Settings for 5G band |
| |
| Example: |
| mlanutl mlanX httxcfg |
| This will display HT Tx configuration for 2.4G and 5G band. |
| |
| mlanutl mlanX httxcfg 0x62 |
| This will enable 20/40 and Short GI but will disable Green field for 2.4G and 5G band. |
| |
| mlanutl mlanX httxcfg 0x30 1 |
| This will enable Short GI 20 Mhz and Green field for 2.4G band. |
| |
| The default value is 0x20 for 2.4G and 0x62 for 5G. |
| |
| Note:- If 20/40 MHz support is disabled in htcapinfo, device will not transmit |
| in 40 MHz even 20/40 MHz is enabled in httxcfg. |
| |
| htcapinfo |
| This command is used to configure some of parameters in HTCapInfo IE |
| (such as Short GI, Channel BW, and Green field support) |
| |
| where <m> is <capinfo> |
| <capinfo> - This is a bitmap and should be used as following |
| Bit 29: Green field enable/disable |
| Bit 26: Rx STBC Support enable/disable. (As we support |
| single spatial stream only 1 bit is used for Rx STBC) |
| Bit 25: Tx STBC support enable/disable. |
| Bit 24: Short GI in 40 Mhz enable/disable |
| Bit 23: Short GI in 20 Mhz enable/disable |
| Bit 22: Rx LDPC enable/disable |
| Bit 17: 20/40 Mhz enable disable. |
| Bit 8: Enable/disable 40Mhz Intolarent bit in ht capinfo. |
| 0 will reset this bit and 1 will set this bit in |
| htcapinfo attached in assoc request. |
| All others are reserved and should be set to 0. |
| |
| Setting of any other bits will return error. |
| |
| where <n> is <band> |
| <band> - This is the band info for <capinfo> settings. |
| 0: Settings for both 2.4G and 5G bands |
| 1: Settings for 2.4G band |
| 2: Settings for 5G band |
| |
| Example: |
| mlanutl mlanX htcapinfo |
| This will display HT capabilties information. |
| If the information for 2.4G and 5G is different, |
| the first value is for 2.4G and the second value is for 5G. |
| Otherwise, it will display a single value for both bands. |
| |
| mlanutl mlanX htcapinfo 0x1820000 |
| This will enable Short GI, Channel BW to 20/40 and disable Green field support for 2.4G and 5G band. |
| |
| mlanutl mlanX htcapinfo 0x800000 2 |
| This will enable Short GI, Channel BW to 20 only, No Rx STBC support and disable Green field support for 5G band. |
| |
| The default value is 0x4800000 for 2.4G and 0x5820000 for 5G. |
| |
| Note:- This command can be issued any time but it will only come to effect from |
| next association. (as HTCapInfo is sent only during Association). |
| |
| 11axcfg |
| This command is used to config 11ax HE capability using conf file. |
| |
| Usage: |
| mlanutl mlanX 11axcfg [conf file] |
| |
| Example: |
| mlanutl mlan0 11axcfg config/11axcfg.conf |
| mlanutl uap0 11axcfg config/11axcfg.conf |
| |
| 11axcmd |
| This command is used to config 11ax HE capability using command. |
| |
| Usage: |
| mlanutl <mlanX|uapX> 11axcmd <subcmd> [value_1] [value_2] [value_3] |
| <subcmd = obss_pd_offset > : spatial reuse configuration |
| set obss_pd offset, [value_1] = NON_SRG_OffSET, [value_2] = SRG_OFFSET |
| |
| <subcmd = enable_sr > : spatial reuse configuration |
| control SR, [value_1]= 1 is enable SR, [value_1] = 0 is disable SR |
| |
| <subcmd = beam_change > : enable/disable beam change |
| enable beam_change when [value_1 = 0] |
| disable beam_change when [value_1 = 1] |
| |
| <subcmd = enable_htc > : enable/disable HTC transmission |
| enable transmission of HTC when [value_1 = 1] |
| disable transmission of HTC when [value_1 = 0] |
| |
| <subcmd = txop_rts > : set/get RTS threshold |
| This subcmd applies to uapX only. uAP uses it to manage the RTS/CTS used by associated non-AP HE STA |
| set TXOP duration RTS Threshold when [value_1 = <threshold>]. If <threshold> = 1023, disable TXOP duration RTS |
| get TXOP duration RTS Threshold without value_1 and value_2 |
| Where <threshold> is: |
| Bit 0-9: TXOP RTS Threshold |
| <subcmd = tx_omi > : set/get omi value |
| used for OMI transmission in MAC header HTC+ field, please see 11ax spec for OMI definition |
| set OMI: [value_1 = <omi>] [value_2 = <tx_option>] [value_3 = <num_data_packeets>] |
| where |
| <omi> is defined as: |
| Bit 0-2: Rx NSS |
| Bit 3-4: Channel Width |
| Bit 6 : Tx NSTS (applies to client mode only) |
| All other bits are not supported currently. |
| <tx_option> is defined as: |
| 0: OMI is transmitted in QoS NULL frame; |
| 1: OMI is transmitted in QoS data frame; |
| 0xFF: OMI is transmitted in both QoS NULL and QoS data frame. |
| <num_data_packeets> is applied only if OMI is sent in QoS data frame. |
| It specifies the number of consecutive data frames containing the OMI. |
| |
| get OMI without any value |
| |
| <subcmd = obssnbru_toltime> : set/get OBSS narrow band RU tolerance time value in seconds |
| set tolerance time when [value_1 = <time>], where <time> indicates: |
| the minimum time that needs to pass since the reception of the last beacon frame from an OBSS AP that |
| did not indicate tolerance to narrow bandwidth RU in OFDMA before the STA transmits an HE TB PPDU in a |
| 26-tine RU allocated by a trigger frame from the HE AP. |
| valid value range [1..3600] in seconds. Any value more than 3600 will disable this feature. |
| By default this feature is currently disabled. |
| Example : |
| mlanutl mlan0 11axcmd obss_pd_offset 2 3 : set obss_pd offset of spatial reuse, NON_SRG_OffSET = 2, SRG_OFFSET = 3 |
| mlanutl mlan0 11axcmd obss_pd_offset : get obss_pd offset of spatial reuse |
| mlanutl mlan0 11axcmd enable_sr 1 : enable spatial reuse |
| mlanutl mlan0 11axcmd beam_change 0 : enable beam change |
| mlanutl mlan0 11axcmd enable_htc 1 : enable transmission of HTC |
| mlanutl uap0 11axcmd txop_rts 0x34 : set RTS threshold value to 0x34 |
| mlanutl uap0 11axcmd txop_rts : get RTS threshold value |
| mlanutl mlan0 11axcmd tx_omi 0x41 : set omi value to 0x41 |
| mlanutl mlan0 11axcmd tx_omi : get omi value |
| mlanutl mlan0 11axcmd obssnbru_toltime 1800 : set OBSSNBRU tolerance time to 1800 seconds |
| mlanutl mlan0 11axcmd obssnbru_toltime 3601 : disable OBSSNBRU tolerance time |
| mlanutl mlan0 11axcmd obssnbru_toltime : get OBSSNBRU tolerance time |
| |
| txratecfg |
| This command is used to set/get the transmit data rate. |
| |
| Note: |
| 1) The data rate can be set only after association. |
| |
| 2) If the reassoc is OFF driver reset the data rate to auto if the connection state is disconnected. |
| Please note that user has to re-issue the set data rate command if the driver is disconnected. |
| |
| 3) If the reassoc is ON driver remembers the data rate set by the user, if the driver is |
| disconnected user does not have to re-issue the set data rate again. |
| |
| 4) Parameter [o] is optional. If [o] is not given, it will be set as 0xffff. |
| |
| Where |
| [l] is <format> |
| <format> - This parameter specifies the data rate format used in this command |
| 0: LG |
| 1: HT |
| 2: VHT |
| 3: HE |
| 0xff: Auto |
| |
| [m] is <index> |
| <index> - This parameter specifies the rate or MCS index |
| If <format> is 0 (LG), |
| 0 1 Mbps |
| 1 2 Mbps |
| 2 5.5 Mbps |
| 3 11 Mbps |
| 4 6 Mbps |
| 5 9 Mbps |
| 6 12 Mbps |
| 7 18 Mbps |
| 8 24 Mbps |
| 9 36 Mbps |
| 10 48 Mbps |
| 11 54 Mbps |
| If <format> is 1 (HT), |
| 0 MCS0 |
| 1 MCS1 |
| 2 MCS2 |
| 3 MCS3 |
| 4 MCS4 |
| 5 MCS5 |
| 6 MCS6 |
| 7 MCS7 |
| 8 MCS8 |
| 9 MCS9 |
| 10 MCS10 |
| 11 MCS11 |
| 12 MCS12 |
| 13 MCS13 |
| 14 MCS14 |
| 15 MCS15 |
| If <format> is 2 (VHT), |
| 0 MCS0 |
| 1 MCS1 |
| 2 MCS2 |
| 3 MCS3 |
| 4 MCS4 |
| 5 MCS5 |
| 6 MCS6 |
| 7 MCS7 |
| 8 MCS8 |
| 9 MCS9 |
| If <format> is 3 (HE), |
| 0 MCS0 |
| 1 MCS1 |
| 2 MCS2 |
| 3 MCS3 |
| 4 MCS4 |
| 5 MCS5 |
| 6 MCS6 |
| 7 MCS7 |
| 8 MCS8 |
| 9 MCS9 |
| 10 MCS10 |
| 11 MCS11 |
| [n] is <nss> |
| <nss> - This parameter specifies the NSS. It is valid for VHT |
| If <format> is 2 (VHT), |
| 1 NSS1 |
| 2 NSS2 |
| [n] is <nss> |
| <nss> - This parameter specifies the NSS. It is valid for HE |
| If <format> is 3 (HE), |
| 1 NSS1 |
| 2 NSS2 |
| [o] is <rate setting, only support 9098/9097/9xxx chips> |
| Bit0 - 1: indicate preambleType |
| For legacy 11b: preemble type |
| 00 = long |
| 01 = short |
| 10/11 = reserved |
| For legacy 11g: reserved |
| For 11n: Green field PPDU indicator |
| 00 = HT-mix |
| 01 = HT-GF |
| 10/11 = reserved. |
| For 11ac: reserved. |
| For 11ax: |
| 00 = HE-SU |
| 01 = HE-EXT-SU |
| others are reserved |
| |
| Bit 2 - 4 : indicate BW: |
| For HE ER: |
| 0 = 242-tone RU |
| 1 = upper frequency 106-tone RU within the primary 20 MHz |
| Otherwise: |
| 0 = 20 MHz |
| 1 = 40 MHz |
| 2 = 80 MHz |
| 3 = 160 MHz |
| |
| Bit 5 -6: indicate LTF + GI size |
| For HT: |
| 0 = normal |
| 1 = Short GI |
| For VHT: |
| 01 = Short GI |
| 11 = Short GI and Nsym mod 10=9 |
| 00 = otherwise |
| For HE: |
| 0 = 1xHELTF + GI0.8us |
| 1 = 2xHELTF + GI0.8us |
| 2 = 2xHELTF + GI1.6us |
| 3 = 4xHELTF + GI0.8us if DCM = 1 and STBC = 1 |
| 4xHELTF + GI3.2us, otherwise. |
| |
| Bit 7: Indicate STBC: |
| 0 = no STBC |
| 1 = STBC |
| |
| Bit 8: indicate DCM: |
| 0 = no DCM |
| 1 = DCM |
| |
| Bit 9: indicate coding: |
| 0 = BCC |
| 1 = LDPC |
| |
| Bit 10 - 11: reserved. |
| |
| Bit 12 - 13: Indicate maxPE |
| Max packet extension |
| 0 - 0 usec |
| 1 - 8 usec |
| 2 - 16 usec. |
| |
| Bit 14 - 15: reserved. |
| |
| 0xffff: Auto |
| |
| Examples: |
| mlanutl mlan0 txratecfg : Read the current data rate setting |
| mlanutl mlan0 txratecfg 0 3 : Set fixed Tx rate to 11 Mbps |
| mlanutl mlan0 txratecfg 0 11 : Set fixed Tx rate to 54 Mbps |
| mlanutl mlan0 txratecfg 1 3 : Set fixed Tx rate to MCS3 |
| mlanutl mlan0 txratecfg 2 3 2 : Set fixed Tx rate to MCS3 for NSS2 |
| mlanutl mlan0 txratecfg 3 3 2 : Set 11AX fixed Tx rate to MCS3 for NSS2 |
| 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 |
| STBC is 1, DMC is 0, Coding is 1, maxPE is 2. |
| mlanutl mlan0 txratecfg 0xff : Disable fixed rate and uses auto rate |
| |
| hssetpara |
| This command is used to set host sleep parameters. |
| |
| Usage: |
| 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] |
| |
| This command takes one (condition), two (condition and GPIO#) or three |
| (condition, GPIO# and gap).If more than three parameters, it can set different or multiple features indicating by type. |
| |
| 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 |
| (condition, GPIO#, gap, type, ind_GPIO# and level). |
| |
| If type=2, it will set extend host sleep wakup method. And the parameter format will be (condition, GPIO#, gap, type, force_ignore, |
| use_ext_gap, ext_gap [gpio_wave]). gpio_wave parameter is optional and default value is 0(falling edge). Each bit of |
| 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 |
| parameters is not allowed. Set bit(s) in event_force_ignore means the event(s) will be forced ignore in firmware silently. |
| Set bit(s) in event_use_ext_gap mean the event(s) will use extend gap to inform host. Not set means not handle. |
| |
| If type=3, it will set hs_wakeup_interval. |
| |
| If no parameter provided, get is performed. |
| |
| where Condition is: |
| bit 0 = 1 -- broadcast data |
| bit 1 = 1 -- unicast data |
| bit 2 = 1 -- mac event |
| bit 3 = 1 -- multicast data |
| bit 6 = 1 -- Wakeup when mgmt frame received. |
| Bit 31 = 1 -- Don't wakeup when IPV6 packet received. |
| |
| The host sleep mode will be canceled if condition is set to -1. The default is 0x7. |
| |
| where GPIO is the pin number of GPIO used to wakeup the host. It could be any valid |
| GPIO pin# (e.g. 0-7) or 0xff (interface, e.g. SDIO will be used instead). |
| The default is 0xff. |
| |
| where Gap is the gap in milliseconds between wakeup signal and wakeup event or 0xff |
| for special setting (host acknowledge required) when GPIO is used to wakeup host. |
| The default is 200. |
| |
| The host sleep set except for cancellation will be blocked if host sleep is |
| already activated. |
| |
| where ind_GPIO# is the pin number of GPIO used to indicate wakeup source. The level on |
| this GPIO will indicate normal wakeup source or abnormal wakeup source. |
| |
| where level is used to set level(0/1) on ind_GPIO# pin for indication normal wakeup source. |
| The opposite level will indicate abnormal wakeup source. The default value is 0. |
| |
| where event_force_ignore is a bitmap,each bit represent one wakeup reason event. Set the bit means this |
| wakeup reason should be force ignored in firmware. Reset the bit means do not handle this reason. |
| |
| where event_use_ext_gap is a bitmap, each bit represent one wakeup reason event. Set the bit means this |
| wakeup reason should use ext_gap to indicate host. Reset the bit means do not handle this reason. |
| |
| where event_force_ignore and event_use_ext_gap have the same wakeup reason event definition of each bit: |
| bit 0 = 1 --Disconnect |
| bit 1 = 1 --GTK/iGTK rekey failure |
| bit 2 = 1 --Eapol |
| other bits --Reserved |
| They should not set both for one same wakeup reason. |
| |
| where ext_gap is the extend gap based on third parameter Gap. Only valid when use_ext_gap is used. |
| The total gap is (Gap + (x+1)*ext_gap). x means the bit number(start from 0) of this reason in use_ext_gap. |
| |
| where gpio_wave is used to set GPIO wave level for host sleep extend. 0 means falling edge, 1 means rising edge. |
| This parameter is optional and default value is 0. |
| |
| where hs_wakeup_interval is used to set host sleep wakeup interval and the type must set to 3 to indicate |
| this feature. And the value will round to the nearest multiple dtim*beacon_interval in fw. The unit is milliseconds. |
| |
| where min_wake_holdoff is minimum delay between HsActive and HostWake and the type must set to 4 to indicate |
| this feature. The unit is milliseconds. |
| |
| Examples: |
| mlanutl mlan0 hssetpara -1 : Cancel host sleep mode |
| mlanutl mlan0 hssetpara 3 : Broadcast and unicast data |
| Use GPIO and gap set previously |
| mlanutl mlan0 hssetpara 2 3 : Unicast data |
| Use GPIO 3 and gap set previously |
| mlanutl mlan0 hssetpara 2 1 0xa0 : Unicast data |
| Use GPIO 1 and gap 160 ms |
| mlanutl mlan0 hssetpara 2 0xff : Unicast data |
| Use interface (e.g. SDIO) |
| Use gap set previously |
| mlanutl mlan0 hssetpara 4 3 0xff : MAC event |
| Use GPIO 3 |
| Special host sleep mode |
| mlanutl mlan0 hssetpara 1 0xff 0xff : Broadcast data |
| |
| mlanutl mlan0 hssetpara 2 1 0xa0 1 5 1 : Unicast data |
| Use GPIO 1 |
| Gap 160 ms |
| type=1 to set indication GPIO feature |
| Use GPIO 5 to indicate wakeup source |
| High level on GPIO 5 means this is a normal wakeup |
| mlanutl mlan0 hssetpara 2 1 0xa0 1 5 : Unicast data |
| Use GPIO 1 |
| Gap 160 ms |
| type=1 to set indication GPIO feature |
| Use GPIO 5 to indicate wakeup source |
| Use level set previously. |
| |
| mlanutl mlan0 hssetpara 2 1 0xa0 2 0 0x1 10 1: Unicast data |
| Use GPIO 1 |
| Gap 160 ms |
| type=2 to set extend host sleep feature |
| Force_ignore not used |
| Disconnect will use extend gap to indicate host |
| Use gap 170. |
| Rising edge |
| mlanutl mlan0 hssetpara 2 1 0xa0 2 0x1 0 0 0: Unicast data |
| Use GPIO 1 |
| Gap 160 ms |
| type=2 to set extend host sleep feature |
| Falling edge |
| Force ignore Disconnect |
| Extend gap not used |
| Not used. |
| Falling edge |
| mlanutl mlan0 hssetpara 2 1 0xa0 3 400: Unicast data |
| Use GPIO 1 |
| Gap 160 ms |
| type=3 to set hs_wakeup_interval feature |
| hs_wakeup_interval set to 400ms |
| |
| mlanutl mlan0 hssetpara 2 1 0xa0 4 800: Unicase data |
| Use GPIO 1 |
| Gap 160ms |
| type=4 to set min_wake_holdoff feature |
| min_wake_holdoff set to 800ms |
| |
| Note: The parameters will be saved in the driver and be used when host suspends. |
| The ind_GPIO# and level parameters only work with specific board and firmware. |
| mefcfg |
| This command is used to set MEF settings. |
| |
| Usage: |
| mlanutl mlanX mefcfg <mef.conf> |
| |
| Where the parameter is: |
| mef.conf : The configuration file specifying the MEF settings. |
| |
| Example: |
| mlanutl mlan0 mefcfg config/mef.conf |
| cloud_keep_alive |
| This command is used to start/stop send keep alive packet which set from host.And reset TCP connection. |
| |
| Usage: |
| mlanutl mlanX cloud_keep_alive <keep_alive.conf> <start/stop/reset> |
| |
| where <start/stop/reset> |
| 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. |
| |
| Examples: |
| mlanutl mlan0 cloud_keep_alive keep_alive.conf start |
| mlanutl mlan0 cloud_keep_alive keep_alive.conf stop |
| mlanutl mlan0 cloud_keep_alive keep_alive.conf reset |
| min_ba_threshold |
| This command is to set minimum Tx BA setup threshold |
| |
| Usage: |
| mlanutl mlanX min_ba_threshold <n> |
| |
| where the parameters are: |
| <n>: minimum BA Threshold :0-16 (default is 16) |
| Example: |
| mlanutl mlan0 min_ba_threshold : get min_ba_threshold value |
| mlanutl mlan0 min_ba_threshold 10 : set minimum BA threshold to 10 |
| |
| 11dcfg |
| This command is used to control 11D. No argument is used to get. |
| |
| where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 11dcfg 1 : Enable 11D |
| mlanutl mlan0 11dcfg : Get 11D status |
| |
| 11dclrtbl |
| This command is used to clear the 11D channel table. |
| |
| Usage: |
| mlanutl mlanX 11dclrtbl |
| |
| addts |
| Send an ADDTS command to the associated AP. |
| |
| Process a given conf file for a specific TSPEC data block. Send the |
| TSPEC along with any other IEs to the driver/firmware for transmission |
| in an ADDTS request to the associated AP. |
| |
| Return the execution status of the command as well as the ADDTS response |
| from the AP if any. |
| |
| Usage: |
| mlanutl mlanX addts <filename.conf> <section# of tspec> <timeout(ms)> |
| |
| amsduaggrctrl |
| This command could be used to enable/disable a feature where firmware gives feedback to driver |
| regarding the optimal AMSDU buffer size to use with the current rate. Firmware will use the |
| current rate to decide the buffer size we could transmit. The max buffer size will still be |
| limited by buffer size provided in txbufcfg. (i.e. if the txbufcfg is 4K, then we could only transmit |
| 4K/2K AMSDU packets, if the txbufcfg is 8K then we could transmit 8k/4k/2k based on current rate) |
| |
| If enabled AMSDU buffer size at various rates will be as follows |
| |
| 1. Legacy B/G rate. |
| No AMSDU aggregation. |
| |
| 2. BW20 HT Rate: |
| When TX rate goes down, |
| MCS 7, 6, 5, 4: |
| a 8K aggregation size (if TX buffer size is 8K) |
| b 4K aggregation size (if TX buffer size is 4K) |
| c 2K aggregation size (if TX buffer size is 2K) |
| |
| MCS 3, 2: |
| a 4K aggregation size (if TX buffer size is 8K/4K) |
| b 2K aggregation size (if TX buffer size is 2K) |
| |
| MCS 1, 0: |
| a No aggregation |
| |
| When TX rate goes up, |
| MCS 7, 6, 5: |
| a 8K aggregation size (if TX buffer size is 8K) |
| b 4K aggregation size (if TX buffer size is 4K) |
| c 2K aggregation size (if TX buffer size is 2K) |
| |
| MCS 4, 3: |
| a 4K aggregation size (if TX buffer size is 8K/4K) |
| b 2K aggregation size (if TX buffer size is 2K) |
| |
| MCS 2, 1, 0: |
| a No aggregation |
| |
| 3. BW40 HT Rate: |
| When TX rate goes down, |
| MCS 7, 6, 5, 4, 3, 2, 1: |
| a 8K aggregation size (if TX buffer size is 8K) |
| b 4K aggregation size (if TX buffer size is 4K) |
| c 2K aggregation size (if TX buffer size is 2K) |
| |
| MCS 0: |
| a No aggregation |
| |
| When TX rate goes up, |
| MCS 7, 6, 5, 4, 3: |
| a 8K aggregation size (if TX buffer size is 8K) |
| b 4K aggregation size (if TX buffer size is 4K) |
| c 2K aggregation size (if TX buffer size is 2K) |
| |
| MCS 2, 1, 0: |
| a No aggregation |
| |
| where <n> is 0/1 (for disable/enable) |
| |
| eg: |
| mlanutl mlan0 amsduaggrctrl 1 - Enable this feature |
| mlanutl mlan0 amsduaggrctrl 0 - Disable this feature |
| mlanutl mlan0 amsduaggrctrl - This will get the enable/disable flag |
| and the current AMSDU buffer size). The AMSDU buffer size returned is only |
| valid after association as before association there is no rate info. |
| |
| Note:- This command to enable/disable could be given anytime (before/after |
| association). This feature is enabled by default by the driver during |
| initialization. |
| |
| antcfg |
| This command is used to set/get the mode of Tx/Rx path. |
| |
| For chip which support STREAM_2X2 |
| where value of m is: |
| Bit 0 -- Tx Path A or Tx/Rx Path A if [n] is not provided |
| Bit 1 -- Tx Path B or Tx/Rx Path B if [n] is not provided |
| Bit 0-1 -- Tx Path A+B or Tx/Rx Path A+B if [n] is not provided |
| For 9097/9098/NW62X, LOW BYTE for 2G setting |
| Bit 8 -- Tx Path A or Tx/Rx Path A if [n] is not provided |
| Bit 9 -- Tx Path B or Tx/Rx Path B if [n] is not provided |
| Bit 8-9 -- Tx Path A+B or Tx/Rx Path A+B if [n] is not provided |
| For 9097/9098/NW62X, HIGH BYTE for 5G setting |
| where value of n is: |
| Bit 0 -- Rx Path A |
| Bit 1 -- Rx Path B |
| Bit 0-1 -- Rx Path A+B |
| For 9097/9098/NW62X, LOW BYTE for 2G setting |
| Bit 8 -- Rx Path A |
| Bit 8 -- Rx Path B |
| Bit 8-9 -- Rx Path A+B |
| For 9097/9098/NW62X, HIGH BYTE for 5G setting |
| The Tx path setting (m) is used for both Tx and Rx if Rx path (n) is not provided. |
| |
| Examples: |
| mlanutl mlan0 antcfg : Get Tx and Rx path |
| mlanutl mlan0 antcfg 3 : Set Tx and Rx path to A+B |
| mlanutl mlan0 antcfg 1 3 : Set Tx path to A and Rx path to A+B |
| mlanutl mlan0 antcfg 0x103 : Set Tx and Rx path to A+B on 2G and Tx and Rx path to A on 5G |
| 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 |
| |
| mlanutl mlan0 antcfg 0x202 : Use 5GHz path B pin for 5G TX/RX and 2GHz path B pin for 2G TX/RX |
| mlanutl mmlan0 antcfg 0x202 : Use 5GHz path B pin for 5G TX/RX and 2GHz path B pin for 2G TX/RX |
| |
| On RD board connection is as follows : |
| 5GHz path A pin -> AntA |
| 5GHz path B pin -> AntB |
| 2GHz path A pin -> AntB |
| 2GHz path B pin -> AntA |
| |
| For chip which support SAD |
| where value of m is: |
| Bit 0 -- Tx/Rx antenna 1 |
| Bit 1 -- Tx/Rx antenna 2 |
| ... |
| 0xFFFF -- Tx/Rx antenna diversity |
| |
| where value of n is: |
| SAD evaluate time interval, only be provided when m = 0xFFFF, default value is 6s(0x1770) |
| |
| Examples: |
| mlanutl mlan0 antcfg : Get Tx/Rx antenna mode |
| mlanutl mlan0 antcfg 1 : Set Tx/Rx antenna 1 |
| mlanutl mlan0 antcfg 0xFFFF : Set Tx/Rx antenna diversity |
| mlanutl mlan0 antcfg 0xFFFF 0x1770 : Set antenna evaluate time interval to 6s |
| mimoswitch |
| This command is used to do MIMO switch for 11n and 11ac mode and is available for all interfaces. |
| mlanutl mlanX/uapX mimoswitch [tx_antmode] [rx_antmode] |
| |
| This command takes 2 conditions. |
| The supported options are: |
| tx_antmode: 1 - ANTENNA A |
| 2 - ANTENNA B |
| 3 - ANTENNA AB |
| rx_antmode: 1 - ANTENNA A |
| 2 - ANTENNA B |
| 3 - ANTENNA AB |
| Examples: |
| mlanutl mlan0/uap0 mimoswitch 1 1 : set Tx and Rx path to ANTENNA A |
| mlanutl mlna0/uap0 mimoswitch 2 2 : set Tx and Rx path to ANTENNA B |
| mlanutl mlan0/uap0 mimoswitch 3 3 : set Tx and Rx path to ANTENNA A+B |
| mlnautl mlan0/uap0 mimoswitch 1 3 : set Tx path to ANTENNA A and Rx path to ANTENNA A+B |
| |
| arpfilter |
| This command is used to configure the ARP filtering parameters. |
| |
| Usage: |
| mlanutl mlanX arpfilter <arpfilter.conf> |
| |
| Where the parameter is: |
| arpfilter.conf : The configuration file specifying ARP filtering parameters. |
| |
| Example: |
| mlanutl mlan0 arpfilter config/arpfilter.conf |
| |
| assocctrl |
| This command is used to set/get the driver auto assoc, driver auto re-connect |
| and FW auto re-connect configurations. |
| |
| Usage: |
| mlanutl mlanX assocctrl <j> [k] [l] [m] [n] |
| |
| Where the parameters are: |
| <j>: type : 1/2/3 driver auto assoc/driver auto re-connect/FW auto re-connect |
| auto assoc takes effect in new connection (e.g. iwconfig essid), |
| driver will auto retry if association failed; |
| auto re-connect takes effect when link lost, driver/FW will try |
| to connect to the same AP |
| [k]: enable : 1/0 on/off |
| [l]: retry count : 0x1-0xff The value 0xff means retry forever (default 0xff) |
| [m]: interval : 0x0-0xff Time gap in seconds (default 10) |
| [n]: flag : Bit 0: |
| Set to 1: Firmware should report link-loss to host if AP rejects |
| authentication/association while reconnecting |
| Set to 0: Default behavior: Firmware does not report link-loss |
| to host on AP rejection and continues internally |
| Bit 1-15: Reserved |
| The parameter flag is only used for FW auto re-connect |
| |
| Examples: |
| mlanutl mlan0 assocctrl 1 : Get driver auto assoc settings |
| mlanutl mlan0 assocctrl 2 : Get driver auto re-connect settings |
| mlanutl mlan0 assocctrl 3 : Get FW auto re-connect settings |
| mlanutl mlan0 assocctrl 1 1 20 8 : Enable and set driver auto assoc |
| mlanutl mlan0 assocctrl 2 1 30 10 : Enable and set driver auto re-connect |
| mlanutl mlan0 assocctrl 3 1 10 10 1 : Enable and set FW auto re-connect |
| mlanutl mlan0 assocctrl 1 0 : Disable driver auto assoc |
| mlanutl mlan0 assocctrl 2 0 : Disable driver auto re-connect |
| mlanutl mlan0 assocctrl 3 0 : Disable FW auto re-connect |
| |
| assocessid |
| This command is used to assoc essid with asynced mode, |
| and driver will auto retry if driver auto assoc enabled. |
| |
| Usage: |
| mlanutl mlanX assocessid <"[essid]"> |
| |
| Where |
| <"[essid]"> is the essid which need to be associated with asynced mode. |
| |
| Examples: |
| mlanutl mlan0 assocessid "NXP Micro AP" : Associate to the ESSID "NXP Micro AP" |
| |
| assocessid_bssid |
| This command is used to assoc AP by ssid/bssid pair with asynced mode, |
| and driver will auto retry if driver auto assoc enabled. |
| |
| Usage: |
| mlanutl mlanX assocessid_bssid <"[bssid] [essid]"> |
| |
| Where |
| <"[bssid]"> is the bssid which need to be associated with asynced mode. |
| <"[essid]"> is the essid which need to be associated with asynced mode. |
| |
| Examples: |
| 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" |
| |
| associate |
| Request an association to a given SSID/BSSID pair. This the only accurate |
| way to pick a specific AP and ESS for an association. The entry must |
| already exist in the scan table for the association to be attempted. |
| |
| mlanutl mlanX associate "xx:xx:xx:xx:xx:xx SSID" |
| |
| get_chnrgpwr |
| This command is used to get the txpwrlimit table in FW |
| Usage: |
| mlanutl mlanX get_chnrgpwr [save_region_channel_power_data_file] |
| <save_region_channel_power_data_file> driver will save fw raw data to this file. |
| |
| Examples: |
| mlanutl mlan0 get_chnrgpwr fw_region_pwr.bin : Get region channel power table and save to file fw_region_pwr.bin |
| |
| comparergpwr |
| This command is used to compare two regionpower tables and output differences. |
| |
| Usage : |
| mlanutl mlanX comparergpwr <uncompressed file> [target_file] |
| where: |
| <target_file> : raw data file save from get_chnrgpwr command. |
| <uncompressed file> : uncompressed raw data file generated by powerutil from the excel input region power file |
| |
| Example : |
| mlanutl mlan0 comparergpwr uncompressed.bin fw_region_pwr.bin : Show power table comparison in text format |
| mlanutl mlan0 comparergpwr uncompressed.bin : Show power table of uncompressed file in text format |
| comparetrpc |
| This command is used to compare two txpower tables and output differences. |
| |
| Usage : |
| mlanutl mlanX comparetrpc <target_file> <src_file> [display] |
| where: |
| <target_file> : raw data file save from get_txpwrlimit command. |
| <src_file> : raw data file used by driver load parameter "txpwrlimit_cfg" which will be download to FW during driver init. |
| <display> : display comparison output |
| : 1 - text format |
| : 2 - table format |
| |
| Example : |
| mlanutl mlan0 comparetrpc txpwrlimit.bin txpwrlimit_init.bin 1 : Show power table comparison in text format |
| mlanutl mlan0 comparetrpc txpwrlimit.bin txpwrlimit_init.bin 2 : Show power table comparison in table format |
| getcfgchanlist |
| This command is used to get the channel list used by cfg80211 stack |
| |
| Example: |
| mlanutl mlan0 getcfgchanlist |
| |
| |
| authtype |
| This command is used to set/get authentication type. |
| |
| Usage: |
| mlanutl mlanX authtype [n] |
| |
| where <n> |
| 0: 802.11 open system authentication |
| 1: 802.11 shared key authentication |
| 3: 802.11 WPA3 SAE authentication |
| 4: 802.11 OWE authentication |
| 255: allow open system or shared key authentication (default) |
| |
| Examples: |
| mlanutl mlan0 authtype 0 : use open system authentication |
| mlanutl mlan0 authtype 1 : use shared key authentication |
| mlanutl mlan0 authtype 255 : allow WEP open system or shared key authentication, embedded supplicant WPA2/WPA3 roaming |
| mlanutl mlan0 authtype : get current setting |
| |
| autotdls |
| This command is used to enable/disable auto TDLS. |
| |
| Usage: |
| mlanutl mlanX autotdls [n] |
| |
| where <n> |
| 0: Disable auto tdls |
| 1: Enable auto tdls |
| |
| Examples: |
| mlanutl mlan0 autotdls 1 : enable auto TDLS |
| mlanutl mlan0 autotdls 0 : disable auto TDLS |
| mlanutl mlan0 autotdls : get current setting |
| |
| tdls_idle_time |
| 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). |
| |
| Usage: |
| mlanutl mlanX tdls_idle_time [n] |
| |
| where <n> |
| TDLS idle timeout value |
| |
| Examples: |
| mlanutl mlan0 tdls_idle_time 30 : set tdls_idle_time value to 30 |
| mlanutl mlan0 tdls_idle_time 0 : use default tdls_idle_time value(60) |
| mlanutl mlan0 tdls_idle_time : get current setting |
| |
| dfs_offload |
| This command is used to enable/disable DFS offload. The valid value is 0/1. |
| Note: The parameters can be set only in disconnected state. |
| |
| Usage: |
| mlanutl uapX dfs_offload [n] |
| |
| where <n> |
| Enable/disable |
| |
| Examples: |
| mlanutl uap0 dfs_offload 1 : enable DFS offload |
| mlanutl uap0 dfs_offload 0 : disable DFS offload |
| |
| bandcfg |
| This command is used to set/get infra/ad-hoc band. |
| Note: This command is only available in disconnected state. |
| |
| Usage: |
| mlanutl mlanX bandcfg [l] [m] [n] |
| |
| where the parameters: |
| [l]: Infrastructure band |
| bit 0: B |
| bit 1: G |
| bit 2: A |
| bit 3: GN |
| bit 4: AN |
| |
| bit 5: AC 2.4G |
| bit 6: AC 5G |
| bit 8: AX 2.4G |
| bit 9: AX 5G |
| [m]: Ad-hoc start band |
| bit 0: B |
| bit 1: G |
| bit 2: A |
| [n]: Ad-hoc start channel |
| Examples: |
| mlanutl mlan0 bandcfg : Get infra/ad-hoc band and ad-hoc |
| start channel configurations |
| mlanutl mlan0 bandcfg 1 : Set infra band to B only |
| mlanutl mlan0 bandcfg 3 2 6 : Set infra band to B/G, ad-hoc start band |
| to G and ad-hoc start channel to 6 |
| |
| bcninterval |
| This command is used to set/get the beacon interval in ad-hoc mode. |
| The valid beacon interval is between 20 - 1000, default beacon |
| interval is 100. |
| |
| Where <n> |
| Beacon interval in TU (Time Unit: 1024 us). |
| |
| Examples: |
| mlanutl mlan0 bcninterval 200 : Set ad-hoc beacon interval to 200 |
| mlanutl mlan0 bcninterval : Get ad-hoc beacon interval |
| |
| bssrole |
| This command is used to set/get the BSS role. |
| |
| Where |
| [l] is <bss_role> |
| <bss_role> - This parameter specifies the BSS role to set. |
| 0 : STA |
| 1 : uAP |
| |
| Examples: |
| mlanutl wfd0 bssrole : Get the current BSS role |
| mlanutl wfd0 bssrole 1 : Set the current BSS role to uAP |
| |
| cfgdata |
| This command is used to set/get the configuration data to/from firmware. |
| |
| Usage: |
| mlanutl mlanX cfgdata <type> [<.conf file name>] |
| |
| Where the parameters are: |
| type : |
| 2 -- CAL data download and <.conf file name> is cal_data.conf |
| .conf file name : The configuration file used to set/get the configuration data. |
| |
| Examples: |
| mlanutl mlan0 cfgdata 2 |
| : This command is used to get and display the CAL data from firmware. |
| |
| cfpcode |
| This command is used to set/get the Channel-Frequency-Power table codes. |
| The region table can be selected through region code. |
| The current configuration is returned if no parameter provided. |
| |
| where the parameters are, |
| [m]: code of the CFP table for 2.4GHz (0: unchanged) |
| [n]: code of the CFP table for 5GHz (0 or not provided: unchanged) |
| |
| Examples: |
| mlanutl mlan0 cfpcode : Get current configuration |
| mlanutl mlan0 cfpcode 0x30 : Set 2.4GHz CFP table code 0x30 (EU), |
| keep 5GHz table unchanged |
| mlanutl mlan0 cfpcode 0x10 5 : Set 2.4GHz CFP table code 0x10 (USA) |
| and 5GHz table code 5 |
| |
| changraph |
| Displays 2-dimensional graph, plotting channel number along x-axis and |
| anpi or channel-load along y-axis, depending on whether it is an anpi graph |
| or a channel load graph. |
| |
| Usage: |
| mlanutl mlanX changraph [<load | anpi | anpiload> <loops>] |
| where: |
| load: Only channel vs channel-load graph is displayed |
| anpi: Only channel vs Average Noise Power Indicator(ANPI) |
| graph is displayed |
| anpiload: Both the graphs for anpi and for the load are displayed |
| loops: This is used to calculate the number of times |
| the graph [load or anpi or both] will be printed |
| |
| coex_rx_winsize |
| This command is used to set/get control to coex RX window size |
| |
| where value of m is: |
| 0 -- Disable COEX RX winsize (default) |
| 1 -- Enable COEX RX winsize |
| |
| Examples: |
| mlanutl mlan0 coex_rx_winsize : Get COEX RX winsize |
| mlanutl mlan0 coex_rx_winsize 1 : Enable COEX RX winsize |
| |
| countrycode |
| This command is used to set and get the country code. |
| |
| Where |
| [l] is Country code |
| |
| Examples: |
| mlanutl mlan0 countrycode : Get current countrycode |
| mlanutl mlan0 countrycode CN : Set countrycode as China (CN) |
| |
| cfpinfo |
| This command is used to get region, country, environment codes, |
| channel and power table information from the FW. |
| |
| Examples: |
| mlanutl mlan0 cfpinfo : Display cfp tables |
| mlanutl uap0 cfpinfo |
| |
| customie |
| This command is used to set or get custom IEs for management frames. |
| |
| Usage: |
| mlanutl mlanX customie [[[<index>] <mask>] <IEBuffer>] |
| |
| Where the parameter is: |
| empty - Get all IE settings |
| <index> : 0 - Get/Set IE index 0 setting |
| 1 - Get/Set IE index 1 setting |
| 2 - Get/Set IE index 2 setting |
| MAX IE Index depends on device memory. |
| -1 - Append/Delete IE automatically |
| Delete will delete the IE from the matching IE buffer |
| Append will append the IE to the buffer with the same mask |
| <mask> : Management subtype mask value as per bit definitions |
| : Bit 0 - Association request |
| : Bit 1 - Association response |
| : Bit 2 - Reassociation request |
| : Bit 3 - Reassociation response |
| : Bit 4 - Probe request |
| : Bit 5 - Probe response |
| : Bit 8 - Beacon |
| <mask> : mask = 0 to clear the mask and the IE buffer |
| <IEBuffer> : IE Buffer in hex (max 256 bytes) |
| The Buffer should not be space separated. |
| |
| Examples: |
| mlanutl mlan0 customie |
| : Get IE buffer, subtype mask settings for all indices. |
| |
| mlanutl mlan0 customie 1 |
| : Get IE buffer and subtype mask for the Index = 1. |
| |
| mlanutl mlan0 customie 2 0 |
| : Clear IE buffer and mask value for Index = 2. |
| |
| mlanutl mlan0 customie 3 0x101 0xdd051234567890 |
| : Set IE buffer and mask value for Index = 3. |
| |
| mlanutl mlan0 customie -1 0x101 0xdd051234567890 |
| : Append the specified IEBuffer at index with mask value of 0x101. |
| |
| mlanutl mlan0 customie -1 0 0xdd051234567890 |
| : Delete the specified IEBuffer from all the IEs. |
| |
| mlanutl mlan0 customie 2 0 0xdd051234567890 |
| : Delete the specified IEBuffer from the IEs at index 2. |
| |
| deauth |
| This command is used to send a de-authentication to an arbitrary AP. |
| If [l] is omitted, the driver will deauth the associated AP. |
| If in ad-hoc mode this command is used to stop beacon transmission |
| from the station and go into idle state. |
| |
| When <l> is supplied as a MAC address, the driver will deauth the |
| specified AP. If the AP address matches the driver's associated AP, |
| the driver will disconnect. Otherwise, the driver remains connected. |
| |
| When this command is executed on AP interface, it is used to send |
| a de-authentication to associated station. |
| |
| deepsleep |
| This command is used to set/get auto deep sleep mode. |
| |
| Usage: |
| mlanutl mlanX deepsleep [l] [m] |
| |
| where the parameters are: |
| [l]: Enable/disable auto deep sleep mode (1/0) |
| [m]: Idle time in milliseconds after which firmware will put the device |
| in deep sleep mode. Default value is 100 ms. |
| |
| Examples: |
| mlanutl mlan0 deepsleep : Display auto deep sleep mode |
| mlanutl mlan0 deepsleep 1 : Enable auto deep sleep mode, idle time unchanged |
| mlanutl mlan0 deepsleep 0 : Disable auto deep sleep mode |
| mlanutl mlan0 deepsleep 1 500 : Enable auto deep sleep mode with idle time 500 ms |
| Note: |
| Deepsleep must be disabled before changing idle time. |
| |
| delba |
| This command is used to delete either all Tx BA or all Rx BA or a specific BA stream |
| based on direction, TID and peer address. |
| |
| where <l> [<m> <n>] |
| <l> - This is the direction of BA stream, Tx (bit 0), Rx (bit 1). |
| <m> - This is the TID (0-7, 0xff for all) of BA stream. |
| <n> - This is the peer MAC addres of BA stream. |
| |
| eg: |
| mlanutl mlanX delba 2 - This command will delete all the Rx BA streams. |
| mlanutl mlanX delba 3 - This command will delete all the Tx and Rx BA streams. |
| mlanutl mlanX delba 1 0 - This command will delete all the Tx streams with TID 0. |
| mlanutl mlanX delba 2 0xff "00:11:22:33:44:55" - This command will delete all the Rx BA streams |
| with specified peer MAC address |
| mlanutl mlanX delba 1 3 "00:11:22:33:44:55" - This command will delete the Tx BA stream with |
| TID 3 and specified peer MAC address. |
| |
| delts |
| Send a DELTS command to the associated AP. |
| |
| Process a given conf file for a specific TSPEC data block. Send the |
| TSPEC along with any other IEs to the driver/firmware for transmission |
| in a DELTS request to the associated AP. |
| |
| Return the execution status of the command. There is no response to a |
| DELTS from the AP. |
| |
| Usage: |
| mlanutl mlanX delts <filename.conf> <section# of tspec> |
| |
| dfstesting |
| This command is used to set/get settings for DFS testing. |
| |
| Usage: |
| mlanutl mlanX dfstesting [<user_cac_pd> <user_nop_pd> <no_chan_change> <fixed_chan_num><cac_restart>] |
| |
| where <user_cac_pd> is user-configured Channel Availability Check in sec |
| 0 = disable, use default period (60 seconds) |
| 1-1800 = enable with that period |
| where <user_nop_pd> is user-configured Non-Occupancy Period in sec |
| 0 = disable, use default period (1800) |
| 1-65535 = enable with that period |
| where <no_chan_change> is enable/disable no channel change on radar |
| 0 = disable, 1 = enable (overrides below) |
| where <fixed_chan_num> is user-configured channel to change to on radar |
| 0 = disable, 1-255 = enable with that channel |
| (channel validity for region, etc. is not checked) |
| (only takes effect if no_chan_change = 0) |
| where <cac_restart> after CAC success, driver auto restart CAC again |
| |
| Examples: |
| mlanutl mlan0 dfstesting : Get current dfstesting settings |
| mlanutl mlan0 dfstesting 60 0 0 0 0 : user_cac=60sec, others disabled/default |
| mlanutl mlan0 dfstesting 0 0 1 0 0 : only no_chan_change enabled |
| mlanutl mlan0 dfstesting 0 120 0 64 0 : user_nop=2min, force chan 64 on radar |
| mlanutl mlan0 dfstesting 60 0 0 0 1 : user_cac=60sec, restart cac after success |
| |
| clear_nop |
| This command clear NOP status |
| Usage: |
| mlanutl uapX clear_nop |
| |
| Examples: |
| mlanutl uap0 clear_nop : clear channel NOP status |
| |
| nop_list |
| This command get NOP channel list |
| Usage: |
| mlanutl uapX nop_list |
| |
| Examples: |
| mlanutl uap0 nop_list : get nop channel list |
| |
| fake_radar |
| This command was the DFS test command to trigger fake radar event. |
| Usage: |
| mlanutl uapX fake_radar |
| |
| Examples: |
| mlanutl uap0 fake_radar : trigger fake rader event |
| |
| getchload |
| This command gets the current channel load (in %), noise floor value (in dbm) and rx_quality (in %, higher % indicates better rx quality) |
| This command also sets cca threhold value when provided and enables OFDM desense (Only for IW416) |
| Usage: |
| mlanutl uapX getchload <duration> [<cca_threshold>] |
| <duration> can be within 1-10(specifying 10ms to 100ms), default duration will be 100ms |
| [<cca_threshold>] can be within 1 to 120 and also sets OFDM desense (Only for IW416) |
| |
| Examples: |
| mlanutl uap0 getchload : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 100ms duration |
| mlanutl uap0 getchload 1 : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 10ms duration |
| mlanutl uap0 getchload 6 : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 60ms duration |
| mlanutl uap0 getchload 4 70 : gets channel load (in %), noise floor (in dbm) and rx_quality (in %) for 40ms duration |
| and sets cca threshold as -70dBm setting OFDM desense (Only for IW416) |
| |
| dfs_repeater |
| This command is used to get/set DFS Repeater mode. |
| |
| Usage: |
| mlanutl mlan0 dfs_repeater <n> |
| |
| where the parameter is <n> : |
| null: to get current setting |
| 1: to enable dfs_repeater mode |
| 0: to disable dfs_repeater mode |
| |
| eg., |
| mlanutl mlan0 dfs_repeater :get current setting |
| mlanutl mlan0 dfs_repeater 1 :enable dfs repeater mode |
| mlanutl mlan0 dfs_repeater 0 :disable dfs repeater mode |
| |
| dfs_cac |
| This command is used to perform radar monitoring on a given channel using dfsX interface |
| |
| Usage: |
| mlanutl dfs0 dfs_cac <channel> [<bw> <cac-period>] |
| |
| where the parameters are: |
| <channel> 5G DFS channel to monitor for radar, when channel=0, stop CAC. |
| <bw> channel band-width (default 20MHZ) |
| 0 - Bandwidth 20MHz |
| 1 - Bandwidth 40MHz above |
| 3 - Bandwidth 40MHz below |
| 4 - Bandwidth 80MHz |
| <cac-period> seconds, default value 60 seconds. |
| after cac-period, driver will report channel report event and continue monitor the radar signal on this channel. |
| |
| Examples: |
| mlanutl dfs0 dfs_cac 52 1 :do CAC on channel 52, 40MHz above, default cac-duration of 60sec : |
| mlanutl dfs0 dfs_cac 52 1 120 :do CAC on channel 52, 40MHz above, default cac-duration of 120sec |
| mlanutl dfs0 dfs_cac 0 :stop CAC |
| autodfs |
| This command is used to start/stop auto zero DFS |
| |
| Usage: |
| mlanutl dfs0 autodfs 0 |
| mlanutl dfs0 autodfs 1 [conf_file] |
| Examples: |
| mlanutl dfs0 autodfs 0 : stop Auto Zero DFS |
| mlanutl dfs0 autodfs 1 config/autodfs.conf : start Auto Zero DFS |
| |
| dfs53cfg |
| This command is used to set/get settings for DFS W53 configuration for JP-DFS. |
| |
| Usage: |
| mlanutl mlanX dfs53cfg [n] |
| |
| where the parameters are: |
| <n> user-configured value for DFS W53 configuration for JP-DFS |
| 0 - Fw default value |
| 1 - New W53 Rules/Standars |
| 2 - New W53 Rules/Standars |
| Examples: |
| mlanutl uap0 dfs53cfg : get dfs w53 configuration |
| mlanutl uap0 dfs53cfg 1 : set dfs w53 configuration to New W53 Rules/Standards |
| |
| dfs_mode |
| This command is used to set/get dfs_mode used in driver. |
| |
| Usage: |
| mlanutl mlanX dfs_mode [n] |
| |
| where the parameters are: |
| <n> user-configured value for DFS mode in driver |
| 0 - driver default DFS mode |
| 1 - driver disable DFS master when AP and STA operate in same DFS channel |
| |
| Examples: |
| mlanutl uap0 dfs_mode : get DFS mode configuration |
| mlanutl uap0 dfs_mode 1 : set DFS mode to 1 |
| mlanutl uap0 dfs_mode 0 : set DFS mode to 0 |
| |
| esuppmode |
| This command is used to set/get the e-supplicant mode configurations/status. |
| |
| Note: The configurations can be set only before association. |
| For get, the configurations will be returned before association |
| and the current status will be returned after association. |
| |
| Where |
| [l] is <rsn_mode> |
| <rsn_mode> - This parameter specifies the RSN mode configuration |
| Bit 0 : No RSN |
| Bit 1-2 : RFU |
| Bit 3 : WPA // use of WPA/TKIP is not recommended anymore |
| Bit 4 : WPA-NONE |
| Bit 5 : WPA2 |
| Bit 6-15 : RFU |
| [m] is <pairwise_cipher> |
| <pairwise_cipher> - This parameter specifies the pairwise cipher |
| Bit 0 : RFU |
| Bit 1 : RFU |
| Bit 2 : TKIP //use of WEP/TKIP is not recommended anymore |
| Bit 3 : AES |
| Bit 4-7 : RFU |
| [n] is <group_cipher> |
| <group_cipher> - This parameter specifies the group cipher |
| Bit 0 : RFU |
| Bit 1 : RFU |
| Bit 2 : TKIP //use of WEP/TKIP is not recommended anymore |
| Bit 3 : AES |
| Bit 4-7 : RFU |
| Note that: the RFU bits cannot be SET. |
| |
| Examples: |
| mlanutl mlan0 esuppmode : Get RSN mode and pairwise/group cipher |
| mlanutl mlan0 esuppmode 8 4 4 : Set RSN mode yo WPA, active pairwise and // use of WPA/TKIP is not recommended anymore |
| group ciphers to TKIP //use of WEP/TKIP is not recommended anymore |
| |
| extcapcfg |
| This command is used to set/get extended capabilities. |
| |
| Usage: |
| mlanutl mlanX extcapcfg [<ext_cap>] |
| |
| where <ext_cap> : Extended capabilities in hex (max 9 bytes) |
| The Buffer should not be space separated. |
| |
| Examples: |
| mlanutl mlan0 extcapcfg 0x0000008020 : Set TDLS support and Interworking bits. |
| |
| fwmacaddr |
| This command is used to set/get FW side MAC address but host side address will remain as earlier. |
| |
| Usage: |
| mlanutl mlanX fwmacaddr [mac_addr] |
| |
| where <mac_addr> is desired MAC address |
| |
| Examples: |
| mlanutl mlan0 fwmacaddr : Get current FW MAC address |
| mlanutl mlan0 fwmacaddr 00:50:43:20:bc:44 : Set FW side MAC address |
| |
| getkey |
| This command is used to get PTK/GTK |
| mlanutl mlanX getkey |
| |
| per_pkt_cfg |
| -------------- |
| mlanutl <interface> per_pkt_cfg [tx_rx_control] [type_num] [ether_type1 ether_type2...] [tx_rx_control] [type_num] [ether_type1 ether_type2 ...] |
| This command is used to set tx/rx per packet Txctl and Rxinfo configuration. |
| |
| The supported options are: |
| tx_rx_control : |
| 0 - disable Tx and Rx per packet control |
| 1 - enable Tx per packet control |
| 2 - enable Rx Per packet control |
| 3 - enable Tx and Rx Per packet control |
| |
| type_num : Number of ether_types which support per packet control, the Max is 8. |
| ether_type : Array of ether_types for which need to do per-packet Tx control or get per-packet Rx info. |
| |
| Examples: |
| mlanutl mlan0/uap0 per_pkt_cfg : get the configuration of per-packet control |
| mlanutl mlan0/uap0 per_pkt_cfg 0 : disable per-packet control |
| mlanutl mlan0/uap0 per_pkt_cfg 3 1 0x88dc : set the Tx and Rx per-packet control configuration |
| |
| dot11_txrx |
| This command is used to send or receive packets. |
| |
| Usage: |
| mlanutl <interface> dot11_txrx <send/recv> <options> |
| interface : mlanX or uapX |
| options send : <conf_file> |
| conf_file : config file name |
| options recv : <protocol> [ verbose_mode ] |
| protocol : packet protocol type |
| verbose_mode : v -- enter verbose mode |
| |
| Example: |
| mlanutl mlan0 dot11_txrx send config/tx_ctrl.conf : To send packets |
| mlanutl mlan0 dot11_txrx recv 0x88dc : To receive packets of type 0x88dc |
| mlanutl mlan0 dot11_txrx recv 0x88dc v : To receive packets of type 0x88dc and |
| enter verbose mode |
| |
| txrxhistogram |
| -------------- |
| mlanutl mlanX/uapX txrxhistogram [action] [tx_rx_statics] |
| This command is used to get tx/rx statics from firmware. |
| |
| This command takes 2 conditions. |
| The supported options are: |
| action : 0 - disable Tx/Rx statics |
| 1 - enable Tx/Rx statics |
| 2 - get Tx/Rx statics |
| tx_rx_statics: 1 - enable/disable/get Tx statics |
| 2 - enable/disable/get Rx statics |
| 3 - enable/disable/get Tx and Rx statics |
| Examples: |
| mlanutl mlan0/uap0 txrxhistogram 1 3 : enable Tx and Rx statics |
| mlanutl mlna0/uap0 txrxhistogram 0 3 : disable Tx and Rx statics |
| mlanutl mlan0/uap0 txrxhistogram 2 2 : Get only Rx statics |
| mlnautl mlan0/uap0 txrxhistogram 2 1 : Get only Tx statics |
| mlnautl mlan0/uap0 txrxhistogram 2 3 : Get both Tx/Rx statics |
| |
| getscantable |
| Display the current contents of the driver scan table |
| |
| Usage: |
| mlanutl mlanX getscantable |
| mlanutl mlanX getscantable [#] |
| mlanutl mlanX getscantable tsf |
| mlanutl mlanX getscantable ch |
| mlanutl mlanX getscantable help |
| |
| 1) Without argument, the entire scantable is displayed in terms of channel (ch), signal strength (ss), BSS id (bssid), capability (cap), and SSID, |
| where each column in the capability is described as follows: |
| column 1 indicates the IBSS capability: A (Adhoc), I (Infra) |
| 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) |
| column 3 indicates the 11D capability: D (11D) |
| column 4 indicates the WMM capability: W (WMM), C (CAC) |
| column 5 indicates the 11K capability: K (11K) |
| column 6 indicates the 11R capability: R (11R) |
| column 7 indicates the WPS capability: S (WPS) |
| column 8 indicates the 11N/11AC capability: N (11N), A (11AC) |
| |
| 2) Specifying a # will display detailed information about a specific scan |
| table entry. '0' displays driver cached information regarding the |
| current association (if any). |
| 3) The tsf argument will display the entire scan table with the recorded |
| TSF timestamp for the entry. |
| 4) The ch argument will display the entire scan table sorted by channel |
| number in the ascending order. If this argument is not specified, |
| scan table is sorted by signal strength in the descending order. |
| 6) The help argument will display the legend for the capability field. |
| |
| getstalist |
| This command is used to get list of associated stations to the AP. |
| |
| Example: |
| mlanutl uap0 getstalist |
| |
| channel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth/num_pkts> |
| channel_switch <switch mode> <oper class> <new channel> <switch count> <bandwidth> |
| This command is used to do channel switch according to spec. |
| |
| Where the paramters are: |
| switch mode : 0 -- no need to block traffic, 1 -- need block traffic |
| oper class : operating class according to IEEE std802.11 spec, when 0 is used, only CSA IE will be used |
| new channel : the channel will switch to |
| switch count: channel switch time to send ECSA ie |
| (when set to 0, CSA/ECSA action frame will be send out) |
| switch count: channel switch time to send CSA ie |
| |
| bandwidth : channel width switch to(optional),only for 5G channels. |
| Support value 1 -- 40M above, 3 -- 40M below, 4 -- 80M, 5 -- 160M |
| num_pkts : send number of CSA/ECSA action frame |
| |
| Example: |
| mlanutl uap0 channel_switch 1 115 36 10 :switch to channel 36, oper class 115 |
| mlanutl uap0 channel_switch 1 81 6 10 :switch to channel 6, oper class 81 |
| mlanutl uap0 channel_switch 1 0 6 10 :switch to channel 6 |
| mlanutl uap0 channel_switch 1 0 36 10 1 :switch to channel 36, bandwidth 40MHz above |
| mlanutl uap0 channel_switch 1 0 36 0 3 :switch to channel 36, and send 3 broadcast CSA action frame |
| mlanutl uap0 channel_switch 1 115 36 0 3 :switch to channel 36, and send 3 broadcast ECSA action frame |
| (Only IW61X supports sending CSA/ECSA action frames) |
| |
| hostcmd 2040coex |
| This command is used to send the 11n 20/40 Coex command to firmware. |
| Firmware will send 11n 20/40 Coex management action frame to AP. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/11n_2040coex.conf 2040coex |
| |
| hostcmd auto_tx_get |
| hostcmd auto_tx_unreg |
| This command is used to configures the Frame Auto Transmission parameters. |
| auto_tx_get: get auto_tx parameters |
| auto_tx_unreg: unregister to firmware auto_tx |
| |
| Usage: |
| mlanutl mlanX hostcmd config/auto_tx.conf auto_tx_get |
| mlanutl mlanX hostcmd config/auto_tx.conf auto_tx_unreg |
| |
| hostcmd bgscfg |
| This command is used to configure the various parameters for PPS/UAPSD |
| or normal background scan. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/bg_scan.conf bgscfg |
| |
| hostcmd <pkt_coalescing.conf> coalesce_cfg |
| This command is used to set/clear rules to filter and buffer |
| broadcast/multicast packet which reduce unwanted patcket or interrupt to |
| host. |
| |
| Usage: |
| mlanutl mlanX hostcmd <pkt_coalescing.conf> coalesce_cfg |
| |
| hostcmd <ed_mac_ctrl.conf> ed_mac_ctrl |
| This command is used to control ED MAC. |
| |
| Usage: |
| mlanutl mlanX hostcmd <ed_mac_ctrl.conf> ed_mac_ctrl |
| |
| hostcmd crypto_test |
| This command is used to test the encryption/decryption API of the firmware. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/crypto_test.conf crypto_test |
| |
| hostcmd nat_keep_alive |
| This command is used to configures the Frame Auto Transmission parameters. |
| nat_keep_alive: register to firmware for sending NAT Keep Alive packet |
| |
| Usage: |
| mlanutl mlanX hostcmd config/auto_tx.conf nat_keep_alive |
| |
| hostcmd pad_cfg_get |
| hostcmd pad_cfg_set |
| This command is used to set/get the configuration data for PAD OR. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/pad_cfg.conf pad_cfg_get |
| mlanutl mlanX hostcmd config/pad_cfg.conf pad_cfg_set |
| |
| hostcmd requesttpc |
| This command is used to request 802.11H TPC info. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/requesttpc.conf requesttpc |
| |
| hostcmd mode_get |
| hostcmd mode_timeshare |
| hostcmd mode_spatial |
| hostcmd mode_none |
| hostcmd mode_bca |
| This command is used to get/set Robust BT Coex. |
| mode_get: get the current mode |
| mode_timeshare: set Robust BT Coex to timeshare mode (default on 1x1 chips) |
| mode_spatial: set Robust BT Coex to spatial mode (only for, and default on 2x2 chips) |
| mode_none: set Robust BT Coex to mode none (only for, and default on 2x2_3Antenna chips) |
| mode_bca: set Robust BT Coex to bca mode (HW BCA based WLAN and BT traffic arbitration) |
| |
| Usage: |
| mlanutl mlanX hostcmd config/robust_btc.conf mode_get |
| mlanutl mlanX hostcmd config/robust_btc.conf mode_timeshare |
| mlanutl mlanX hostcmd config/robust_btc.conf mode_spatial |
| mlanutl mlanX hostcmd config/robust_btc.conf mode_none |
| mlanutl mlanX hostcmd config/robust_btc.conf mode_bca |
| |
| hostcmd gpio_cfg |
| This command is used to enable/disable GPIO cfg. |
| gpio_cfg: enable/disable GPIO cfg for external bt request (default is enable with High Polarity) |
| |
| Usage: |
| mlanutl mlanX hostcmd config/robust_btc.conf gpio_cfg |
| |
| hostcmd external_coex_uart_config |
| This command is used to enable/disable Loopback mode. |
| external_coex_uart_config: enable/disable loopback of received data (default is disable) |
| |
| Usage: |
| mlanutl mlanX hostcmd config/robust_btc.conf external_coex_uart_config |
| |
| hostcmd external_coex_pta_config |
| This command is used to configure external coex interface/WCI-2 interface |
| external_coex_pta_config: Configure either PTA interface or WCI-2 interface (default is configured for PTA interface). |
| Usage: |
| mlanutl mlanX hostcmd <robust_btc.conf> external_coex_pta_config |
| |
| hostcmd generictime |
| hostcmd a2dptime |
| hostcmd inquirytime |
| hostcmd ap_generictime |
| hostcmd ap_a2dptime |
| hostcmd ap_inquirytime |
| This command is used to configure the time slice of COEX (only works in timeshare mode) |
| generictime: configure the Bttime and Wlantime in Station Generic case |
| a2dptime: configure the Bttime and Wlantime in Station A2DP case |
| inquirytime: configure the Bttime and Wlantime in Station Inquiry case |
| ap_generictime: configure the Bttime and Wlantime in Ap Generic case |
| ap_a2dptime: configure the Bttime and Wlantime in Ap A2DP case |
| ap_inquirytime: configure the Bttime and Wlantime in Ap Inquiry case |
| |
| Usage: |
| mlanutl mlanX hostcmd config/robust_btc.conf generictime |
| mlanutl mlanX hostcmd config/robust_btc.conf a2dptime |
| mlanutl mlanX hostcmd config/robust_btc.conf inquirytim |
| mlanutl mlanX hostcmd config/robust_btc.conf ap_generictime |
| mlanutl mlanX hostcmd config/robust_btc.conf ap_a2dptime |
| mlanutl mlanX hostcmd config/robust_btc.conf ap_inquirytime |
| |
| hostcmd get_bca_arb_config |
| hostcmd set_en_bca_arb_config |
| hostcmd set_dis_bca_arb_config |
| This command is used to get/set Arbitration status for BCA, WLAN, 15.4, BT/BLE and Ext. radio. |
| get_bca_arb_config: get arbitration status for BCA, WLAN, 15.4, BT/BLE and, Tx and Rx of Ext. radio |
| set_en_bca_arb_config: set arbitration status for BCA, WLAN, 15.4, BT/BLE and, Tx and Rx of Ext. radio to Enable |
| set_dis_bca_arb_config: set arbitration status for BCA, WLAN, 15.4, BT/BLE and, Tx and Rx of Ext. radio to Disable |
| |
| Usage: |
| mlanutl mlanX hostcmd config/coex_int_api.conf get_bca_arb_config |
| mlanutl mlanX hostcmd config/coex_int_api.conf set_en_bca_arb_config |
| mlanutl mlanX hostcmd config/coex_int_api.conf set_dis_bca_arb_config |
| |
| hostcmd get_wlan_stats |
| hostcmd get_15_4_stats |
| hostcmd get_bt_stats |
| hostcmd get_ble_stats |
| This command is used to get statistics values for WLAN, 15.4, BT and BLE. |
| get_wlan_stats: get statistics for WLAN |
| get_15_4_stats: get statistics for 15.4 |
| get_bt_stats: get statistics for BT |
| get_ble_stats: get statistics for BLE |
| |
| Usage: |
| mlanutl mlanX hostcmd config/coex_int_api.conf get_wlan_stats |
| mlanutl mlanX hostcmd config/coex_int_api.conf get_15_4_stats |
| mlanutl mlanX hostcmd config/coex_int_api.conf get_bt_stats |
| mlanutl mlanX hostcmd config/coex_int_api.conf get_ble_stats |
| |
| hostcmd sdio_pulldown_get |
| hostcmd sdio_pulldown_set |
| hostcmd sdio_pulldown_disable |
| This command is used to set/get the settings of pulling up and |
| pulling down of SDIO lines. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/sdio_pulldown.conf sdio_pulldown_get |
| mlanutl mlanX hostcmd config/sdio_pulldown.conf sdio_pulldown_set |
| mlanutl mlanX hostcmd config/sdio_pulldown.conf sdio_pulldown_disable |
| |
| hostcmd subevent_get |
| hostcmd subevent_set |
| This command is used to get/set the configurations for event descriptor |
| interface command. |
| subsvent_get: get subscribed event parameters |
| subsvent_set: set subscribed event parameters |
| |
| Usage: |
| mlanutl mlanX hostcmd config/subevent.conf subevent_get |
| mlanutl mlanX hostcmd config/subevent.conf subevent_set |
| |
| hostcmd txpwrlimit_2g_cfg_set |
| hostcmd txpwrlimit_5g_cfg_set |
| hostcmd txpwrlimit_cfg_get |
| This command is used to set/get the configuration data of Tx power limitation. |
| Note: The configuration set should be issued when STA is disconnected. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/txpwrlimit_cfg.conf txpwrlimit_cfg_get |
| mlanutl mlanX hostcmd config/txpwrlimit_cfg.conf txpwrlimit_2g_cfg_set |
| mlanutl mlanX hostcmd config/txpwrlimit_cfg.conf txpwrlimit_5g_cfg_set |
| |
| hostcmd txrate_cfg_get |
| hostcmd txrate_cfg_set_bg |
| hostcmd txrate_cfg_set_bgn |
| This command is used to set/get the transmit data rate. |
| |
| Usage: |
| mlanutl mlanX hostcmd config/txrate_cfg.conf txrate_cfg_get |
| mlanutl mlanX hostcmd config/txrate_cfg.conf txrate_cfg_set_bg |
| mlanutl mlanX hostcmd config/txrate_cfg.conf txrate_cfg_set_bgn |
| |
| hostcmd fwdump |
| This command is used to trigger firmware dump |
| |
| Usage: |
| mlanutl mlanX hostcmd <fwdump.conf> fwdump |
| |
| hostcmd stop_su |
| hostcmd start_su |
| This command is used to set/get 11ax related setting |
| stop_su: stop su |
| start_su: resume su |
| stop_forceRTS: stop force Tx RTS |
| start_forceRTS: start force Tx RTS |
| Usage: |
| mlanutl mlanX hostcmd config/debug.conf stop_su |
| mlanutl mlanX hostcmd config/debug.conf start_su |
| mlanutl mlanX hostcmd config/debug.conf stop_forceRTS |
| mlanutl mlanX hostcmd config/debug.conf start_forceRTS |
| |
| hotspotcfg |
| This command is used to get/set the HotSpot configuration. |
| |
| Usage: |
| mlanutl mlanX hotspotcfg [<bitmap>] |
| |
| Where the parameter is: |
| <bitmap> : configuration bitset |
| : Bit 31-10 - Reserved set to 0 |
| : Bit 9 - TDLS support indication enable/disable |
| : Bit 8 - Interworking indication enable/disable |
| : Bit 7-1 - Reserved set to 0 |
| : Bit 0 - HotSpot feature enable/disable |
| |
| Examples: |
| mlanutl mlan0 hotspotcfg : Get present remote address mode |
| mlanutl mlan0 hotspotcfg 0x301 : Turn on HotSpot2.0 and enable TDLS support and interworking indication |
| mlanutl mlan0 hotspotcfg 0 : Turn off HotSpot2.0 and disable TDLS support and interworking indication |
| |
| hscfg |
| This command is used to configure the host sleep parameters. |
| Please note hssetpara and usbsuspend/usbresume commands should be used for USB |
| host sleep related tests. |
| |
| Usage: |
| mlanutl mlanX hscfg [condition [[GPIO# [gap]]]] (optional)[type ind_GPIO# [level]] (optional)[type event_force_ignore event_use_ext_gap ext_gap [gpio_wave]] |
| |
| This command takes one (condition), two (condition and GPIO#) or three |
| (condition, GPIO# and gap). If more than three parameters, it can set different or multiple features indicating by type(this is optional): |
| |
| 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 |
| (condition, GPIO#, gap, type, ind_GPIO# and level). |
| |
| If type=2, it will set extend hscfg wakup method. And the parameter format will be (condition, GPIO#, gap, type, force_ignore, |
| use_ext_gap, ext_gap [gpio_wave]). gpio_wave parameter is optional and default value is 0(falling edge). Each bit of |
| 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 |
| parameters is not allowed. Set bit(s) in event_force_ignore means the event(s) will be forced ignore in firmware silently. |
| Set bit(s) in event_use_ext_gap mean the event(s) will use extend gap to inform host. Not set means not handle. |
| |
| If type=3, it will set hs_wakeup_interval. |
| |
| If type=4, it will set min_wake_holdoff. |
| |
| If no parameter provided, get is performed. |
| |
| The usages of parameters for "hscfg" are the same as that for "hssetpara" command. |
| |
| mgmtfilter |
| This command is used to set management frame to wake up host when host suspend. |
| |
| Usage: |
| mlanutl mlanX mgmtfilter <mgmtfilter.conf> |
| |
| where <mgmtfilter.conf> |
| This conf file will set management frame catagory, action and frame mask. |
| |
| Examples: |
| mlanutl mlan0 mgmtfilter mgmtfilter.conf |
| |
| auto_arp |
| This command is used to enable/disable auto arp response in host sleep mode. |
| No argument is used to get. |
| |
| where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 auto_arp 0 : Disable auto arp response from FW |
| mlanutl mlan0 auto_arp : Get auto arp configuration status |
| |
| htstreamcfg |
| This command is used to set/get HT stream configuration. |
| The setting only takes effect in next association. |
| |
| Usage: |
| mlanutl mlanX htstreamcfg [n] |
| |
| where <n> |
| 0x11: HT stream 1x1 mode |
| 0x22: HT stream 2x2 mode |
| |
| Examples: |
| mlanutl mlan0 htstreamcfg : Get current setting |
| mlanutl mlan0 htstreamcfg 0x11 : Set HT stream 1x1 mode |
| mlanutl mlan0 htstreamcfg 0x22 : Set HT stream 2x2 mode |
| |
| httxbfcap |
| This command is used to set/get the TX beamforming capabilities. |
| |
| Usage: |
| mlanutl mlanX httxbfcap [cap] |
| |
| where the parameters are, |
| cap: TX beamforming capabilities |
| Bit 0 : Implicit TX BF receiving capable |
| Bit 1 : RX staggered sounding capable |
| Bit 2 : TX staggered sounding capable |
| Bit 3 : RX NDP capable |
| Bit 4 : TX NDP capable |
| Bit 5 : Implicit TX BF capable |
| Bit 6-7 : Calibration |
| 0: - not supported |
| 1: - STA can respond to a calibration request using |
| the CSI Report, but cannot initiate calibration |
| 2: - reserved |
| 3: - STA can both initiate and respond to a calibration request |
| Bit 8 : Explicit CSI TX BF capable |
| Bit 9 : Explicit non-compressed steering capable |
| Bit 10 : Explicit compressed steering capable |
| Bit 11-12: Explicit TX BF CSI feedback |
| 0: - not supported |
| 1: - delayed feedback |
| 2: - immediate feedback |
| 3: - delayed and immediate feedback |
| Bit 13-14: Explicit non-compressed BF feedback capable |
| 0: - not supported |
| 1: - delayed feedback |
| 2: - immediate feedback |
| 3: - delayed and immediate feedback |
| Bit 15-16: Explicit compressed BF feedback capable |
| 0: - not supported |
| 1: - delayed feedback |
| 2: - immediate feedback |
| 3: - delayed and immediate feedback |
| Bit 17-18: Minimal grouping |
| 0: - no grouping (STA supports groups of 1) |
| 1: - groups of 1, 2 |
| 2: - groups of 1, 4 |
| 3: - groups of 1, 2, 4 |
| Bit 19-20: CSI number of beamformer antennas supported |
| 0: - single TX antenna sounding |
| 1: - 2 TX antenna sounding |
| 2: - 3 TX antenna sounding |
| 3: - 4 TX antenna sounding |
| Bit 21-22: Non-compressed steering number of beamformer antennas supported |
| 0: - single TX antenna sounding |
| 1: - 2 TX antenna sounding |
| 2: - 3 TX antenna sounding |
| 3: - 4 TX antenna sounding |
| Bit 23-24: Compressed steering number of beamformer antennas supported |
| 0: - single TX antenna sounding |
| 1: - 2 TX antenna sounding |
| 2: - 3 TX antenna sounding |
| 3: - 4 TX antenna sounding |
| Bit 25-26: CSI max number of rows beamformer supported |
| 0: - single row of CSI |
| 1: - 2 rows of CSI |
| 2: - 3 rows of CSI |
| 3: - 4 rows of CSI |
| Bit 27-28: Channel estimation capability |
| 0: - 1 space time stream |
| 1: - 2 space time streams |
| 2: - 3 space time streams |
| 3: - 4 space time streams |
| Bit 29-31: Reserved |
| |
| Examples: |
| mlanutl mlan0 httxbfcap : Get the current TX BF capabilities |
| mlanutl mlan0 httxbfcap 0x0000001F : Set the TX BF capabilities of the |
| Implicit TX BF receiving capable, |
| RX staggered sounding capable, |
| TX staggered sounding capable, |
| RX NDP capable and TX NDP capable |
| |
| httxbfcfg |
| This command is used to configure the TX beamforming options. |
| Note: Any new subcommand should be inserted in the second |
| argument and each argument of the sub command should be |
| separated by semicolon. For global configuration, the |
| arguments should be separated by space. |
| |
| Usage: |
| mlanutl mlanX httxbfcfg "<action>[;GlobalData/tsData/interval/txPeerData/snrData/txSounding]" |
| |
| where the parameters are, |
| action: TX beamforming action |
| 0: Control global parameters for beamforming |
| 1: Performs NDP Sounding for PEER |
| 2: TX BF interval in milliseconds |
| 3: Enable/Disable beamforming/sounding for a particular peer |
| 4: TX BF SNR Threshold for peer |
| .. <for new subcommand> |
| GlobalData: Global parameter arguments. |
| It contains beamforming enable, sounding enable, FB type, snr_threshold |
| sounding interval, Beamformig mode values seperated by space. |
| Syntax: |
| mlanutl mlanX httxbfcfg <action>;<beamforming enable> <sounding enable> <FB type> |
| <snr_threshold> <sounding interval> <Beamforming mode> |
| tsData: Trigger sounding for PEER specific arguments, |
| it contains PEER MAC and status |
| interval: TX BF interval in milliseconds |
| txPeerData: Enable/Disable beamforming/sounding for the indicated peer, |
| it contains PEER MAC, sounding, beamfoming options and FB type; |
| snrData: TX BF SNR Threshold for peer, it contains PEER MAC and SNR |
| |
| Examples: |
| mlanutl mlan0 httxbfcfg "0" : Get current global configuration parameter |
| mlanutl mlan0 httxbfcfg "2;00:50:43:20:BF:64" : Get the TX BF periodicity for a given peer |
| mlanutl mlan0 httxbfcfg "3" : Get the list of MAC addresses that have |
| beamforming and/or sounding enabled |
| mlanutl mlan0 httxbfcfg "4" : Get the list of PEER MAC, SNR tuples |
| programmed into the firmware. |
| mlanutl mlan0 httxbfcfg "0;0 0 3 10 500 5" : Disable beamforming, sounding, set FB type |
| to 3, snr threshold to 10, sounding interval |
| to 500 ms and beamforming mode to 5 |
| mlanutl mlan0 httxbfcfg "1;00:50:43:20:BF:64" : Perform NDP Trigger sounding to peer |
| 00:50:43:20:BF:64 |
| mlanutl mlan0 httxbfcfg "2;00:50:43:20:BF:64;500" : Set TX BF periodicity for peer 00:50:43:20:BF:64 |
| to 500 milliseconds |
| mlanutl mlan0 httxbfcfg "3;00:50:43:20:BF:43;1;0;3" : Enable beamforming, disable sounding and set |
| FB type to 3 for peer 00:50:43:20:BF:43 |
| mlanutl mlan0 httxbfcfg "4;00:50:43:20:BF:24;43" : Set TX BF SNR threshold to peer |
| 00:50:43:20:BF:24 with SNR 43 |
| |
| inactivityto |
| This command is used to set/get the inactivity timeout value, which specifies |
| when WLAN device is put to sleep. |
| |
| Usage: |
| mlanutl mlanX inactivityto <n> <m> <l> [k] |
| |
| where the parameter are: |
| <n>: timeout unit in microseconds. |
| <m>: Inactivity timeout for unicast data. |
| <l>: Inactivity timeout for multicast data. |
| [k]: Inactivity timeout for new Rx traffic after PS notification to AP. |
| |
| Examples: |
| mlanutl mlan0 inactivityto : Get the timeout value |
| mlanutl mlan0 inactivityto 1000 2 3 : Set timeout unit to 1000 us (1 ms), |
| inactivity timeout for unicast data is 2 ms, |
| inactivity timeout for multicast data is 3 ms |
| |
| ipaddr |
| This command is used to set/get IP address. |
| |
| Usage: |
| mlanutl mlanX ipaddr ["<op>;<ipaddr>"] |
| |
| where <op> |
| 0: Remove the IP address |
| bit 0: Set IP address for broadcast ARP filter, which will be auto enabled |
| in next host sleep configuration |
| bit 1: Set IP address for auto broadcast ARP response |
| |
| Examples: |
| mlanutl mlan0 ipaddr : Get current settings |
| mlanutl mlan0 ipaddr "0" : Remove IP address |
| mlanutl mlan0 ipaddr "1;192.168.0.5" : Set IP address for ARP filter |
| mlanutl mlan0 ipaddr "3;192.168.0.6" : Set IP address for ARP filter |
| : and auto ARP response |
| |
| linkstats |
| This command is used to get the link statistics from the firmware. |
| |
| Usage: |
| mlanutl mlanX linkstats |
| |
| listeninterval |
| This command is used to set/get listen interval in assoc request. |
| |
| Usage: |
| mlanutl mlanX listeninterval [l] |
| |
| where the parameter: |
| [l]: Value of listen interval [Default 10] |
| |
| Examples: |
| mlanutl mlan0 listeninterval : Display Listen interval |
| mlanutl mlan0 listeninterval 1 : Set Listen interval to 1. |
| |
| macctrl |
| This command is used to set/get MAC control. |
| It's recommended to read the current setting first to avoid override issue. |
| |
| Usage: |
| mlanutl mlanX macctrl [n] |
| |
| where <n> |
| bit 0: Rx enabled |
| bit 1: Directed Filter enabled |
| bit 2: LoopBack enabled |
| bit 3: WEP enabled (use of WEP/TKIP is not recommended anymore) |
| bit 4: EthernetII enabled |
| bit 5: MultiCast enabled |
| bit 6: BroadCast enabled |
| bit 7: Promiscuous enabled |
| bit 8: All MultiCast enabled |
| bit 9: RTS/CTS enabled (0: CTS to self) |
| bit 10: Enforce Protection enabled |
| bit 11: Force 11N Protection enabled |
| bit 12: Rx 802.11 Packets enabled |
| bit 13: Ad-hoc g Protection enabled |
| bit 14: Reserved |
| bit 15: WEP Type (use of WEP/TKIP is not recommended anymore) |
| bit 16: BandWidth Indication in RTS enabled |
| bit 17: Dynamic BandWidth Indication Mode in RTS enabled |
| bit 18-31: Reserved |
| |
| Examples: |
| mlanutl mlan0 macctrl : Get current MAC control |
| mlanutl mlan0 macctrl 0x13 : Set Rx enabled and Directed Filter enabled and EthernetII enabled |
| mlanutl mlan0 macctrl 0x813 : Set Rx enabled and Directed Filter enabled and EthernetII enabled |
| Force 11N Protection enabled |
| |
| memrdwr |
| This command is used to read/write the adapter memory. |
| |
| Usage: |
| mlanutl mlanX memrdwr <address> [value] |
| |
| where the parameters are, |
| <address>: memory address |
| [value]: value to be written |
| |
| Examples: |
| mlanutl mlan0 memrdwr 0x4cf70 : Read memory address 0x4cf70 |
| mlanutl mlan0 memrdwr 0x80000000 0xffffffff |
| : Write 0xffffffff to memory address 0x80000000 |
| |
| miracastcfg |
| This command is used to set/get the miracast configuration. |
| |
| Usage: |
| mlanutl mlanX miracastcfg [l] [m] [n] |
| |
| where the parameters are, |
| [l]: miracast mode |
| 0: Disable |
| 1: Source |
| 2: Sink |
| [m]: scan time per channel, in ms |
| [n]: gap during two scans, in ms |
| |
| Examples: |
| mlanutl mlan0 miracastcfg : Get miracast configuration |
| mlanutl mlan0 miracastcfg 0 : Disable miracast configuration |
| mlanutl mlan0 miracastcfg 1 20 40 : Set miracast mode as source, with scan time |
| 20ms per channel and gap during two scans 40ms |
| |
| mgmtframectrl |
| This command is used to set/get registered frame type to passthrough. |
| |
| Usage: |
| mlanutl mlanX mgmtframectrl [<mask>] |
| mlanutl uapX mgmtframectrl [<mask>] |
| |
| Where the parameter is: |
| <mask> : the bit mask of management frame reception. |
| : Bit 0 - Association Request |
| : Bit 1 - Association Response |
| : Bit 2 - Re-Association Request |
| : Bit 3 - Re-Association Response |
| : Bit 4 - Probe Request |
| : Bit 5 - Probe Response |
| : Bit 8 - Beacon Frames |
| : Bit 13 - Action Frames |
| |
| Examples: |
| mlanutl mlan0 mgmtframectrl : Get present mask |
| mlanutl mlan0 mgmtframectrl 0x0020 : Bit 5 is set, Forward probe response frames to application layer |
| |
| mgmtframetx |
| This command is used to send management frame. |
| |
| Usage: |
| mlanutl mlanX mgmtframetx <mgmt_frame.conf> |
| |
| Where the parameter is: |
| mgmt_frame.conf : The configuration file contains the management frame. |
| |
| Examples: |
| mlanutl mlan0 mgmtframetx config/mgmt_frame.conf |
| |
| mpactrl |
| This command is used to set/get the Tx, Rx SDIO aggregation parameters. |
| Note: The parameters can be set only in disconnected state. |
| |
| Usage: |
| mlanutl mlanX mpactrl [tx_ena] [rx_ena] [tx_size] [rx_size] [tx_ports] [rx_ports] |
| |
| where the parameter are: |
| [tx_ena]: Enable/disable (1/0) Tx MP-A |
| [rx_ena]: Enable/disable (1/0) Rx MP-A |
| [tx_size]: Size of Tx MP-A buffer |
| [rx_size]: Size of Rx MP-A buffer |
| [tx_ports]: Max ports (1-16) for Tx MP-A |
| [rx_ports]: Max ports (1-16) for Rx MP-A |
| default values are 1 1 16384 32768 16 16 |
| The MP-A may be disabled by default at build time if the MMC driver byte mode patch |
| is not available in kernel. |
| |
| Examples: |
| mlanutl mlan0 mpactrl : Get MP aggregation parameters |
| mlanutl mlan0 mpactrl 0 0 |
| : Disable MP aggregation for Tx, Rx respectively |
| mlanutl mlan0 mpactrl 1 1 8192 8192 8 8 |
| : Enable MP aggregation for Tx, Rx |
| : Set Tx, Rx buffer size to 8192 bytes |
| : Set maximum Tx, Rx ports to 8 |
| |
| netmon |
| This command is used to set/get network monitor configuration. |
| Note: For channel specified mode, the configuration should be issued when |
| STA/AP is disconnected. For in-channel sniffer mode, the configuration |
| can be issued irrespective of the STA/AP connected state, and requires |
| specification of only action and filter parameters. If any of the STA/AP |
| connection is active, the in-channel sniffer mode will inherently work |
| on the active band and channel configuration. |
| |
| Usage: |
| mlanutl <interface> netmon [<act> [<filter> <band> <chan> <opt>]] |
| |
| Where the parameters are: |
| <interface> : mlanX |
| <act> : (0) disable any network monitor activity |
| : (1) enable channel specified sniffer mode activity |
| <filter> : network monitor fitler flag |
| bit 0: (1/0) enable/disable management frame |
| bit 1: (1/0) enable/disable control frame |
| bit 2: (1/0) enable/disable data frame |
| <band> : 802.11 band |
| bit 0: B |
| bit 1: G |
| bit 2: A |
| bit 3: GN |
| bit 4: AN |
| bit 5: AC 2.4G |
| bit 6: AC 5G |
| <chan> : channel to monitor |
| <opt> : [offset] |
| [offset] : secondary channel bandwidth |
| 0 - Bandwidth 20Mhz |
| 1 - HT Bandwidth 40Mhz sec channel above |
| 3 - HT Bandwidth 40Mhz sec channel below |
| 4 - VHT Bandwidth 80Mhz |
| |
| Examples: |
| mlanutl mlan0 netmon : Get the current network monitor configuration |
| mlanutl mlan0 netmon 0 : Disable network monitor activity |
| mlanutl mlan0 netmon 1 4 11 6 : Enable channel specified sniffer activity, set filter |
| data frame, band B/G/GN and channel 6 |
| mlanutl mlan0 netmon 1 7 20 64 1 : Enable channel specified sniffer activity, set filter |
| management, control and data frame, band A/AN, |
| channel 64 and secondary channel above |
| |
| offchannel |
| This command is used to set/cancel the offchannel configuration. |
| Note: This command only can be used when cfg80211 is enabled during load time. |
| |
| Usage: |
| mlanutl mlanX offchannel [<l> <m> <n> <bandwidth>] |
| |
| where |
| <l> |
| 0 : Cancel the offchannel configuration |
| 1 : Set the offchannel configuration |
| <m> |
| The channel to configure |
| <n> |
| The duration for which to configure |
| <bandwidth> : channel bandwidth |
| 0 - Bandwidth 20Mhz |
| 1 - HT Bandwidth 40Mhz sec channel above |
| 3 - HT Bandwidth 40Mhz sec channel below |
| 4 - VHT Bandwidth 80Mhz |
| |
| Examples: |
| mlanutl mlan0 offchannel : Get current offchannel status. |
| mlanutl mlan0 offchannel 0 : Cancel the offchannel configuration. |
| mlanutl mlan0 offchannel 1 3 5 : Configure channel 3 for 5 milliseconds. |
| mlanutl mlan0 offchannel 1 36 5000 : Configure channel 36 for 5000 milliseconds. |
| mlanutl mlan0 offchannel 1 64 500 4 : Configure channel 64 in 80MHz for 500 milliseconds. |
| |
| otpuserdata |
| This command is used to get the OTP user data. |
| |
| Where |
| <l> is <user_data_length> |
| <user_data_length> - This parameter specifies the length of OTP user data to be read |
| |
| Examples: |
| mlanutl mlan0 otpuserdata 10 : Get the 10-byte OTP user data |
| |
| passphrase |
| This command is used to set/get passphrase for WPA-PSK/WPA2-PSK/WPA3-SAE mode.// use of WPA/TKIP is not recommended anymore |
| |
| Where <l> |
| ASCII string for ssid/passphrase/psk/sae_password. |
| |
| Setting psk for WPA3 SAE protocol is not possible, as new psk gets generated |
| everytime in protocol flow. |
| |
| 1) "0;<ssid=valid ssid>" - This will get the passphrase, AKMP |
| for specified ssid, if none specified then it will get all. |
| |
| Example: |
| mlanutl mlan0 passphrase "0;ssid=nxp" |
| |
| 2) "1;<psk=64 byte hexpsk>;<passphrase=1-63 byte passphare> |
| <ssid=valid ssid>" - Passphrase and psk cannot be provided for the same SSID. |
| This command takes only one SSID at a time, If ssid= is present it should contain |
| a passphrase or psk. If no arguments are provided then AKMP=802.1x, and passphrase |
| should be provided after association. |
| End of each parameter should be followed by a ';'(except for the last parameter) |
| as the delimiter. If ';' or '/' has to be used in an SSID then a '/' should be preceded |
| to ';' or '/' as a escape. |
| |
| Examples: |
| mlanutl mlan0 passphrase "1;ssid=nxpAP;passphrase=abcdefgd" |
| mlanutl mlan0 passphrase "1;ssid=nxp AP;psk=<64 bytes hexpsk>" |
| |
| If user wants to input the ssid as "nxp; AP" then command has to be |
| mlanutl mlan0 passphrase "1;ssid=nxp/; AP;passphrase=abcdefgh" |
| |
| If user wants to input the ssid as "//;" then command has to be |
| mlanutl mlan0 passphrase "1;ssid=/////;;passphrase=abcdefgh" |
| |
| 3) "2;<ssid=valid ssid>" - This will clear the passphrase |
| for specified ssid, if none specified then it will clear all. |
| |
| Examples: |
| mlanutl mlan0 passphrase "2;ssid=nxp" |
| mlanutl mlan0 passphrase "2" : Clear all profiles and disable embedded supplicant |
| |
| 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. |
| Examples: |
| mlanutl mlan0 passphrase "1;ssid=nxp;sae_password=1234567890" |
| |
| pb_bypass |
| This command is used to get the By-passed TX packet from upper layer. |
| |
| Usage: |
| |
| mlanutl mlanX pb_bypass [data_1, data_2, ... data_n] |
| |
| where value of data_1, data_2, ... data_n isBypass TX Data |
| |
| pcieregrw |
| This command is used to read/write PCIE register. |
| |
| Usage: |
| mlanutl mlanX pcieregrw <offset> [value] |
| |
| where the parameters are, |
| <offset>: The offset of PCIE register |
| [value]: The value to write |
| |
| Examples: |
| mlanutl mlan0 pcieregrw 0x48 : Read PCIE register 0x48 |
| mlanutl mlan0 pcieregrw 0x44 8 : Write 8 to PCIE register 0x44 |
| |
| pciebar0regrw |
| This command is used to read/write PCIE register/memory from BAR0. |
| |
| Usage: |
| mlanutl mlanX pciebar0regrw <offset> [value] |
| |
| where the parameters are, |
| <offset>: The offset of PCIE register |
| [value]: The value to write |
| |
| Examples: |
| mlanutl mlan0 pciebar0regrw 0x48 : Read PCIE register 0x48 |
| mlanutl mlan0 pciebar0regrw 0x44 8 : Write 8 to PCIE register 0x44 |
| |
| pmfcfg |
| This command is used to set/get management frame protection parameters. |
| |
| Usage: |
| mlanutl mlanX pmfcfg <m> <n> |
| |
| where |
| <m>: Management Frame Protection Capable (MFPC) |
| 1: Management Frame Protection Capable |
| 0: Management Frame Protection not Capable |
| <n>: Management Frame Protection Required (MFPR) |
| 1: Management Frame Protection Required |
| 0: Management Frame Protection Optional |
| Default setting is PMF not capable. |
| m = 0, n = 1 is an invalid combination |
| |
| Examples: |
| mlanutl mlan0 pmfcfg : Get PMF parameters |
| mlanutl mlan0 pmfcfg 1 0 : Set MFPC and make MFPR optional |
| |
| port_ctrl |
| This command is used to Set/Get Port Control mode. No argument is used to get. |
| |
| where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 port_ctrl 1 : Enable Port Control mode |
| mlanutl mlan0 port_ctrl : Get Port Control mode status |
| |
| powercons |
| This command is used to set the local transmit power constraint. |
| Value is in dbm unit. This command is only used for ad-hoc start. |
| |
| Usage: |
| mlanutl mlanX powercons [n] |
| |
| Examples: |
| mlanutl mlanX powercons : get the current setting |
| mlanutl mlanX powercons 12 : set local power constraint to 12 dbm |
| |
| pscfg |
| This command is used to set/get PS configuration parameters. |
| |
| Usage: |
| mlanutl mlanX pscfg [k] [d] [l] ... |
| |
| Where the parameters: |
| [k]: Keep alive null packet interval (0: Unchanged, -1: Disable, n: Interval in seconds) |
| [d]: DTIM interval ( 0: Unchanged, |
| 1-5: Value, |
| 65534: DTIM will be ignored, listen interval will be used, |
| 65533: Closest DTIM to the listen interval period will be used ) |
| [l]: Local listen interval ( 0: Unchanged, |
| -1: Disable, |
| 1-49: Value in beacon intervals, |
| >= 50: Value in TUs ) |
| [b]: Beacon miss timeout (0: Unchanged, 1-50: Value in milliseconds, 65535: Disable) |
| [p]: Delay to PS (0-65535: Value in milliseconds, default 1000ms) |
| [m]: PS mode (0: Unchanged, 1: Auto mode, 2: PS-Poll mode, 3: PS Null mode) |
| No change if parameters are not provided. |
| |
| Examples: |
| mlanutl mlan0 pscfg : Get all the current PS configuration settings |
| mlanutl mlan0 pscfg 3 4 : Set PS keep alive null packet interval to 3 seconds |
| and DTIM interval to 4, all the other configurations |
| are unchanged |
| mlanutl mlan0 pscfg 0 0 0 0 50 2 : Set delay to PS to 50 ms and PS mode to PS-Poll mode, |
| keep the others unchanged |
| |
| bcntimeoutcfg |
| This command is used to set Beacon timeout parameters. |
| |
| Usage: |
| mlanutl mlanX bcntimeoutcfg [l] [m] [o] [p] |
| |
| Where the parameters: |
| [l]: Beacon miss timeout period Rx window (in ms) |
| [m]: Beacon miss timeout period (unit in beacon interval) |
| [o]: Beacon reacquire timeout period Rx window (unit in beacon interval) |
| [p]: Beacon reacquire timeout period (unit in beacon interval) |
| Please note that it would be better [m]+[p] not exceed 64. |
| Examples: |
| mlanutl mlan0 bcntimeoutcfg 10 30 2 30 : Set beacon timeout configure to |
| Beacon miss timeout period Rx window : 10 (ms) |
| Beacon miss timeout period : 30 (Beacon Interval) |
| Beacon reacquire timeout period Rx window : 2 (Beacon Interval) |
| Beacon reacquire timeout period : 30 (Beacon Interval) |
| |
| psmode |
| This command is used to set/get the IEEE PS mode configuration. |
| |
| Usage: |
| mlanutl mlanX psmode [l] |
| |
| where the parameter: |
| [l] |
| 0 : Disable IEEE PS mode |
| 1 : Enable IEEE PS mode |
| <none>: Get IEEE PS mode |
| |
| Examples: |
| mlanutl mlan0 psmode : Get IEEE PS mode. |
| mlanutl mlan0 psmode 1 : Enable IEEE PS mode. |
| |
| qconfig |
| Send a WMM AC Queue configuration command to get/set/default params |
| |
| Configure or get the parameters of a WMM AC queue. The command takes |
| an optional Queue Id as a last parameter. Without the queue id, all |
| queues will be acted upon. |
| |
| Usage: |
| mlanutl mlanX qconfig def [Queue Id: 0-3] |
| mlanutl mlanX qconfig get [Queue Id: 0-3] |
| mlanutl mlanX qconfig set msdu <lifetime in TUs> [Queue Id: 0-3] |
| |
| qoscfg |
| This command sets WMM IE QOS info when an argument is given, and gets current WMM |
| IE QOS info when no argument is given. |
| |
| Examples: |
| mlanutl mlanX qoscfg 0x0f : Set WMM IE QOS info to 0x0f |
| mlanutl mlanX qoscfg : Get WMM IE QOS info |
| |
| qstatus |
| This command retrieves the current status of the WMM queues. If WMM |
| is enabled then it displays the information for each AC in a table. |
| |
| Usage: |
| mlanutl mlanX qstatus |
| |
| radioctrl |
| This command is used to turn on/off the radio. |
| Note: The radio can be disabled only in disconnected state. |
| |
| where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 radioctrl 1 : Turn the radio on |
| mlanutl mlan0 radioctrl : Get radio status |
| |
| rdeeprom |
| This command is used to read the EEPROM contents of the card. |
| |
| Usage: |
| mlanutl mlanX rdeeprom <offset> <length> |
| |
| where the parameters are, |
| <offset>: multiples of 4 |
| <length>: 4-20, multiples of 4 |
| |
| Example: |
| mlanutl mlan0 rdeeprom 0 20 : Read 20 bytes of EEPROM data from offset 0 |
| |
| reassoctrl |
| This command is used to turn on/off re-association in driver. |
| |
| Usage: |
| mlanutl mlanX reassoctrl [n] |
| |
| Where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 reassoctrl : Get re-association status |
| mlanutl mlan0 reassoctrl 1 : Turn re-association on |
| |
| regioncode |
| This command is used to set/get the region code in the station. |
| Note: This command should be issued at beginning before band/channel selection |
| and association. |
| |
| where value is 'region code' for various regions like |
| USA FCC, Canada IC, Europe ETSI, Japan ... |
| The special code (0xff) is used for Japan to support channel 1-14 in B/G/N mode. |
| |
| Examples: |
| mlanutl mlan0 regioncode : Get region code |
| mlanutl mlan0 regioncode 0x10 : Set region code to USA (0x10) |
| Note : in some case regioncode will be 0 after updated countycode or 80211d |
| i.e. mlanutl mlanX countrycode (CA, JP, CN, DE, ES AT, BR, RU) |
| or uaputl.exe sys_cfg_80211d state 1 country (CA, JP, CN, DE, ES AT, BR, RU) |
| Please use cfp instead of it. |
| |
| regrdwr |
| This command is used to read/write the adapter register. |
| |
| Usage: |
| mlanutl mlanX regrdwr <type> <offset> [value] |
| |
| where the parameters are, |
| <type>: 1:MAC, 2:BBP, 3:RF, 5:CAU, 6:PSU, 7:BCA, 8:CIU, 0x81:MAC2, 0x82:BBP2, 0x83: RF2, 0x87: BCA2 |
| <type>: 1:MAC, 2:BBP, 3:RF, 5:CAU, 6:PSU, 7:BCA, 8:CIU |
| <type>: 1:MAC/SOC, 2:BBP, 3:RF, 5:CAU, 6:PSU, 7:BCA |
| <offset>: offset of register |
| [value]: value to be written |
| Note: |
| BBP reg (type 2) 0xXZZZ: |
| X: 0=BBUD, 8=BBUA. |
| ZZZ: offset (0-0xFFF). |
| RF reg (type 3) 0xXYZZ: |
| |
| For 8887/8897/8777 |
| 1. If Y == 0, access RFU BASE Register. |
| X = Path ID (0=Path_A, 1=Path_B), ZZ = offset (0-0xFF). |
| 2. If Y != 0, access RFU XCVR Register on Path Y (1=Path_A, 2=Path_B). |
| X = Page # (0=Page_1, 1=Page_2, 2=Page_3 if chip support), ZZ: offset (0-0xFF). |
| For 8977/8997/8987 |
| X = Path ID (0-1) |
| Y = Page Number (0-6) in selected Path |
| ZZ = Register offset in selected path/page |
| |
| Examples: |
| mlanutl mlan0 regrdwr 1 0x60 : Read the MAC register |
| mlanutl mlan0 regrdwr 1 0x794 0x80000000 : Write 0x80000000 to MAC register |
| mlanutl mlan0 regrdwr 0x81 0x60 :Read MAC2 register |
| |
| rejectaddbareq |
| This command is used to set/get the conditions of rejecting addba request. |
| |
| Usage: |
| mlanutl mlanX rejectaddbareq [conditions] |
| mlanutl uapX rejectaddbareq [conditions] |
| |
| Where conditions are: |
| bit 0 = 1 -- reject the addba request when host sleep activated |
| bit 1 = 1 -- reject the addba request when FW auto re-connect enabled |
| this bit is only used with STA BSS |
| others -- reserved |
| |
| Examples: |
| mlanutl mlan0 rejectaddbareq : Get the reject addba request conditions |
| mlanutl mlan0 rejectaddbareq 0x1 : Reject the addba request |
| when host sleep activated |
| mlanutl mlan0 rejectaddbareq 0x2 : Reject the addba request |
| when FW auto re-connect enabled |
| mlanutl mlan0 rejectaddbareq 0x3 : Reject the addba request when |
| host sleep activated or |
| FW auto re-connect enabled |
| mlanutl uap0 rejectaddbareq 0x1 : Reject the addba request |
| when host sleep activated |
| |
| scancfg |
| This command is used to set/get scan configuration parameters. |
| |
| Usage: |
| mlanutl mlanX scancfg [t] [m] [p] [s] [a] [b] [c] [ext] [gap] |
| |
| where the parameters: |
| [t]: Scan Type (0: Unchanged, 1: Active, 2: Passive, default Active) |
| [m]: Scan Mode (0: Unchanged, 1: BSS, 2: IBSS, 3: Any, default Any) |
| [p]: Scan Probes (0: Unchanged, 1-5: Number of probes per channel, default 4) |
| [s]: Specific Scan Time (0: Unchanged, n: Value in ms, default 110 ms, max 500 ms) |
| [a]: Active Scan Time (0: Unchanged, n: Value in ms, default 200 ms, max 500 ms) |
| [b]: Passive Scan Time (0: Unchanged, n: Value in ms, default 200 ms, max 2000 ms) |
| [c]: Passive to Active Scan (0: Unchanged, 1: Enable, 2: Disable, default Enable) |
| [ext]: Extended scan (0: Unchanged, 1: Legacy scan, 2: Extended scan, 3: Extended scan enhance) |
| [gap]: Time gap between two scans in milliseconds (max value 500ms) |
| No change if the parameter is 0 or the parameter is not provided. |
| |
| Examples: |
| mlanutl mlan0 scancfg : Get all the current scan configuration settings |
| mlanutl mlan0 scancfg 1 3 : Set scan type to active and scan mode to any, |
| all the other scan configurations are unchanged |
| mlanutl mlan0 scancfg 0 1 2 200 : Set scan mode to BSS, number of probes to 2 and |
| specific scan time to 200 ms, all the other scan |
| configurations are unchanged |
| mlanutl mlan0 scancfg 0 0 0 0 0 0 1 : Set Passive to Active Scan to enable, all the |
| other scan configurations are unchanged |
| mlanutl mlan0 scancfg 2 0 0 0 0 0 2 : Set scan type to passive, Passive to Active |
| Scan to disable, all the other scan configurations |
| are unchanged |
| |
| sdcmd52rw |
| This command is used to read/write a controller register in |
| Secure Digital I/O Interfaces. |
| |
| Usage: |
| mlanutl mlanX sdcmd52rw <function number> <register address> [value] |
| |
| For SDIO MMC driver, only function 0 and 1 access is allowed. And there |
| is a limitation for function 0 write, only vendor specific CCCR registers |
| (0xf0 -0xff) are permiited. |
| |
| Examples: |
| mlanutl mlan0 sdcmd52rw 1 3 : Read SDIO function 1 register 3 |
| mlanutl mlan0 sdcmd52rw 1 1 0x3f : Write 0x3f to SDIO function 1 register 1 |
| |
| sdcmd53rw |
| This command is used to issue a CMD53 read/write data in |
| Secure Digital I/O Interfaces. |
| |
| Usage: |
| mlanutl mlanX sdcmd53rw <func> <address> <mode> <blksize> <blknum> [data1] ... [dataN] |
| |
| where the parameters are, |
| <func>: function number (0/1/2/..) |
| <address>: data address |
| <mode>: byte mode/block mode (0/1) |
| <blksize>: block size (32/64/../512, NA for byte mode) |
| <blknum>: block number or byte number |
| <data1> ... <dataN>: data for write |
| |
| Note: The total data length is block size * block number for block mode |
| or byte number for byte mode. The max data length is 2000-byte. |
| For write the data pattern will be duplicated to data buffer. |
| |
| Examples: |
| mlanutl mlan0 sdcmd53rw 0 0x8000 1 0x40 2 |
| mlanutl mlan0 sdcmd53rw 1 0x10000 0 1 5 0x0a 0x0b 0x0c 0x0d 0x0e |
| |
| sdioclock |
| Turn On(1) or Off(0) the SDIO clock. |
| |
| Usage: |
| mlanutl mlanX sdioclock 1 (on) |
| mlanutl mlanX sdioclock 0 (off) |
| mlanutl mlanX sdioclock (get the current clock state) |
| |
| |
| setuserscan |
| Initiate a customized scan and retrieve the results |
| |
| Usage: |
| mlanutl mlanX setuserscan [ARGS] |
| |
| Where [ARGS]: |
| ssid="[SSID]" specify a SSID filter for the scan |
| group=<group mask> specify the channel group(s) to scan |
| chan=[chan#][band][mode] where band is [a,b,g,e] and mode is |
| blank for unchange, or 'c' for active or 'p' for passive |
| bssid=xx:xx:xx:xx:xx:xx specify a BSSID filter for the scan |
| wc="[WILDCARD SSID]" specify a UNIX pattern matching filter (using * |
| and ?) for SSIDs found in a broadcast probe |
| keep=[0 or 1] keep the previous scan results (1), discard (0) |
| dur=[scan time] time to scan for each channel in milliseconds |
| gap=[gap time] Time gap between two scans in milliseconds |
| probes=[#] number of probe requests to send on each chan |
| for each broadcast probe required and each SSID |
| specific probe required (1-5) |
| bss_type=[1,2,3] BSS type: 1 (Infra), 2(Adhoc), 3(Any) |
| sort_by_ch Sort by channel number in ascending order. |
| Default mode: Sort by Signal Strength in descending order. |
| scan_type=[0,1] ext scan type (0-1) 0: legacy, 1: enhance scan |
| |
| Any combination of the above arguments can be supplied on the command line. |
| If the chan token is absent, a full channel scan will be completed by driver. |
| If the dur or probes tokens are absent, the driver default setting will be |
| used. The bssid and ssid fields, if blank, will produce an unfiltered scan. |
| It's allowed to input multiple ssid/wc entries, the max entry number is 10. |
| The type field will default to 3 (Any) and the keep field will default to 0 |
| (Discard). |
| |
| Examples: |
| 1) Perform an active scan on channels 1, 6, and 11 in the 'g' band: |
| setuserscan chan=1g,6g,11g |
| |
| 2) Perform a passive scan on channel 11 for 20 ms: |
| setuserscan chan=11gp dur=20 |
| |
| 3) Perform an active scan on channels 1, 6, and 11; and a passive scan on |
| channel 36 in the 'a' band: |
| setuserscan chan=1g,6g,11g,36ap |
| |
| 4) Perform an active scan on channel 6 and 36 for specific SSID: |
| setuserscan chan=6g,36a ssid=TestAP1 ssid=TestAP2 |
| |
| 5) Scan all available channels (B/G/N, A bands) for a specific BSSID, keep |
| the current scan table intact, update existing or append new scan data: |
| setuserscan bssid=00:50:43:20:12:82 keep=1 |
| |
| 6) Scan channel 6, for all infrastructure networks, sending two probe |
| requests. Keep the previous scan table intact. Update any duplicate |
| BSSID/SSID matches with the new scan data: |
| setuserscan chan=6g bss_type=1 probes=2 keep=1 |
| |
| 7) Scan channel 1 and 6, for all networks matching the NXP*AP |
| or AP*NXP? patterns and for NXPTst SSID. Generate 3 broadcast |
| probes for the patterns and 3 SSID specific probes for NXPTst on |
| both channel 1 and channel 6. |
| setuserscan chan=1g,6g probes=3 wc="NXP*AP" wc="AP*NXP?" ssid="NXPTst" |
| |
| 8) Scan all the channels for specified band. |
| setuserscan chan=0g |
| 9) Perform active scan for a list of specific BSSIDs |
| setuserscan bssid=00:50:43:20:12:82 bssid=48:e2:44:3f:ec:76 |
| |
| 9) Scan channel 1 and 6, send 3 probe requests, scan each channel for 40 ms |
| with time gap of 50ms between 2 scans |
| setuserscan chan=1g,6g probes=3 dur=40 gap=50 |
| |
| 10) Perform an enhance scan |
| setuserscan scan_type=1 |
| |
| All entries in the scan table (not just the new scan data when keep=1) |
| will be displayed upon completion by use of the getscantable ioctl. |
| cancelscan |
| This command is used to cancel scan |
| Usage: |
| mlanutl mlanX cancelscan |
| sleepparams |
| This command is used to set the sleepclock configurations |
| |
| Usage: |
| mlanutl mlanX sleepparams [<p1> <p2> <p3> <p4> <p5> <p6>] |
| |
| where: |
| p1 is Sleep clock error in ppm (0-65535) |
| p2 is Wakeup offset in usec (0-65535) |
| p3 is Clock stabilization time in usec (0-65535) |
| p4 is Control periodic calibration (0-2) |
| p5 is Control the use of external sleep clock (0-2) |
| p6 is reserved for debug (0-65535) |
| |
| Examples: |
| mlanutl mlan0 sleepparams : Get current sleepclock configuration |
| mlanutl mlan0 sleepparams 10 1000 2000 1 0 128 : Set sleepclock configuration |
| |
| sleeppd |
| This command is used to configure the sleep period of the WLAN device. |
| |
| Usage: |
| mlanutl mlanX sleeppd [<period>] |
| |
| Where the parameter is: |
| period: sleep period in milliseconds. Range 10~60. 0 for disable. |
| |
| Examples: |
| mlanutl mlan0 sleeppd : Get sleep period configuration |
| mlanutl mlan0 sleeppd 10 : Set sleep period to 10 ms |
| |
| sysclock |
| This command is used to set/get system clocks in MHz. |
| The current system clock, configurable system clocks and all of the |
| supported system clocks will be returned if no parameter provided. |
| |
| Examples: |
| mlanutl mlan0 sysclock : Get system clocks |
| 80 80 128 128 128 5 11 16 20 22 32 40 44 64 80 106 128 160 ... |
| (The current system clock is 80 MHz. |
| The configurable system clocks of non-security, security, non-security |
| A-MPDU and security A-MPDU are 80 MHz, 128 MHz, 128 MHz and 128 MHz. |
| The supported system clocks are 5 MHz, 11 MHz, ..., 160 MHz, 182 MHz, |
| 213 MHz, 256 MHz, 320 Mhz, 366 MHz , ... . the Max system clocks is different |
| for different chips, you could use this command to get the supported system clock) |
| |
| mlanutl mlanX sysclock 80 : Set system clock in non-security mode |
| to 80 MHz, no change for others |
| mlanutl mlanX sysclock 0 0 128 : Set system clock in non-security A-MPDU |
| mode to 128 MHz, no changes for others |
| |
| tcpackenh |
| This command is used to set/get TCP ACK enhancement mode. |
| |
| Usage: |
| mlanutl mlanX tcpackenh [l] [m] |
| |
| where |
| [l] is a control to set TCP ACK enhancement mode |
| 1 -- Enable TCP ACK enhancement (default) |
| 0 -- Disable TCP ACK enhancement |
| [m] is to configure TCP ACK max hold number |
| default value is 9, which means driver could hold up to 9 TCP ACK and |
| only send the last one to peer. |
| |
| Examples: |
| mlanutl mlan0 tcpackenh : Display TCP ACK enhancement |
| mlanutl mlan0 tcpackenh 1 : Enable TCP ACK enhancement |
| mlanutl mlan0 tcpackenh 0 : Disable TCP ACK enhancement |
| mlanutl mlan0 tcpackenh 1 1 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 50% |
| mlanutl mlan0 tcpackenh 1 2 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 67% |
| mlanutl mlan0 tcpackenh 1 3 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 75% |
| mlanutl mlan0 tcpackenh 1 4 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 80% |
| mlanutl mlan0 tcpackenh 1 5 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 83% |
| mlanutl mlan0 tcpackenh 1 6 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 85% |
| mlanutl mlan0 tcpackenh 1 7 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 87.5% |
| mlanutl mlan0 tcpackenh 1 8 : Enable TCP ACK enhancement and |
| configure TCP ACK drop percentage to 88.8% |
| |
| host_tdls_config |
| This command is used to support channel switch and uapsd for host based tdls |
| |
| Usage: |
| mlanutl mlanX host_tdls_config <host_tdls.conf> |
| |
| |
| Where the parameter is: |
| host_tdls.conf: The configuration file specifying to enable/disable uapsd/cs and related parameters. |
| |
| Examples: |
| mlanutl mlan0 host_tdls_config config/host_tdls.conf |
| : enable or disable uapsd/cs, config the channel related ie, based on the configuration file. |
| tdls_channel_switch |
| This command is used to send TDLS channel switch request. |
| |
| Usage: |
| mlanutl mlanX tdls_channel_switch <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file for sending TDLS channel switch command. |
| |
| Examples: |
| mlanutl mlan0 tdls_channel_switch config/tdls.conf |
| : Send TDLS channel switch command, based on the configuration file. |
| |
| tdls_config |
| This command is used to enable/disable TDLS on device. |
| |
| Usage: |
| mlanutl mlanX tdls_config <0/1> |
| |
| Where the parameter is: |
| 0: Enable TDLS. |
| 1: Disable TDLS. |
| |
| Examples: |
| mlanutl mlan0 tdls_config 0 : Disable TDLS |
| mlanutl mlan0 tdls_config 1 : Enable TDLS |
| |
| tdls_cs_params |
| This command is used to set TDLS channel switch params |
| |
| Usage: |
| mlanutl mlanX tdls_cs_params <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file specifying the TDLS channel switch params. |
| |
| Examples: |
| mlanutl mlan0 tdls_cs_params config/tdls.conf |
| : Set TDLS channel switch params, based on the configuration file. |
| |
| tdls_debug |
| This command is used for FW debug functionality and tests. |
| |
| tdls_disable_cs |
| This command is used to disable TDLS channel switch |
| |
| Usage: |
| mlanutl mlanX tdls_disable_cs <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file to disable TDLS channel switch. |
| |
| Examples: |
| mlanutl mlan0 tdls_disable_cs config/tdls.conf |
| : Disable TDLS channel switch, based on the configuration file. |
| |
| tdls_discovery |
| This command is used to request TDLS discovery. |
| |
| Usage: |
| mlanutl mlanX tdls_discovery <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file to request TDLS discovery. |
| |
| Examples: |
| mlanutl mlan0 tdls_discovery config/tdls.conf |
| : Request TDLS discovery based on the configuration file. |
| |
| tdls_link_status [peer_mac_address] |
| This command is used to get link information about TDLS links or |
| a TDLS link correponding to peer mac address. |
| |
| Usage: |
| mlanutl mlanX tdls_link_status <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file to send TDLS command to get current link status. |
| |
| Examples: |
| mlanutl mlan0 tdls_link_status config/tdls.conf |
| : Send TDLS command to get current link status based on the configuration file. |
| |
| tdls_powermode |
| This command is used to send TDLS powermode request. |
| |
| Usage: |
| mlanutl mlanX tdls_powermode <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file for sending TDLS powermode command. |
| |
| Examples: |
| mlanutl mlan0 tdls_powermode config/tdls.conf |
| : Send TDLS powermode (either 0:Active, 1:PowerSave) command, based on the configuration file. |
| |
| tdls_setinfo |
| This command is used for setting the capabilities of the TDLS station. |
| |
| Usage: |
| mlanutl mlanX tdls_setinfo <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file specifying the capabilities of the TDLS station. |
| |
| Examples: |
| mlanutl mlan0 tdls_setinfo config/tdls.conf |
| : Set capabilities of the TDLS station, based on the configuration file. |
| |
| tdls_setup |
| This command is used to send TDLS setup request. |
| |
| Usage: |
| mlanutl mlanX tdls_setup <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file for sending TDLS setup request. |
| |
| Examples: |
| mlanutl mlan0 tdls_setup config/tdls.conf |
| : Send TDLS setup request, based on the configuration file. |
| |
| tdls_stop_channel_switch |
| This command is used to send stop TDLS channel switch request. |
| |
| Usage: |
| mlanutl mlanX tdls_stop_channel_switch <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file for sending stop TDLS channel switch command. |
| |
| Examples: |
| mlanutl mlan0 tdls_stop_channel_switch config/tdls.conf |
| : Send stop TDLS channel switch command, based on the configuration file. |
| |
| tdls_teardown |
| This command is used to send TDLS teardown request. |
| |
| Usage: |
| mlanutl mlanX tdls_teardown <tdls.conf> |
| |
| Where the parameter is: |
| tdls.conf: The configuration file for requesting teardown of TDLS link. |
| |
| Examples: |
| mlanutl mlan0 tdls_teardown config/tdls.conf |
| : Request teardown of TDLS link, based on the configuration file. |
| |
| hal_phy_cfg |
| This command is used to set the hal/phy related config parameters |
| |
| Usage: |
| mlanutl mlanX/uapX hal_phy_cfg <hal_phy_cfg.conf> |
| |
| Where the parameter is: |
| hal_phy_cfg.conf: The configuration file specifying to the values of hal/phy related config parameters |
| |
| Examples: |
| mlanutl mlan0 hal_phy_cfg config/hal_phy_cfg.conf |
| : to enable or disable 11b_psd_mask the file would contain following paramters |
| hal_phy_cfg{ |
| 11b_psd_mask_cfg=1 # 1: 11b_psd_mask_enable, 0: 11b_psd_mask_disable |
| } |
| |
| thermal |
| This command is used to get the current thermal reading. |
| |
| Examples: |
| mlanutl mlan0 thermal : Get thermal reading |
| |
| ts_status |
| This command queries the FW for the status of TSIDs 0 through 7 |
| configured via call admission control and displays the results in a |
| table. |
| |
| Usage: |
| mlanutl mlanX ts_status |
| |
| tsf |
| Set/Get the TSF timer value for the station. Station maintains a TSF timer with |
| modulus 2^64 counting in increments of microseconds. |
| |
| Usage: |
| mlanutl mlanX/uapX tsf [t] |
| |
| where, |
| [t] : 64bit timestamp value in microseconds |
| |
| Examples: |
| mlanutl mlan0 tsf : Get timestamp |
| mlanutl uap0 tsf 669468581993 : Set timestamp |
| |
| txaggrctrl |
| This command is used to enable/disable TX AMPDU on infra link when TDLS link is established |
| |
| Usage: |
| mlanutl mlanX txaggrctrl [m] |
| |
| Where: |
| [m]: 1 to enable TX AMPDU on infra link; 0 to disable TX AMPDU on infra link |
| |
| Examples: |
| mlanutl mlan0 txaggrctrl : Get current TX AMPDU status on infra link |
| mlanutl mlan0 txaggrctrl 0 : Disable TX AMPDU on infra link |
| mlanutl mlan0 txaggrctrl 1 : Enable TX AMPDU on infra link |
| |
| Note: |
| The set command only works when TDLS link is established. |
| |
| txbufcfg |
| This command can be used to get current buffer size. |
| |
| eg: |
| mlanutl mlanX txbufcfg - This will display the current buffer size. |
| |
| Note:- The actual tx buf size will depends on AP's capability and max transmit buffer size. |
| |
| aggrctrl |
| This command is used to set/get aggregation parameters. |
| |
| Usage: |
| mlanutl mlanX aggrctrl [l] |
| |
| where the parameter: |
| [l]: Enable (1) or disable (0) Tx aggregation |
| |
| Examples: |
| mlanutl mlan0 aggrctrl : Display aggregation configurations |
| mlanutl mlan0 aggrctrl 0 : Disable Tx aggregation |
| mlanutl mlan0 aggrctrl 1 : Enable Tx aggregation |
| |
| usbaggrctrl |
| This command is used to set/get USB aggregation parameters. |
| |
| Usage: |
| mlanutl mlanX usbaggrctrl [l] [m] [n] [o] [p] [q] [r] [s] |
| |
| where the parameter: |
| [l]: Enable (1) or disable (0) Tx aggregation |
| [m]: Enable (1) or disable (0) Rx aggregation |
| [n]: Tx aggregation max size/number |
| For number based aggregation, the values supported are |
| - 2, 4, 8, 16 |
| For size based aggregation, the number supported are |
| - 4096, 8192, 16384, 32768 |
| [o]: Rx aggregation max size/number |
| For number based deaggregation, the values supported are |
| - 2, 4, 8, 16 |
| For size based deaggregation, the number supported are |
| - 4096, 8192, 16384, 32768 |
| [p]: Tx aggregation alignment |
| The value must be 2048, 4096, 8192 etc. |
| [q]: Rx aggregation alignment |
| The value must be 512, 1024, 2048, 4096, 8192 etc. |
| [r]: Tx aggregation timeout |
| Timeout value in us, 0 for disabled, 0xFFFF for dynamic timeout |
| and 1-10000 are valid timeout value |
| [s]: Rx aggregation timeout |
| Timeout value in us, 0 for disabled |
| |
| Examples: |
| mlanutl mlan0 usbaggrctrl : Display USB aggregation configurations |
| mlanutl mlan0 usbaggrctrl 0 0 : Disable both Tx and Rx aggregation |
| mlanutl mlan0 usbaggrctrl 1 1 4 8 2048 512 1000 200 : Enable both Tx and Rx aggregation |
| |
| usbresume |
| This command is used to resume the device from suspend mode. |
| Note: It's only valid on kernel 2.6.24 or later. |
| |
| usbsuspend |
| This command is used to put device to suspend mode. |
| Note: It's only valid on kernel 2.6.24 or later. |
| |
| opermodecfg |
| This command is used to set and get 11ac Operating Mode Notification configuration. |
| |
| where <m> is <bw> |
| <bw> - This is the channel width setting for the opermodecfg |
| 1: 20MHz |
| 2: 40MHz |
| 3: 80MHz |
| 4: 160MHz or 80+80MHz |
| |
| where <n> is <nss> |
| <nss> - This parameter specifies the nss that the STA can receive. |
| 1: NSS1 |
| 2: NSS2 |
| 3: NSS3 |
| 4: NSS4 |
| 5: NSS5 |
| 6: NSS6 |
| 7: NSS7 |
| 8: NSS8 |
| |
| wakeupreason |
| This command is used to get the host sleep wakeup reason. |
| |
| Usage: |
| mlanutl mlanX wakeupreason |
| mlanutl uapX wakeupreason |
| Examples: |
| mlanutl mlan0 wakeupreason : Get the host sleep wakeup reason |
| mlanutl uap0 wakeupreason : Get the host sleep wakeup reason |
| 0: unknown |
| 1: Broadcast data matched |
| 2: Multicast data matched |
| 3: Unicast data matched |
| 4: Maskable event matched |
| 5. Non-maskable event matched |
| 6: Non-maskable condition matched (EAPoL rekey) |
| 7: Magic pattern matched |
| 8: Control frame matched |
| 9: Management frame matched |
| Others: reserved. (0) |
| |
| warmreset |
| This command is used for warm reset of the interface. |
| |
| Usage: |
| mlanutl mlanX warmreset |
| |
| wpssession |
| This command is used to control wps session. No argument is used to get. |
| |
| where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 wpssession 1 : Enable wpssession |
| mlanutl mlan0 wpssession : Get wpssession status |
| |
| wmmcfg |
| This command is used to control WMM. No argument is used to get. |
| |
| where value of n is: |
| 0 -- Disable |
| 1 -- Enable |
| |
| Examples: |
| mlanutl mlan0 wmmcfg 1 : Enable WMM |
| mlanutl mlan0 wmmcfg : Get WMM status |
| |
| wmmparamcfg |
| This command is used to configure WMM paramameters. |
| |
| Usage: |
| mlanutl mlanX wmmparamcfg [AC_BE AIFSN ECW_MAX ECW_MIN TX_OP] |
| [AC_BK AIFSN ECW_MAX ECW_MIN TX_OP] |
| [AC_VI AIFSN ECW_MAX ECW_MIN TX_OP] |
| [AC_VO AIFSN ECW_MAX ECW_MIN TX_OP] |
| |
| The supported option are: |
| AC_BE: 0 |
| AC_BK: 1 |
| AC_VI: 2 |
| AC_V0: 3 |
| AIFSN: AIFSN value |
| ECW_MAX: ECW max |
| ECW_MIN: ECW min |
| TX_OP: TXOP Limit |
| empty - Get current WMM parameters |
| |
| Example: |
| mlanutl mlanX wmmparamcfg 0 3 10 4 0 |
| Set AC_BE with AIFSN 3, ECW_MAX 10, ECW_MIN 4 and TXOP 0 |
| |
| mlanutl mlanX wmmparamcfg 1 7 10 4 0 |
| Set AC_BK with AIFSN 7, ECW_MAX 10, ECW_MIN 4 and TXOP 0 |
| |
| mlanutl mlanX wmmparamcfg 2 2 4 3 94 |
| Set AC_VI with AIFSN 2, ECW_MAX 4, ECW_MIN 3 and TXOP 94 |
| |
| mlanutl mlanX wmmparamcfg 3 2 3 2 47 |
| Set AC_VO with AIFSN 2, ECW_MAX 3, ECW_MIN 2 and TXOP 47 |
| |
| mlanutl mlanX wmmparamcfg |
| Get current WMM parameters |
| |
| mlanutl mlanX wmmparamcfg 0 3 10 4 0 1 7 10 4 0 2 2 4 3 94 3 2 3 2 47 |
| Set AC_BE with AIFSN 3, ECW_MAX 10, ECW_MIN 4 and TXOP 0 |
| Set AC_BK with AIFSN 7, ECW_MAX 10, ECW_MIN 4 and TXOP 0 |
| Set AC_VI with AIFSN 2, ECW_MAX 4, ECW_MIN 3 and TXOP 94 |
| Set AC_VO with AIFSN 2, ECW_MAX 3, ECW_MIN 2 and TXOP 47 |
| |
| wwscfg |
| This command is used to set/get the WWS (World Wide Safe) mode. |
| |
| where value of m is: |
| 0 -- Disable WWS mode (default) |
| 1 -- Enable WWS mode |
| |
| Examples: |
| mlanutl mlan0 wwscfg : Get WWS mode |
| mlanutl mlan0 wwscfg 1 : Enable WWS mode |
| mlanutl mlan0 wwscfg 0 : Disable WWS mode |
| |
| mc_cfg |
| This command is used to set/get the channel time. |
| |
| Usage: |
| mlanutl mlanX mc_cfg [n] |
| |
| where <n> : Channel time in microseconds. |
| |
| Examples: |
| mlanutl mlanX mc_cfg : Get Channel time and buffer weight. |
| mlanutl mlanX mc_cfg 10000 : Set Channel time to 10000us. |
| |
| mc_policy |
| This command is used to set/get the multi-channel policy. |
| Note: This is a device specific command. Hence, setting on one interface is |
| reflected on all other interfaces. |
| |
| Usage: |
| mlanutl mlanX mc_policy [n] |
| |
| where <n> : Multi-channel policy |
| |
| Examples: |
| mlanutl mlanX mc_policy : Get multi-channel policy setting. |
| mlanutl mlanX mc_policy 1 : Set multi-channel policy to 1. |
| mlanutl mlanX mc_policy 0 : Disable multi-channel policy |
| |
| mc_cfg_ext |
| This command is used to set/get the drcs parameters. |
| |
| Usage: |
| mlanutl mlanX mc_cfg_ext [c] [s] [u] [m] <a> <b> <d> <e> |
| |
| where: |
| channel index0: |
| [c] : chantime(in TU) |
| [s] : switchtime(in TU) |
| [u] : undozetime(in TU) |
| [m] : mode :0x0 --- PM1(default) |
| 0x1 --- Null2Self |
| channel index1: |
| <a> : chantime(in TU) |
| <b> : switchtime(in TU) |
| <d> : undozetime(in TU) |
| <e> : mode :0x0 --- PM1(default) |
| 0x1 --- Null2Self |
| Note: |
| channel index0: the first channel |
| channel index1: the second channel |
| undozetime should be less than other channel's switchtime |
| If want to set two channels the same parameters, just ignore the last four parameters and |
| use [c] [s] [u] [m] to set. |
| Examples: |
| mlanutl mlanX mc_cfg_ext : Get the drcs parameters for two channels. |
| mlanutl mlanX mc_cfg_ext 15 10 5 0 : Set two channels:channeltime 15TU, switchtime 10TU, undozetime 5TU, mode PM1 |
| mlanutl mlanX mc_cfg_ext 15 10 5 0 25 15 9 0 : Set channel index0: channeltime 17TU, switchtime 10TU, undozetime 5TU, mode PM1; |
| set channel index1: channeltime 25TU, switchtime 15TU, undozetime 9TU, mode PM1. |
| |
| cfg_noa |
| This is used to get/set P2P NoA (Notice of Absence) parameters only for P2P GO. |
| |
| Usage: |
| mlanutl p2pX cfg_noa [h] [i] [j] [k] [l] |
| |
| where: |
| [h] : noa_enable : 1/0 Set to 1 to enable NoA, 0 to disable NoA. |
| [i] : index : 0 - 255 Identifies an instance of NoA timing. |
| [j] : count : 1 - 255 Indicates the number of absence intervals. |
| 255 means a continuous schedule. |
| [k] : duration : Indicates the maximum duration in units of microseconds |
| that P2P GO can remain absent following the start of |
| a NoA interval. |
| [l] : interval : Indicates the length of the NoA interval in units of |
| microseconds. |
| |
| Examples: |
| mlanutl p2pX cfg_noa : Get noa configuration. |
| mlanutl p2pX cfg_noa 1 1 255 50 100 : Set noa configuration. |
| |
| cfg_opp_ps |
| This is used to get/set P2P OPP-PS parameters only for P2P GO. |
| |
| Usage: |
| mlanutl p2pX cfg_opp_ps [m] [n] |
| |
| where: |
| [m] : ps_enable : 1/0 Set to 1 to indicate P2P GO is using opportunistic |
| power save. Set to 0 if opportunistic power save is disabled. |
| [n] : ct_window : A period of time in TU after a TBTT during which P2P GO |
| is present. 0 indicates that there shall be no |
| CTWindow (Client Traffic Window). |
| |
| Examples: |
| mlanutl p2pX cfg_opp_ps : Get noa configuration. |
| mlanutl p2pX cfg_opp_ps 1 7 : Set noa configuration. |
| |
| get_sensor_temp |
| This command is used to get SOC temperature |
| Usage: |
| mlanutl mlanX get_sensor_temp |
| |
| indrstcfg |
| This command is used to set/ get independent reset mode configuration |
| |
| Usage : |
| mlanutl <interface> indrstcfg <ir_mode> [gpio_pin] |
| |
| interface : mlanX, uapX |
| ir_mode : 0 -- Disable |
| 1 -- Enable out band reset, disable in band |
| 2 -- Enable in band, disable out band |
| gpio_pin : 255 -- Default pin for reset |
| any other number for changing the gpio for reset. |
| |
| Example : |
| mlanutl mlan0 indrstcfg 1 255 : Set default pin on interface mlan0 as reset pin |
| mlanutl mlan0 indrstcfg 0 : Disable the gpio 17 as reset pin on interface mlan0 |
| mlanutl mlan0 indrstcfg : Get the status and the pin used for reset pin |
| mlanutl mlan0 indrstcfg 2 : Enable in band reset mode |
| |
| ctrldeauth |
| This command is used to set/get firmware ctrldeauth setting |
| Usage : |
| mlanutl uapX ctrldeauth <n> |
| |
| Where value of n is : |
| 0 -- Firmware will use default behavior |
| 1 -- Firmware will not send deauth packet when uap move to another channel. |
| |
| Example : |
| mlanutl uap0 ctrldeauth : Get current setting |
| mlanutl uap0 ctrldeauth : Firmware will not send deauth packet when uap move to different channel. |
| |
| robustcoex |
| This command is used to set robust coex. |
| |
| Usage : |
| mlanutl <interface> robustcoex <gpiocfg> [Enable/Disable] [gpionum] [gpiopolarity] |
| Enable/Disable : 0 -- Disable ; 1 -- Enable |
| gpionum : Number of gpio |
| gpiopolarity : polarity of gpio |
| |
| Example : |
| mlanutl mlan0 robustcoex gpiocfg 1 4 1 : Enable robustcoex gpio, set gpionum to 4 and gpiopolarity to 1 |
| mlanutl mlan0 robustcoex gpiocfg 0 : Disable robustcoex gpio |
| |
| cwmode |
| This command is used to set Cont. Tx/Wave mode. |
| |
| Usage: |
| mlanutl <interface> cwmode config/cwmode.conf |
| interface: mlanX |
| cwmode.conf: This config file specifies whether to enable/disable Cont Tx/Wave mode. |
| User can specify parameters like Channel, datarate, BW, Channel Offset, Band. |
| Detailed information about parameters is mentioned in the conf file. |
| Example: |
| mlanutl mlan0 cwmode config/cwmode.conf : Enable/Disable Cont Tx/Wave mode. |
| mlanutl mlan0 cwmode : Get current Tx mode |
| |
| bootsleep |
| This command is used to set and get boot sleep configure. |
| |
| Usage : |
| mlanutl mlanX/uapX bootsleep <enable> |
| <enable> : enable boot sleep |
| : 0 - disable boot sleep |
| : 1 - enable boot sleep |
| |
| Example : |
| mlanutl mlan0/uap0 bootsleep 1 : Enable boot sleep |
| mlanutl mlan0/uap0 bootsleep : Get boot sleep configure |
| |
| ssu |
| Collect spectral analysis data and save them into /data/ssudump.txt |
| |
| Usage : |
| mlanutl mlanX ssu [mode] [ssu file] |
| |
| mode : 2 -- Enable ssu and use FW default ssu parameter |
| ssu file : file to config ssu parameter |
| |
| Example : |
| mlanutl mlan0 ssu :Enable SSU and use driver default ssu parameter |
| mlanutl mlan0 ssu config/ssu.conf :Enable SSU and use ssu parameter from ssu.conf |
| mlanutl mlan0 ssu 2 :Enable SSU and use FW default ssu parameter |
| |
| csi |
| Enable/disable channel state information collection |
| |
| Usage : |
| mlanutl mlanX csi <disable/enable (config file)> |
| disable : 0 |
| enable : config file with csi filters |
| |
| Example : |
| mlanutl mlan0 csi config/csi.conf : Enable CSI |
| mlanutl mlan0 csi 0 : Disable CSI |
| |
| arb |
| Set HW ARB mode |
| The command needs to be issued before association. |
| |
| Usage: |
| mlanutl mlanX arb [mode] |
| |
| where the parameter is: |
| [mode]: |
| 0: arb mode 0 (default) |
| 1: arb mode 1 |
| 2: arb mode 2 |
| 3: arb mode 3 (Improve TX throughput) |
| 4: arb mode 4 (Improve RX throughput) |
| |
| Example : |
| mlanutl mlan0 arb 1 : Set HW ARB mode 1 |
| |
| dmcs |
| This command is used to config DMCS or get DMCS status. |
| |
| Usage: |
| mlanutl mlanX dmcs <subcmd> [value] |
| |
| <subcmd = 0> : config mapping policy |
| disable dynamic mapping when [value = 0] |
| enable dynamic mapping when [value = 1] |
| <subcmd = 1> : get DMCS status |
| |
| Example : |
| mlanutl mlan0 dmcs 0 1 : Enable dynamic mapping |
| mlanutl mlan0 dmcs 0 0 : Disable dynamic mapping |
| mlanutl mlan0 dmcs 1 : Get DMCS status |
| |
| range_ext |
| This command is used to config range extension mode. |
| |
| Usage: |
| mlanutl mlanX/uapX range_ext [mode] |
| |
| where the parameter is: |
| [mode]: |
| 0: Default Mode(Auto Rate) |
| 1: HE ER+DCM Mode |
| 2: Legacy Mode(1 Mbps Rate) |
| |
| Example: |
| mlanutl mlan0 range_ext : get range extension mode |
| mlanutl mlan0 range_ext 1 : set range extension mode to HE ER+DCM mode |
| |
| twt_setup |
| This command is used to config TWT setup parameters using conf file. |
| |
| Usage: |
| mlanutl mlanX twt_setup [conf file] |
| |
| Example: |
| mlanutl mlan0 twt_setup config/twt.conf |
| |
| twt_teardown |
| This command is used to config TWT teardown parameters using conf file. |
| |
| Usage: |
| mlanutl mlanX twt_teardown [conf file] |
| |
| Example: |
| mlanutl mlan0 twt_teardown config/twt.conf |
| |
| rx_abort_cfg |
| This command is used to set/get static rx abort config for pkt having |
| weaker RSSI than threshold. This threshold will be overwritten on starting |
| dynamic rx abort cfg ext. |
| |
| Usage: |
| mlanutl <interface> rx_abort_cfg [enable] [rssi_threshold] |
| |
| Where the parameters are: |
| <interface> : mlanX, |
| uapX |
| [enable] : 0 - Disable Rx abort |
| 1 - Enable Rx abort of pkt having weak RSSI |
| [rssi_threshold] : weak RSSI pkt threshold in dBm (absolute value) |
| (default = 70) |
| |
| Examples: |
| mlanutl mlan0 rx_abort_cfg |
| - Display current rx abort configuration |
| mlanutl uap0 rx_abort_cfg 1 60 |
| - Enable rx abort and set weak RSSI Threshold to -60 dBm |
| mlanutl mlan0 rx_abort_cfg 1 40 |
| - Enable rx abort and set weak RSSI Threshold to -40 dBm |
| mlanutl mlan0 rx_abort_cfg 0 |
| - Disable rx abort |
| |
| rx_abort_cfg_ext |
| This command is used to set/get dynamic rx abort config. This will set |
| threshold based on minimum of ceiling rssi threshold and the weakest |
| RSSI among all connected peers. Margin can be specified as an offset to |
| this threshold. Default margin is set to -10 dBm. Ceiling rssi threshold |
| can be changed by specifying. Default ceil is set to -70 dBm. |
| This will be disabled on enabling fixed rx abort (rx_abort_cfg) |
| |
| Note: This dynamic rx abort mode is enabled by default. |
| |
| Usage: |
| mlanutl <interface> rx_abort_cfg_ext [enable] [margin ceil_thresh] |
| |
| Where the parameters are: |
| <interface> : mlanX, |
| uapX |
| [enable] : 0 - Disable Rx abort |
| 1 - Enable Rx abort of pkt having weak RSSI |
| [margin] : rssi margin in dBm (absolute val) |
| (default = 10) |
| [ceil_thresh] : ceiling weak RSSI pkt threshold in dBm |
| (absolute value) (default = 70) |
| |
| Examples: |
| mlanutl mlan0 rx_abort_cfg_ext |
| - Display current rx abort configuration |
| mlanutl uap0 rx_abort_cfg_ext 1 10 60 |
| - Enable dynamic rx abort, set margin to -10 dBm and set ceil |
| RSSI Threshold to -60 dBm |
| mlanutl mlan0 rx_abort_cfg_ext 1 5 50 |
| - Enable dynamic rx abort, set margin to -5 dBm and set ceil |
| RSSI Threshold to -50 dBm |
| mlanutl mlan0 rx_abort_cfg_ext 0 |
| - Disable dynamic rx abort |
| |
| tx_ampdu_prot_mode |
| This command is used to set either RTS/CTS or CTS2SELF protection mechanism |
| in MAC, for aggregated Tx QoS data frames. RTS/CTS is enabled by default. |
| |
| Usage: |
| mlanutl <interface> tx_ampdu_prot_mode [mode] |
| |
| Where the parameters are: |
| <interface> : mlanX, |
| uapX |
| [mode] : 0 - Set RTS/CTS mode |
| 1 - Set CTS2SELF mode |
| 2 - Disable Protection mode |
| 3 - Set Dynamic RTS/CTS mode |
| |
| Examples: |
| mlanutl mlan0 tx_ampdu_prot_mode |
| - Get currently set protection mode for Tx AMPDU |
| mlanutl mlan0 tx_ampdu_prot_mode 1 |
| - Set protection mode for Tx AMPDU to CTS2SELF |
| |
| rate_adapt_cfg |
| This command is used to switch between SR rateadapt and Legacy rateadapt. |
| FW default Algorithm is Legacy rateadapt |
| when SR rateadapt is enabled then it is used to set static threshold based |
| or dynamic noise based rate adaptation and set the timer interval to evaluate |
| sw rate adaptation.For static mode, low and high thresholds for Tx aggregated |
| pkt success rate should be configured. The Tx rate will decrease if success rate |
| goes lower than LOW_THRESH, will increase if it goes beyond HIGH_THRESH, and will |
| remain the same when success rate is between these thresholds.To set dynamic mode, |
| specify 0xff for both low and high thresh. |
| |
| Note: config can be set only before associating with an external AP |
| when in STA mode, or before starting bss when in uAP mode |
| |
| Usage: |
| mlanutl <interface> rate_adapt_cfg |
| [sr_rateadapt low_thresh high_thresh timer_interval] |
| |
| Where the parameters are: |
| <interface> : mlanX, |
| uapX |
| [sr_rateadapt] : SR Rateadapt or Legacy Rateadapt |
| [low_thresh] : lower tx success rate threshold |
| [high_thresh] : higher tx success rate threshold |
| [timer_interval] : interval to evaluate tx rate in sw in multiples |
| of 10 (ms) |
| |
| Examples: |
| mlanutl mlan0 rate_adapt_cfg |
| - Display SR rateadapt or Legacy rateadapt enabled |
| - Display current rate adapt configuration if SR rateadapt is enabled. |
| mlanutl uap0 rate_adapt_cfg 1 60 80 10 |
| - set lower Tx success rate threshold to 60%, higher to 80% |
| and evaluate tx rate every 100 ms (i.e 10 * 10 = 100 ms) |
| when SR Rateadapt is enabled. |
| mlanutl mlan0 rateadapt_cfg 0 |
| - switch to Legacy rateadapt. |
| mlanutl mlan0 rateadapt_cfg 1 |
| - switch to SR rateadapt. |
| Fw default is dynamic Success threshold enabled |
| with 100 ms linkadapt timer. |
| mlanutl mlan0 rate_adapt_cfg 1 50 70 50 |
| - set lower Tx success rate threshold to 50%, higher to 70% |
| and evaluate tx rate every 500 ms (i.e 50 * 10 = 500 ms) |
| when SR Rateadapt is enabled. |
| mlanutl mlan0 rate_adapt_cfg 1 0xff 0xff 10 |
| - set dynamic environment noise based mode and evaluate tx rate |
| every 100 ms (i.e 10 * 10 = 100 ms) |
| when SR Rateadapt is enabled. |
| |
| cck_desense_cfg |
| This command is used to configure CCK (802.11b) Desensitization RSSI |
| threshold. All CCK traffic beyond this threshold will be ignored, resulting |
| in higher Tx throughput. Threshold value is in absolute value of rssi in |
| dBm. In dynamic and enhanced modes, cck desense will be turned on only in |
| presence of an active connection and the effective CCK desense RSSI |
| threshold will be updated every rateadapt interval, based on: |
| min{ceil_thresh, [min RSSI among all connected peers] - margin} |
| |
| Further, for dynamic enhanced mode, CCK desense will be turned on/off based |
| on environment noise condition and ongoing Tx traffic rate. In this mode, |
| CCK desense will also be turned off periodically in order to allow 802.11b |
| Rx frames from Ext-AP, if rx rssi becomes weaker than the current threshold |
| or when in uAP mode, frames from clients which attempt to connect with the |
| uAP, but have weaker RSSI than the set threshold. |
| Turn on and off intervals are specified in terms of rateadapt intervals. |
| Please note that in this mode, if dynamic Rx Abort is enabled, then it |
| will turn on/off in sync with cck desense. |
| |
| Usage: |
| mlanutl <interface> cck_desense_cfg [mode] [margin ceil_thresh] |
| [num_on_intervals num_off_intervals] |
| |
| Where the parameters are: |
| <interface> : mlanX, |
| uapX |
| [mode] : 0 - Disable cck desense |
| 1 - Enable dynamic cck desense mode |
| 2 - Enable dynamic enhanced cck desense mode |
| [margin] : rssi margin in dBm (absolute val) |
| (default = 10) |
| [ceil_thresh] : ceiling weak RSSI pkt threshold in dBm |
| (absolute value) (default = 70) |
| [num_on_intervals] : number of rateadapt intervals to keep cck |
| desense "on" [for mode 2 only] (default = 20) |
| [num_off_intervals]: number of rateadapt intervals to keep cck |
| desense "off" [for mode 2 only] (default = 3) |
| |
| Examples: |
| mlanutl mlan0 cck_desense_cfg |
| - Display current cck desense configuration |
| mlanutl uap0 cck_desense_cfg 1 10 70 |
| - Set dynamic mode, margin to -10 dBm and ceil RSSI Threshold to |
| -70 dBm |
| mlanutl uap0 cck_desense_cfg 2 10 60 30 5 |
| - Set dynamic enhanced mode, margin to -10 dBm, ceil RSSI Threshold |
| to -60 dBm, num on intervals to 30 and num off intervals to 5. |
| mlanutl mlan0 cck_desense_cfg 1 10 50 |
| - Set dynamic mode, margin to -10 dBm and ceil RSSI Threshold to |
| -50 dBm |
| mlanutl mlan0 cck_desense_cfg 2 5 60 |
| - Set dynamic enhanced mode, set margin to -5 dBm, set ceil RSSI |
| Threshold to -60 dBm, and retain previous num on/off intervals |
| setting. |
| mlanutl mlan0 cck_desense_cfg 0 |
| - Disable cck desense |
| |
| lpm |
| This command is used to configure low power mode. |
| |
| Usage: |
| mlanutl mlanX/uapX lpm [mode] |
| |
| Where the paramter is: |
| [mode] : low power mode 0, 1, 2, 3 |
| |
| Examples: |
| mlanutl mlan0 lpm Get low power mode |
| mlanutl mlan0 lpm 1 Set low power mode to 1 |
| |
| dot11mc_unassoc_ftm_cfg |
| This command is used to enable or disable the configuration for |
| DOT11MC FTM frames exchanges in un-associated state for STA or uAP |
| |
| Usage: |
| mlanutl <interface> dot11mc_unassoc_ftm_cfg [enable] |
| |
| Where the parameters are: |
| <interface> : mlanX, |
| uapX |
| [enable] : 0 - Disable unassociated state FTM |
| 1 - Enable unassociated state FTM |
| |
| Examples: |
| mlanutl mlan0 dot11mc_unassoc_ftm_cfg |
| - Get current state of unassociated state FTM cfg |
| mlanutl mlan0 dot11mc_unassoc_ftm_cfg 1 |
| - Set the unassociated state FTM cfg to Enabled |
| |
| tp_state |
| This command is used to collect throughput result at different |
| drop points. |
| |
| Usage: |
| mlanutl mlanX tp_state [mode] [drop_point] |
| |
| Where the parameter is: |
| [mode] : enable/disable tp_state collecting |
| 0 - Disable 1 - Enable |
| [drop_point] : Request driver to drop tx packets at this point |
| 0 - Reserved for Tx |
| 1 - Kernel sends packets with .ndo_start_xmit |
| 2 - Before adding tx packets into queues |
| 3 - After main process handles tx packets |
| 4 - Before attaching pkts to bus |
| 5 - Rx PCIE interrupt Recv Data before enqueue to list |
| 6 - Rx after dequeue from list |
| 7 - Rx before de-amsdu |
| 8 - Rx before send to kernel |
| 9 - Reserved for Rx |
| Examples: |
| mlanutl mlan0 tp_state 1 1 Collect throughput result and drop tx pkts at point 1. |
| mlanutl mlan0 tp_state Get throughput results (only works with enable mode). |
| mlanutl mlan0 tp_state 0 Disable throughput accounting. |
| mlanutl mlan0 tp_state 1 0xff Just for reading TX/RX accounting, no pkts drop |
| |
| clocksync |
| This command is used to set and get WIFI TSF based clock sync setting |
| |
| Usage: |
| mlanutl mlanX/uapX clocksync [j][k] [l] [m] [n] |
| |
| where |
| [j] mode |
| <mode> - This parameter use to configure GPIO TSF latch mode |
| 0: GPIO level |
| 1: GPIO toggle |
| 2: GPIO toggle on Next Beacon. |
| [k] role |
| <role> |
| 0: when mode set to 0 or 1 |
| 1: AP |
| 2: STA |
| [l] gpio pin number |
| [m] GPIO Level/Toggle |
| mode = 0 |
| 0: low 1: high |
| mode = 1 or 2 |
| 0: low to high |
| 1: high to low |
| [n] GPIO pulse width |
| mode = 0, reserved, set to 0 |
| mode 1 or 2 |
| 0: GPIO remain on toggle level (high or low) |
| Non-0: GPIO pulse width in microseconds (min 1 us) |
| |
| If no parameter provided, get is performed. |
| |
| Examples: |
| mlanutl mlan0 clocksync 0 0 5 0 0 |
| mlanutl mlan0 clocksync 1 0 10 1 500 |
| mlanutl mlan0 clocksync 1 0 5 0 0 |
| mlanutl mlan0 clocksync 2 1 10 1 500 |
| mlanutl mlan0 clocksync 2 2 3 0 0 |
| mlanutl mlan0 clocksync |
| |
| gettsfinfo |
| This command is used to get TSF info |
| |
| Usage: |
| mlanutl mlanX gettsfinfo [j] |
| where |
| [j] format |
| 0: Report GPIO assert TSF |
| 1: Report Beacon TSF and Offset (valid if CONFIG Mode 2) |
| |
| Examples: |
| mlanutl mlan0 gettsfinfo Get GPIO assert TSF |
| mlanutl mlan0 gettsfinfo 1 Get Beacon TSP and Offset (valid if CONFIG mode 2) |
| |
| targetchan |
| This command is used to get/set target channel for UAP |
| |
| Usage: |
| mlanutl uaX targetchan [j] |
| where |
| [j] target channel |
| |
| Examples: |
| mlanutl uap0 targetchan Get current target channel |
| mlanutl uap0 targetchan 52 Set target channel to 52 |
| backuptchan |
| This command is used to get/set backup channel for UAP |
| |
| Usage: |
| mlanutl uaX backupchan [j] |
| where |
| [j] backup channel |
| |
| Examples: |
| mlanutl uap0 backupchan Get current backup channel |
| mlanutl uap0 backupchan 52 Set backup channel to 52 |
| |
| ips_cfg |
| This command is used to get/set IPS |
| |
| Usage: |
| mlanutl mlanX ips_cfg [1/0] |
| |
| Examples: |
| mlanutl mlan0 ips_cfg Get current IPS config |
| mlanutl mlan0 ips_cfg 1 Enable IPS |
| |
| mcast_aggr_group |
| This command is used to add/remove multicast address to mcast_aggr_group. |
| Also, while the address is set, stats for each of these addresses will be auto-logged. (Refer 'stats' command for more info) |
| |
| Usage: |
| mlanutl mlanX/uapX mcast_aggr_group [action] [mcast_addr] |
| where |
| [action] : add/remove multicast mac address to mcast_aggr_group |
| 0 - remove 1 - add |
| [mcast_addr] : mcast address |
| |
| Examples: |
| mlanutl uap0 mcast_aggr_group 1 01:00:5e:00:00:42 Add 01:00:5e:00:00:42 to mcast_aggr_group |
| mlanutl uap0 mcast_aggr_group 0 01:00:5e:00:00:43 Remove 01:00:5e:00:00:43 from mcast_aggr_group |
| mlanutl uap0 mcast_aggr_group List current mcast_aggr_group |
| |
| mc_aggr_cfg |
| This command gets or sets the configuration of multicast packet aggregation. |
| |
| Usage: |
| mlanutl mlanX/uapX mc_aggr_cfg [i][j] |
| where |
| [i]: Enable Bitmap , 1-Enable, 0-Disable |
| Valid if corresponding mask bit is 1 |
| Bit 0: MC aggregation |
| Bit 1: Packet expiry |
| Bit 2: CTS2Self |
| Bit 3: CTS2Sef duration offset |
| [j]: Mask Bitmap, 1-valid, 0-invalid |
| Bit 0: MC aggregation |
| Bit 1: Packet expiry |
| Bit 2: CTS2Self |
| |
| Examples: |
| mlanutl uap0 mc_aggr_cfg 1 1 Enable MC aggregation |
| mlanutl uap0 mc_aggr_cfg 7 7 Enable MC aggregation,Packet expiry,CTS2Self feature |
| mlanutl uap0 mc_aggr_cfg Query current MC aggregation configuration. |
| |
| mcast_tx |
| This command is used to transmit multicast packets as per the mcast_tx conf file. |
| |
| Usage: |
| mlanutl <interface> mcast_tx <mcast_tx.conf> |
| where |
| <interface> : wifi interface name i.e. uap0 |
| <mcast_tx.conf> : multicast tx conf file |
| |
| stats |
| This command is used to get/reset Tx-Rx stats for unicast/multicast address. |
| Usage: |
| ./mlanutl uapx stats [action] |
| Where |
| [action] : get/reset all stats for unicast and multicast addresses. |
| all: get all stats collection |
| reset: reset all stats collection |
| mcast_timeout: get all multicast timeout stats collection |
| |
| Examples: |
| mlanutl uap0 stats all Get all stats for mac address configured using mcast_aggr_group command |
| mlanutl uap0 stats reset Reset all stats for mac address configured using mcast_aggr_group command |
| mlanutl uap0 stats mcast_timeout Get all multicast timeout stats for mac address configured using mcast_aggr_group command |
| |
| getuuid |
| This command is used to read 16 byte uuid for a given interface and uuid remains same for |
| <sta, uap, wfd> |
| Usage: |
| ./mlanutl <interface> getuuid |
| |
| Examples: |
| i/p: mlanutl uap0 getuuid |
| o/p: uuid: a0b0c0d0d0c0b0a0a0b0c0d0d0c0b0a0 |
| |
| =============================================================================== |
| =============================================================================== |
| U S E R M A N U A L F O R Enable Scan GAP |
| |
| Following commands can be used to enable gap between scans. |
| |
| mlanutl mlanX scancfg [t] [m] [p] [s] [a] [b] [c] [ext] [gap] |
| mlanutl mlanX setuserscan [ARGS] |
| |
| For detail information, please refer the command description. |
| =============================================================================== |