MLXLINK(1)

NAME
mlxlink - manual page for mlxlink 4.19.0

DESCRIPTION

    NAME:

    mlxlink

    SYNOPSIS:

    mlxlink [OPTIONS]

    DESCRIPTION:

    The mlxlink tool is used to check and debug link status and issues related to them. The tool can be used on different links and cables (passive, active, transceiver and backplane).

    OPTIONS:

-h |--help
    : Display help message.

-v |--version
    : Display version info.

-d |--device
    <device> : Perform operation for a specified mst device

-p |--port
    <port_number> : Port Number

--port_type
    <port_type> : Port Type [NETWORK(Default)/PCIE/GEARBOX_HOST/INTERNAL_IC_LR/GEARBOX_LINE]

--depth
    <depth> : depth level of the DUT of some hierarchy (PCIE only)

--pcie_index
    <pcie_index> : PCIe index number (Internal domain index) (PCIE only)

--node
    <node> : the node within each depth (PCIE only)

--json
    : Print the output in json format

    QUERIES:

--show_links
    : Show valid PCIe links (PCIE only)

-m |--show_module
    : Show Module Info

-c |--show_counters
    : Show Physical Counters and BER Info

-e |--show_eye
    : Show Eye Opening Info

--show_fec
    : Show FEC Capabilities

--show_serdes_tx
    : Show Transmitter Info

--show_tx_group_map <group_num>
    : Display all label ports mapped to group <group_num> (for Spectrum-2 and Quantum devices)

--show_device
    : General Device Info

--show_ber_monitor
    : Show BER Monitor Info (not supported for HCA)

--show_external_phy
    : Show External PHY Info (for Ethernet switches only)

    COMMANDS:

-a |--port_state <port_state>
    : Configure Port State [UP(up)/DN(down)/TG(toggle)]

-s |--speeds
    <speeds> : Configure Speeds [NDR,HDR,EDR,FDR10,FDR,QDR,DDR,SDR,400G_8X,200G_4X,100G_2X,50G_1X,100G,100G_4X,50G,50G_2X,25G,40X,10G,2.5G,1G]

--link_mode_force
    : Configure Link Mode Force (Disable AN)

-l |--loopback
    <loopback> : Configure Loopback Mode [NO(no loopback)/RM(phy remote Rx-to-Tx loopback)/PH(internal phy Tx-to-Rx loopback)/EX(external loopback connector needed)/EX(external Tx-to-Rx loopback)]

-k |--fec
    <fec_override> : Configure FEC [AU(Auto)/NF(No-FEC)/FC(FireCode FEC)/RS(RS-FEC)/LL(LL-RS-FEC)/DF-RS(Interleaved_RS-FEC)/DF-LL(Interleaved_LL_RS-FEC)]

--fec_speed
    <fec_speed> : Speed to Configure FEC [100G,56G,50G,40G,25G,10G,800G_8X,400G_4x,400G_8X,200G_2X,200G_4X,100G_2X,50G_1X,100G_4X] (Default is Active Speed)

--serdes_tx
    <params> : Configure Transmitter Parameters For 16nm devices: [pre2Tap,preTap,mainTap,postTap,m2lp,amp] For 28nm devices: [Pol,tap0,tap1,tap2,bias,preemp_mode]

--serdes_tx_lane <transmitter_lane>
    : Transmitter Lane to Set (Optional - Default All Lanes)

--database
    : Save Transmitter Configuration for Current Speed Permanently (Optional)

--tx_params_override
    : Set the parameters according to Data Base only, otherwise it will be set according to the best possible configuration chosen by the system (e.g. KR-startup) (Optional)

--tx_group_map
    <group_num> : Map ports to group <group_num> (for Spectrum-2 and Quantum devices)

--ports
    <ports> : Ports to be mapped [1,2,3,4,...,128]

--test_mode
    <prbs_mode> : Physical Test Mode Configuration [EN(enable)/DS(disable)/TU(perform tuning)]

--rx_prbs
    <rx_prbs_mode> : RX PRBS Mode [PRBS31/PRBS23A/PRBS23B/PRBS23C/PRBS23D/PRBS7/PRBS11/PRBS11A/PRBS11B/PRBS11C/PRBS11D/PRBS9/IDLE/SQUARE_WAVEA/SQUARE_WAVEB/SQUARE_WAVEC/SQUARE_WAVED/PRBS13A/PRBS13B/PRBS13C/PRBS13D/SSPR/SSPRQ/LT_frames/PRBS15/PRBS28] (Optional - Default PRBS31)

--tx_prbs
    <tx_prbs_mode> : TX PRBS Mode [PRBS31/PRBS23A/PRBS23B/PRBS23C/PRBS23D/PRBS7/PRBS11/PRBS11A/PRBS11B/PRBS11C/PRBS11D/PRBS9/IDLE/SQUARE_WAVEA/SQUARE_WAVEB/SQUARE_WAVEC/SQUARE_WAVED/PRBS13A/PRBS13B/PRBS13C/PRBS13D/SSPR/SSPRQ/LT_frames/PRBS15/PRBS28/SQUARE_WAVE3,SQUARE_WAVE13,SQUARE_WAVE30] (Optional - Default PRBS31] (Optional - Default PRBS31)

--rx_modulation
    <rx_modulation> : RX Modulation [NRZ/PAM4/PAM4_PRECODING/PAM4_NO_GRAY/PAM4_NO_GRAY_PRECODING] (Optional - Default based on lane rate)

--tx_modulation
    <tx_modulation> : TX Modulation [NRZ/PAM4/PAM4_PRECODING/PAM4_NO_GRAY/PAM4_NO_GRAY_PRECODING] (Optional - Default based on lane rate)

--rx_rate
    <rx_lane_rate> : RX Lane Rate [HDR,EDR,FDR10,FDR,QDR,DDR,SDR,400G_8X,200G_4X,100G_2X,50G_1X,100G,100G_4X,50G,50G_2X,25G,40X,10G,2.5G,1G] (Optional - Default 25G)

--tx_rate
    <tx_lane_rate> : TX Lane Rate [HDR,EDR,FDR10,FDR,QDR,DDR,SDR,400G_8X,200G_4X,100G_2X,50G_1X,100G,100G_4X,50G,50G_2X,25G,40X,10G,2.5G,1G] (Optional - Default 25G)

--invert_tx_polarity
    : PRBS TX polarity inversion (Optional - Default No Inversion)

--invert_rx_polarity
    : PRBS RX polarity inversion (Optional - Default No Inversion)

--lanes
    <lanes> : PRBS lanes to set (one or more lane separated by comma)[0,1,2,...,7] (Optional - Default all lanes)

-b |--ber_collect <csv_file>
    : Port Extended Information Collection [CSV File]

--amber_collect
    <csv_file> : AmBER Port Extended Information Collection For 16nm Products and Later [CSV File]

--ber_limit
    <limit_criteria> : BER Limit Criteria [Nominal(Default)/Corner/Drift] (Optional - Default Nominal)

--iteration
    <iteration> : Iteration Number of BER Collection

--pc
    : Clear Counters

--set_external_phy
    : Set External PHY (for Ethernet switches only)

--twisted_pair_force_mode <twisted_pair_force_mode>
    : Twisted Pair Force Mode [MA(Master)/SL(Slave)]

--cable
    : Perform operations on the cables

--dump
    : Dump cable pages in raw format

--ddm
    : Get cable Digital Diagnostic Monitoring information

--read
    : Perform read operation from specific page

--length
    <length> : Length of data to read in bytes (Optional - Default 1 byte)

--page
    <pageNum> : Specific page number to read/write

--offset
    <offset> : Specific page offset to read/write

--write
    <bytes> : Perform write operation with specific data (list of bytes, separated by ',')

--page
    <pageNum> : Specific page number to read/write

--offset
    <offset> : Specific page offset to read/write

--margin
    : Read the SerDes eye margins per lane

--measure_time
    <time> : Measure time in seconds for single eye [10/30/60/90/120/240/480/600/900] (Optional - Default 60 for PCIe and 30 for Network ports)

--eye_select
    <eye_sel> : Eye selection for PAM4 [UP/MID/DOWN/ALL] (Optional - Default ALL)

--lane
    <lane_index> : Run eye for specific lane index (Optional - Default all lanes)

--rx_error_injection
    : Enable the RX link deterioration

--mixer_offset0
    <value> : Fine change to the center of the eye 0x0 to 0x7ff

--mixer_offset1
    <value> : Coarse change to the center of the eye 0x0 to 0x3ff

--show_mixers_offset
    : Show mixer offset 0 and mixer offset 1

--rx_fec_histogram
    : Provide histogram of FEC errors. The result is divided to bins. Each bin is holding different number of errored bit within FEC protected block

--show_histogram
    : Show FEC errors histograms

--clear_histogram
    : Clears FEC errors histograms

--yes
    : Non-interactive mode, answer yes to all questions

    Examples:

get info of <device>, <port_number>
    :

    mlxlink -d <device> -p <port_number>

    get info of <device>, <port_number> and BER Counters:

    mlxlink -d <device> -p <port_number> -c

    get info of <device>, <port_number> and Transmitter Parameters:

    mlxlink -d <device> -p <port_number> --show_serdes_tx

Configure Port State
    :

    mlxlink -d <device> -p <port_number> --port_state UP

Configure Port Speeds
    :

    mlxlink -d <device> -p <port_number> --speeds 25G,50G,100G

Configure FEC
    :

    mlxlink -d <device> -p <port_number> --fec RS

Configure Port for Physical Test Mode
    :

    mlxlink -d <device> -p <port_number> --test_mode EN (--rx_prbs PRBS31 --rx_rate 25G --rx_modulation PAM4_PRECODING --tx_prbs PRBS7 --tx_rate 10G --tx_modulation NRZ)

Perform PRBS Tuning
    :

    mlxlink -d <device> -p <port_number> --test_mode TU

Cable operations
    :

    mlxlink -d <device> --cable options

Dump cable EEPROM pages
    :

    mlxlink -d <device> --cable --dump

Get cable DDM info
    :

    mlxlink -d <device> --cable --ddm

Read from cable
    :

    mlxlink -d <device> --cable --read --page <page number> --offset <bytes offset> --length <number of bytes>

Write to cable
    :

    mlxlink -d <device> --cable --write <bytes separated by comma> --page <page number> --offset <bytes offset>

    Configure Transmitter Parameters (on lane, to database):

    mlxlink -d <device> -p <port_number> --serdes_tx <polarity>,<ob_tap0>,<ob_tap1>,<ob_tap2>,<ob_bias>,<ob_preemp_mode> (--serdes_tx_lane <lane number>) (--database)

    Configure Transmitter Parameters for 16nm devices:

    mlxlink -d <device> -p <port_number> --serdes_tx <pre_2_tap>,<pre_tap>,<main_tap>,<post_tap>,<ob_m2lp>,<ob_amp>

SEE ALSO
The full documentation for mlxlink is maintained as a Texinfo manual. If the info and mlxlink programs are properly installed at your site, the command

    info mlxlink

should give you access to the complete manual.