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.

DP83848 no linking and not completing auto-negotiation

Other Parts Discussed in Thread: OMAPL138

Hi,

I'm working on an application that interfaces the DP83848 (Ethernet PHY) with the OMAPL138 processor. At this point we got the OMAPL138 to detect the Ethernet PHY and I'm able to read and write to its register but I haven't being able to link or get the autonegotiation to be completed.  I'm monitoring the OMAPL138 MDIO LINK register to look for any linking signs plus looking at some of the DP83848 registers as well.  Here are a few of the values that I'm currently getting on the DP83848 side:

BMCR = 0x3100; Good
BMSR = 0x7849; Not Good, no link
ANAR = 0x0181
ANLPAR = 0x0000
ANER = 0x0004
PHYIDR1 = 0x2000; Good
PHYIDR2 = 0x5C90; Good
ANER = 0x0004

Also, I'm trying to connect from our board design to a NetGear Switch and from the switch to a PC.  The idea is to perform a test to send packets via ethernet from the OMAP application to the PC.  We are also using the lwip library provided with the Starterware drivers.  We are currently troubleshooting but so far haven't find out the actual reason for not linking.  Please provide any pointers if someone is familiar with a similar error and/or if additional information is needed to understand the problem.

  • I would suggest first trying to get the device to link to itself.  This can be accomplished using an external loopback plug.  External loopback (also called "line loopback") can be used to loop the high speed lines of the link back to themselves.  The easiest way to achieve this is by making a custom cable and plugging it into the RJ45 connector.
      1. Cut a cable with about 1 foot of cable and the RJ45 connector
      2. Strip off about 3~4 inches of the outside plastic shield to expose the 4 pairs of twisted pair cable
      3. Bend back pairs 4/5 and 7/8 (these will not be used)
      4. Solder pair 1/2 to pair 3/6
            1. Solder wire 1 to wire 3
            2. Solder wire 2 to wire 6
      5. Now you have a loopback cable.
    Plug the cable into any operating 10/100 Ethernet port and link will be established (assuming Auto-Neg is enabled).  You can also force 100BASE-T or 10BASE-T full duplex to test those modes explicitly.

    Once this level of functionality has been confirmed, we can move on to the next step of linking with the switch.

    Patrick