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.

SN75DP130: Interchanging Lanes in Main Link

Prodigy 110 points

Replies: 14

Views: 158

Part Number: SN75DP130

Hi,

We have a Cyclone 10 GX based custom board with SN75DP130 re-driver and a mDP connector. We are trying to port Altera's DP IP in TX-Only mode. Because of schematic issues, XCVR lanes form FPGA are connected in the reverse order i.e., lane_0 from FPGA is connected to IN3 on re-driver (polarity is not inverted). We are using DP breakout boards between FPGA board and Monitor to properly map lane order. 

I am trying to bring up DP_TX in single lane mode. HPD is working fine, link training is happening properly on AUX channel. But the DP_TX IP is going into VIDEO_IDLE mode instead of NORMAL_VIDEO mode. If IN0-IN2 are not actively driven and only IN3 is driven, does SN75DP propagate it on OUT3?

Regards

Bhargav

14 Replies

  • Bhargav

    You have to use I2C to disable link training and manually enable all lanes when connecting lane 0 to IN3 of DP130.

    Thanks

    David

  • In reply to David (ASIC) Liu:

    Thanks for your time.

    >> You have to use I2C to disable link training and manually enable all lanes when connecting lane 0 to IN3 of DP130.

    Does it mean that only IN3 of SN75DP is getting enabled in my case? 

    If I configure DP_TX in 4-lane mode (but the order going to SN75DP will be in reverse. i.e, tx[0] -> IN3 and tx[3] -> IN0) and appropriately re-order the lane at the monitor/display end, will default link training work?

    The datasheet has register descriptions but not any example programming sequences. Can you please let me know where I can find example sequences?

    Regards

    Bhargav

  • In reply to Bhargav Marpuri:

    Bhargav

    If DP130 link training is enabled and only one DP lane is enabled, DP130 will only enable DP0 and disable DP1, 2, and 3. If lane 0 is connected to DP3, you have to disable the link training and manually enable DP3. 

    4 lane would still work as long as the lane order is the same on the input and the output of the DP130.

    For SW example, please use this app note as a starting point: http://www.ti.com/lit/an/slla349/slla349.pdf.

    Thanks
    David

  • In reply to David (ASIC) Liu:

    Hi David,

    I am still using 1-lane DP_TX and connected it to IN0 of SN75DP130. Link training is enabled. When I look at DP130 register values before and after link training, they look fine. But still monitor goes into sleep (power saving) mode. Can you please let me know if the register values are fine?

    Some DP130 registers (0x01 to 0x17) have default values.

    Register Address Before Link Training After Link Training
    0x19 0x04 0x14
    0x1A 0x01 0x00
    0x100 0x1 0x1
    0x101 0x0 0x1
    0x103 0x0 0x1
    0x104 0x0 0x0
    0x105 0x0 0x0
    0x106 0x0 0x0
    0x600 0x0 0x0

    Regards

    Bhargav

  • In reply to Bhargav Marpuri:

    Bhargav

    Does DP 4-lane mode works? If DP 4 lane mode works, would you please dump out both the DPCD and I2C registers?

    Could you please check HPD_SNK and HPD_SRC? Are they staying high or low? 

    What is the condition for the FPGA to go into the VIDEO_IDLE mode?

    Thanks

    David

  • In reply to David (ASIC) Liu:

    Hi David,

    Thanks for all the support.

    The behavior is same with 4-lane mode too. HPD coming to FPGA is high, Link Training is successful and monitor going to idle state.

    HPD_SNK and HPD_SRC are high throughout the experiment.

    I have raised a query on Altera Forum to understand what drives DP_Source IP into VIDEO_IDLE mode.

    Register

    Address

    Before

    Link Training

    After

    Link Training

    0x1  0x1 0x1
    0x2  0x0 0x0
    0x3  0x1 0x12
    0x4  0x4 0x4
    0x5  0x0 0x0
    0x6  0x0 0x0
    0x7  0x0 0x0
    0x8  0x0 0x0
    0x9  0x0 0x0
    0xa  0x0 0x0
    0xb  0x0 0x0
    0xc  0x0 0x0
    0xd  0x0 0x0
    0xe  0x0 0x0
    0xf  0x0 0x0
    0x10 0x0 0x0
    0x11 0x0 0x0
    0x12 0x0 0x0
    0x13 0x0 0x0
    0x14 0x0 0x0
    0x15 0x8 0x8
    0x16 0x8 0x8
    0x17 0x0 0x0
    0x18 0x0 0x0
    0x19 0x4 0x14
    0x1a 0x0 0x0
    0x100 0x1 0x1
    0x101 0x0 0xf
    0x103 0x0 0x1
    0x104 0x0 0x1
    0x105 0x0 0x1
    0x106 0x0 0x1
    0x600 0x0 0x0
    0x101 0x0 0xf

    Regards

    Bhargav

  • In reply to Bhargav Marpuri:

    Hi David,

    When we started probing the DP_TX IP core status deeper, we found that the main link is not up consistently. Whenever the link goes down, the IP is going into VIDEO_IDLE mode. When the link goes up, IP transits from VIDOE_IDLE mode to NORMAL_VIDEO mode, but it does not stay there for long to view the video on monitor. Are there similar registers in SN75DP130 that denote the main link status?

    Regards

    Bhargav

  • In reply to Bhargav Marpuri:

    Bhargav

    DP130 does not report main link status. 

    Can the FPGA read the DPCD register 0x00202h, 0x00203h, 0x00204h, and 0x00205h? These are the registers sink uses to report the status of the link training.

    Can you also disable DP130 squelch (register 0x03h) to see if the link is able to stay up? 

    Thanks

    David

  • In reply to David (ASIC) Liu:

    Hi David,

    Sorry for the delayed response. DPCD registers 0x00202 - 0x00205 are always 0. Disabling squelch did not have any effect. 

    Regards

    Bhargav

  • In reply to Bhargav Marpuri:

    Bhargav

    If the sink DPCD register 0x00202 - 0x00205 reads back as 0, then the link training is not successful. 

    Do you have a DPA-400 or an AUX snoop tool that can look at the AUX traffic?

    Thanks

    David

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.