This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

DS160PT801X16EVM: DS160PT801X16EVM: cannot link-up with Gen3x16 EP

Part Number: DS160PT801X16EVM
Other Parts Discussed in Thread: DS160PT801

We are using the DS160PT801X16EVM with the EEPROM image DS160PT801_C0.hex.

When EP is Gen1x16, The link has been successfully established.

however, if we change to a Gen3x16 EP device, it cannot link-up(hex is same with above).

Sometimes, during the initial phase of startup, a temporary link to Gen2 may be established, yet a stable connection cannot be sustained in the end. 

The GUI screenshots are attached below for your reference.

0-0.png0-1.png0-2.png1-0.png1-1.png1-2.png

The register dump is attached. manager.cfg follower.cfg 

 

How we should proceed with the next steps of debugging?

  • Hi,

    Can you please clarify, are the first two screenshots the temporary Gen 2 link, and the following screenshots are the final result in the same configuration?

    Best regards,

    Greg

  • PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option: 3
    +----------++------++------------++----------------++------------------------++--------------------+
    |  Address ||  Die || Pckg Lanes ||      Mode      ||   State Machine Type   ||        Trace       |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x20   ||   0  ||  Lanes 4-7 || First N-States ||  RTSM X2(0): Main RTSM ||     15. FORWARD    |
    |          ||      ||            ||                ||                        || 14. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   13. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||  12. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   11. DETECT_TS1   |
    |          ||      ||            ||                ||                        || 10. EIOSQ_TRAINING |
    |          ||      ||            ||                ||                        ||  9. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    8. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    6. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   5. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  4. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  3. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. FW_EIE_PAT   |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x20   ||   1  ||  Lanes 0-3 || First N-States ||  RTSM X2(0): Main RTSM ||     15. FORWARD    |
    |          ||      ||            ||                ||                        || 14. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   13. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||  12. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   11. DETECT_TS1   |
    |          ||      ||            ||                ||                        || 10. EIOSQ_TRAINING |
    |          ||      ||            ||                ||                        ||  9. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    8. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    6. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   5. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  4. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  3. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. FW_EIE_PAT   |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x22   ||   0  ||  Lanes 4-7 || First N-States ||  RTSM X2(0): Main RTSM ||     15. FORWARD    |
    |          ||      ||            ||                ||                        || 14. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   13. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||  12. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   11. DETECT_TS1   |
    |          ||      ||            ||                ||                        || 10. EIOSQ_TRAINING |
    |          ||      ||            ||                ||                        ||  9. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    8. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    6. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   5. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  4. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  3. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. FW_EIE_PAT   |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x22   ||   1  ||  Lanes 0-3 || First N-States ||  RTSM X2(0): Main RTSM ||     15. FORWARD    |
    |          ||      ||            ||                ||                        || 14. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   13. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||  12. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   11. DETECT_TS1   |
    |          ||      ||            ||                ||                        || 10. EIOSQ_TRAINING |
    |          ||      ||            ||                ||                        ||  9. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    8. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    6. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   5. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  4. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  3. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. FW_EIE_PAT   |
    +----------++------++------------++----------------++------------------------++--------------------+
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option:
    
    
    

    Windows PowerShell
    版权所有 (C) Microsoft Corporation。保留所有权利。
    
    尝试新的跨平台 PowerShell https://aka.ms/pscore6
    
    PS C:\Users\admin> cd c:
    PS C:\Users\admin>
    PS C:\Users\admin> cd c:\
    PS C:\>
    PS C:\>
    PS C:\> cd '.\Program Files (x86)\Texas Instruments\DS160PY-0.9\'
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9>
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9>
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option: 3
    Traceback (most recent call last):
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 727, in <module>
        cont = print_menu()
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 295, in print_menu
        print_sm_trace()
        ~~~~~~~~~~~~~~^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 537, in print_sm_trace
        sm_index, sm_type_str = toccoa_c0.get_sm_trace_setting(die)
                                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 587, in get_sm_trace_setting
        __sel_share(die)
        ~~~~~~~~~~~^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 203, in __sel_share
        __i2c_write(0xFF, 0x40)
        ~~~~~~~~~~~^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 92, in __i2c_write
        __toccoa.i2c_write(reg_address, value)
        ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 172, in i2c_write
        return self.check_for_errors(i2cwrite(self._handle, self._slave_address, reg_address, value))
               ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 330, in check_for_errors
        raise OSError("USB2ANY Error: {0}".format(error_str))
    OSError: USB2ANY Error: ERR_COM_RX_BUF_EMPTY
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option: 3
    Traceback (most recent call last):
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 727, in <module>
        cont = print_menu()
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 295, in print_menu
        print_sm_trace()
        ~~~~~~~~~~~~~~^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 550, in print_sm_trace
        toccoa_c0.set_sm_trace_freeze(die, True)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 702, in set_sm_trace_freeze
        __sel_share(die)
        ~~~~~~~~~~~^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 205, in __sel_share
        __i2c_write(0xFF, 0x80)
        ~~~~~~~~~~~^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 92, in __i2c_write
        __toccoa.i2c_write(reg_address, value)
        ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 172, in i2c_write
        return self.check_for_errors(i2cwrite(self._handle, self._slave_address, reg_address, value))
               ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 330, in check_for_errors
        raise OSError("USB2ANY Error: {0}".format(error_str))
    OSError: USB2ANY Error: ERR_COM_RX_BUF_EMPTY
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    Traceback (most recent call last):
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 724, in <module>
        __enable_8bit()
        ~~~~~~~~~~~~~^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 51, in __enable_8bit
        toccoa_c0.enable_i2c_16bit(0)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 1352, in enable_i2c_16bit
        __toccoa.i2c_internal_write(0x6801,2,[0])
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 222, in i2c_internal_write
        return self.check_for_errors(i2cinternalwrite(self._handle, self._slave_address, int_address, size, nbytes, byref(in_data)))
               ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 330, in check_for_errors
        raise OSError("USB2ANY Error: {0}".format(error_str))
    OSError: USB2ANY Error: ERR_COM_RX_BUF_EMPTY
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option: 3
    Traceback (most recent call last):
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 727, in <module>
        cont = print_menu()
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 295, in print_menu
        print_sm_trace()
        ~~~~~~~~~~~~~~^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 540, in print_sm_trace
        ind, sub_rtsm = toccoa_c0.get_rtsm_trace_setting(die)
                        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 613, in get_rtsm_trace_setting
        __sel_share(die)
        ~~~~~~~~~~~^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 203, in __sel_share
        __i2c_write(0xFF, 0x40)
        ~~~~~~~~~~~^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 92, in __i2c_write
        __toccoa.i2c_write(reg_address, value)
        ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 172, in i2c_write
        return self.check_for_errors(i2cwrite(self._handle, self._slave_address, reg_address, value))
               ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 330, in check_for_errors
        raise OSError("USB2ANY Error: {0}".format(error_str))
    OSError: USB2ANY Error: ERR_COM_RX_BUF_EMPTY
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option: 3
    Traceback (most recent call last):
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 727, in <module>
        cont = print_menu()
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 295, in print_menu
        print_sm_trace()
        ~~~~~~~~~~~~~~^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\examples.py", line 551, in print_sm_trace
        sm_trace = toccoa_c0.get_sm_trace(die)
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_c0.py", line 536, in get_sm_trace
        value = __toccoa.fsm_readback()
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\toccoa_macros_c0.py", line 809, in fsm_readback
        value_0xbf = self.i2c_read_mask(0xbf, 0xff)
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any_hssc.py", line 80, in i2c_read_mask
        readval = self.i2c_read(reg_address)
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 162, in i2c_read
        return self.check_for_errors(i2cread(self._handle, self._slave_address, reg_address))
               ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "C:\Program Files (x86)\Texas Instruments\DS160PY-0.9\usb2any.py", line 330, in check_for_errors
        raise OSError("USB2ANY Error: {0}".format(error_str))
    OSError: USB2ANY Error: ERR_COM_RX_BUF_EMPTY
    PS C:\Program Files (x86)\Texas Instruments\DS160PY-0.9> python3.13.exe .\examples.py
    -- USB2ANY List --
    0. 7178695107000700
    
    Please select a USB2ANY: 0
    -- SMB Device List --
    0. 0x20
    
    Please select a DS160PT801 link-width manager: 0
    
    Welcome to the DS160PT801 Python API examples companion module.
    The purpose of this module is to provide examples of how to use the API by demonstration.
    Please select a menu item to perform the function.
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option: 3
    +----------++------++------------++----------------++------------------------++--------------------+
    |  Address ||  Die || Pckg Lanes ||      Mode      ||   State Machine Type   ||        Trace       |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x20   ||   0  ||  Lanes 4-7 || First N-States ||  RTSM X2(0): Main RTSM ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  6. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  5. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    4. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   3. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. FW_EIE_PAT   |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x20   ||   1  ||  Lanes 0-3 || First N-States ||  RTSM X2(0): Main RTSM ||  15. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   14. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||  13. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        || 12. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        || 11. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   10. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   9. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    8. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    6. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   5. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  4. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  3. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. DETECT_TS1   |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x22   ||   0  ||  Lanes 4-7 || First N-States ||  RTSM X2(0): Main RTSM ||  15. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        || 14. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        || 13. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   12. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||  11. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   10. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   9. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    8. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  6. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  5. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    4. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   3. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. FW_EIE_PAT   |
    +----------++------++------------++----------------++------------------------++--------------------+
    |   0x22   ||   1  ||  Lanes 0-3 || First N-States ||  RTSM X2(0): Main RTSM ||     15. FORWARD    |
    |          ||      ||            ||                ||                        || 14. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||   13. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||  12. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||   11. DETECT_TS1   |
    |          ||      ||            ||                ||                        || 10. EIOSQ_TRAINING |
    |          ||      ||            ||                ||                        ||  9. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    8. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   7. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    6. FW_EIE_PAT   |
    |          ||      ||            ||                ||                        ||   5. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||  4. SEND_EIEOS_PAT |
    |          ||      ||            ||                ||                        ||  3. ELEC_IDLE_TRNG |
    |          ||      ||            ||                ||                        ||    2. DETECT_TS1   |
    |          ||      ||            ||                ||                        ||   1. NO_OS_DETECT  |
    |          ||      ||            ||                ||                        ||    0. DETECT_TS1   |
    +----------++------++------------++----------------++------------------------++--------------------+
    
    
    -- Main Menu --
    0. Exit
    1. Read Retimer Channel Status
    2. Read Retimer Status
    3. Read State Machine Trace
    4. Set State Machine Trace
    5. Set Loopback Mode
    6. Create/Save an Eye Diagram
    7. Read Register
    8. Read/Write EEPROM
    9. Compliance & Eval
    
    Please select an option:
    

    State Machine Trace  is attached.

  • Hi,

    Thank you for the trace. We will look over this and will get back to you as soon as possible.

    Best regards,

    Greg

  • Any update for this issue? thanks!

  • Any update for this issue? thanks!

  • Hi,

    I have some further questions to help with the debug:

    • Is the power supply input to the EVM stable during operation? The loss of CDR lock on some channels after initially locking could suggest there is a drop in supply.
    • Could you send an image of the EVM so I can confirm the jumper configuration?
    • A block diagram of the EVM placement in your testing system would also be helpful.

    Best regards,

    Greg

  • Could you send an image of the EVM so I can confirm the jumper configuration?

  • A block diagram of the EVM placement in your testing system would also be helpful.
  • Is the power supply input to the EVM stable during operation? The loss of CDR lock on some channels after initially locking could suggest there is a drop in supply.

    We've tried power cycle and reboot many times without EVM, Gen3x16 link can establish every time.

    Does EVM have stricter requirements for power supply?

  • Hi,

    Thank you for the additional information, I will set this up on my side. It's hard to tell, it looks like the J25 header is populated on your board, is this correct? This is used to Write Protect the EEPROM and prevent any changes to the current EEPROM image. The EVM does not have stricter power supply requirements beyond those listed in the User Guide or device data sheet.

    Best regards,

    Greg

  •  it looks like the J25 header is populated on your board, is this correct?

    yes, we changed the eeprom image to DS160PT801_C0.hex, It can work when EP is a Gen1x16 device, but DS160PT801.hex can not.

  • Hi,

    If you de-populate J25, and try using DS160PT801_1x16.hex instead, is there any change?

    Best regards,

    Greg

  • No link if using DS160PT801_1x16.hex, I found the following setting must be added:

    1C07F80B.

  • Hi,

    Can you please clarify, where is this 1C07F80B added?

    Best regards,

    Greg

  • When you add this to the EEPROM image, the link works as expected?

    Best regards,

    Greg

  • yes, but only when EP device is Gen1 x16.

  • Hi,

    Have you tested several endpoints, and does this issue occur for all Gen3 endpoints that you have used?

    Best regards,

    Greg

  • No, Only one Gen3 x16 EP is available now.

  • Hi,

    I see. In this case, can you share what the endpoint device is in your system.

    Best regards,

    Greg

  • GTX 27x graphics card(Gen1 x16)

    RMN-100HFA016 (Gen3 x16)

  • Hi,

    Have you tried forcing the PCIe link speed settings to Gen2 in the PC BIOS settings? If this is done, does the link still configure to Gen1 or is the Gen2 connection more stable? ideally, it would be useful to test with another endpoint to confirm whether the issue is caused by the retimer EVM.

    Best regards,

    Greg