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.
Hi,
I have a design in which are used, on the same card, two DP83848 PHYs and I am observing a strange behaviour for the MDIO registers value.
The two PHY's use the same wires for the MDC-MDIO interface.
The PHY that use the address 0x03 always responds properly while the PHY that use the address 0x02 often responds wrong or nothing (value 0xffff).
When the MDIO value is 0xffff the MDIO interface is blocked and is necessary to reset the PHY in order to unblock the MDIO signal.
Could be that the behavior described above depends on wrong device initialization ?
The Power-Up timing of Figure 5.1 (see DP83848C) shows that the MDC clock has to be enabled after the minimum T2.1.2 time.
Is this time essential ?
Help!
Aniello
Hi Aniello,
It looks like the PHY ID of '2' is not correct since the device it not responding. 0xFFFF means that the MDIO line is just being held high by the pull-up resistor.
I would suggest you try the other 29 PHY ID possibilities since you already know ID 3 works and ID 2 does not work. Try starting with PHY ID 0 and work your way up to ID 31. Also, send me the strap configuration you are using.
Kind regards,
Ross
Hi Aniello,
Situation A does not seem like the address is read correctly. If you read all 0xFFFF, this means that the PHY did not respond to the Master's request. This is almost always because the PHY ID of the device you request to talk to does not match PHY ID in the message. The PHY can still get link and operate fine if PHY ID is not correct because you don't need register access for the PHY to operate.
What is the strength of the pull-up resistor on MDIO?
The MDIO/MDC of the PHY should not go into any "condition that can block". The MDIO/MDC should always be accessible unless the device is not powered or in a POR.
The controller that you are using to communicate with the PHY must wait a minimum of 167ms after the PHY is powered-up.
The controller must also wait a minimum of 3uS after the PHY is brought out of RESET.
Is this being followed?
Kind regards,
Ross
Hi Aniello,
No, RESET is not required as an addition to power-up. There is an internal POR that occurs without the need for RESET.
Can you send me a schematic? I am wondering if there might be internal pulls on your MAC that care changing the PHY ID.
Kind regards,
Ross
Hi Ross,
do you have some information about DP83848 marking codes ?
Thank you in advance.
Kind Regards
Aniello
Hi Aniello,
There is no issue with those lots.
Have you tried using the USB-2-MDIO tool to debug?
Have you done an ABA swap by moving the unit with the incorrect PHY ID to the other socket? Does the issue stay with the IC or the socket?
Kind regards,
Ross
Hi Ross,
No I haven't the USB-2-MDIO tool.
I don't understand what do you mean with "ABA swap".
In any case I remember you that I haven't an incorrect PHY ID but a situation where the MDIO registers are read with wrong values for one of two PHY's.
Kind regards,
Aniello