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.

DP83865: Active link is disturbed with idle errors and is not recovering

Part Number: DP83865

Hello,

we are using the DP83865 on custom designed interface cards since 2010. The design didn´t change since then.

We are using many interface cards in a machine for real time data transfer. Speed is always 1000MB/s. The interface cards are directly connected to network-cards in a PC.

We never had this problem before, but now in a new machine we have sometimes an issue with the data transfer.

On some of the cards the active link is suddenly disturbed and no data transfer is possible anymore.

The links is not recovering by itself! We have to un-/plug the cable, reset the PHY or do a power-cycle on one of the link partners to reestablish the link.

When the issue happens:

- the Link is still active -> LINK1000_LED is still on, and the corresponding registers are set.

- the activity LED is flickering weakly

- in the 1000BASE-T Status Register (1KSTSR address 0x0A)  idle-errorcount is always 255 , also in subsequent reads. Local Receiver status is OK, Remote Receiver Status is sometimes NOK

- the issue happens when PHY is in master or slave mode

Apart from this issue we don´t see a problem with the data transfer. There are no lost packets before the link is disturbed.

As i see it, a disturbance on the cable/link should only cause some lost packets.

What can cause this problem that the link is not recovering by itself?

Thank you,

Best regards,

Markus Anders

  • Hi Markus,

    Do you see a change in current demand?
    Is the link partner the same?
    Do you know if the issue is coming from the link partner?
    If you apply a reset to the 865 does the link recover or must it be the link partner?
  • Hi Ross,

    I try to measure the current levels when I get the error the next time to see if there is a voltage drop. But the current supply should be enough.

    I cannot tell if the issue is coming from the link partner. I was not able to get useful status information from the network cards in the linux operating system.

    When I apply a reset to the PHY the link is recovering immediately. Also when I unplug/plug the network cable or reset the link partner.

    We implemented an auto-reset function in our mac to reset the PHY in case of the issue. But this means our interface is not available for ~1s and our data transfer is disturbed.

    We still need to solve the issue.

    Thank you,

    Markus

  • Hi Markus,

    Could you try using these register settings when you operate the 865:

    0x0000	0x0019		// Put the DP83865 into power down mode
    			
    0x8F00	0x0089		
    0x8F01	0x0090		
    			
    0x8990	0x0000		
    0x8991	0x006A		
    0x8992	0x006A		
    0x8993	0x0001		
    0x8994	0x0001		
    0x8995	0x000F		
    0x8996	0x0001		
    0x8997	0x0000		
    0x8998	0x0000		
    0x8999	0x0000		
    0x899A	0x0000		
    0x899B	0x0002		
    0x899C	0x0006		
    0x899D	0x0000		
    0x899E	0x0002		
    0x899F	0x0046		
    0x89A0	0x0066		
    0x89A1	0x0076		
    0x89A2	0x0069		
    0x89A3	0x0002		
    0x89A4	0x0003		
    0x89A5	0x0000		
    0x89A6	0x0003		
    0x89A7	0x0013		
    0x89A8	0x000D		
    0x89A9	0x000D		
    0x89AA	0x00AD		
    0x89AB	0x00AD		
    0x89AC	0x007F		
    0x89AD	0x007F		
    0x89AE	0x0030		
    0x89AF	0x0030		
    0x89B0	0x0000		
    0x89B1	0x0003		
    0x89B2	0x0000		
    0x89B3	0x0003		
    0x89B4	0x0001		
    0x89B5	0x0001		
    0x89B6	0x005F		
    0x89B7	0x00FF		
    0x89B8	0x0001		
    0x89B9	0x0000		
    0x89BA	0x0002		
    0x89BB	0x0038		
    0x89BC	0x0000		
    0x89BD	0x00B8		
    0x89BE	0x0000		
    0x89BF	0x0001		
    0x89C0	0x0008		
    0x89C1	0x0000		
    0x89C2	0x0000		
    0x89C3	0x0000		
    0x89C4	0x0000		
    0x89C5	0x0000		
    0x89C6	0x0000		
    0x89C7	0x00E4		
    0x89C8	0x00B1		
    0x89C9	0x0001		
    0x89CA	0x0000		
    0x89CB	0x0000		
    0x89CC	0x004C		
    0x89CD	0x0070		
    0x89CE	0x004C		
    0x89CF	0x0040		
    0x89D0	0x0040		
    0x89D1	0x0001		
    0x89D2	0x0000		
    0x89D3	0x0001		
    0x89D4	0x0000		
    0x89D5	0x0001		
    			
    			
    0x0000	0x0011		//Put the DP83865 into normal operation
    
    

  • Hi Ross,

    I will change my software to write these registers.

    Only to be sure: All Registers are in expanded memory space?

    Also 0x0000 0x0019 // Put the DP83865 into power down mode

    This would be the same as setting Basic Mode Control Register (BMCR) 0x00 Bit11 = 1?

    What are the register values actually doing?

    Best regards,

    Markus

  • Hi Markus,

    Correct, they are in extended mem space.
    The power-down is different in that the one specified above disables the transmitter so that you can configure the PHY.
    These register settings have been found to improve link-up in applications where PCB routing is not ideal.
    I want to try it out since I have not seen the layout and want to start eliminating possible sources.
  • Hi Ross,

    it took some time to test it. But we got the error again. So the register settings didn't solve it, but maybe made it less often.

    If it helps I could send you the schematic and layout of the PHY.

    Best regards,


    Markus
  • Hi Markus,

    Yes, please send me both when you can.
    If you cannot attach over E2E, you can send me a private note over E2E so that you can send me your email.
  • Hi Ross,

    can you please accept my friendship request that I can send you a private note.

    Best regards,

    Markus
  • Hi Markus,

    Please have a look at your inbox.