Hauke Mehrtens 4c8a09cc45 tools: Set mode for new file /tmp/mt76-test-%s 7 months ago
..
CMakeLists.txt 3ea5da1639 add utility for using testmode support 1 year ago
README.md 3ea5da1639 add utility for using testmode support 1 year ago
eeprom.c 4c8a09cc45 tools: Set mode for new file /tmp/mt76-test-%s 6 months ago
fields.c 9909c0551e mt76: testmode: add support for HE rate modes 8 months ago
main.c 3ea5da1639 add utility for using testmode support 1 year ago
mt76-test.h 3ea5da1639 add utility for using testmode support 1 year ago

README.md

MT76 testmode utility

This utility can be used to perform some support functions required for Rx/Tx calibration, similar to the ATE command set of the SDK driver.
Its main functionality is setting test parameters and dumping statistics. It can also be used to prepare modified EEPROM data for writing into flash.

Basic syntax

  • Set parameters:
    • mt76-test phy0 set <parameter>=<value>[…]
  • Show current parameter set:
    • mt76-test phy0 dump
  • Show statistics
    • mt76-test phy0 dump stats

Running tests

The test state is controlled through the state parameter. The following state values are supported:

  • off: Normal operation (default)
  • idle: Testmode enabled, but no specific test active
  • tx_frames: Send a number of packets with configurable rate/txpower
  • rx_frames: Receive packets and show RSSI and packet count/PER

Setting a state activates it even if the value is the same as before. Setting it to tx_frames triggers sending packets immediately. Setting rx_frames enables receive mode and can also be used to clear rx statistics.

Notes

To run tests, you first need to disable all normal interfaces, set up a monitor mode interface and configure it to the channel/bandwidth you intend to use.

Parameters:

| Parameter name | ATE parameter | Description |
|–|–|–|
| state | ATE | Test state |
| tx_count | ATETXCNT | Number of packets to send |
| tx_length | ATETXLEN | Length of packets to send |
| tx_rate_mode | ATETXMODE | PHY mode (possible values: cck, ofdm, ht, vht) |
| tx_rate_nss | | Number of spatial streams (VHT only) |
| tx_rate_idx | ATETXMCS | MCS or legacy rate index |
| tx_rate_sgi | ATETXGI | Enable short guard interval |
| tx_rate_ldpc | ATETXLDPC | Enable LDPC |
| tx_power_control | ATETXPOWERCTRL | Firmware transmit power control feature |
| tx_power | ATETXPOW0-3 | Per-chain half-dBm transmit power, 0 means default value, e.g. 10,0,0,0 |
| tx_antenna | ATETXANT | Transmit antenna bitmask |
| freq_offset | ATETXFREQOFFSET | Frequency offset |