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.

[AM335x EMAC/MDIO] Link change interrupt is not generated on port2

HI,

I'm trying to get Link change interrupt on port1/2.

My board is AM335x Starter Kit(REV1.2B).

 

  Ethernet Port1(J6): PHY address is 0

  Ethernet Port2(J7): PHY address is 1

 

I plug the ethernet cables into port1/port2.

Link change interrupt on port1 is generated.

But, Link change interrupt on port2 is not generated.

 

Dual Mac Mode is enabled. And, LINKINTENB bit is enabled on MDIOUSERPHYSELn register.

    /* MDIOUSERPHYSEL 0 Register (LINKINTENB:1 PHYADDRMON:0) */

    HWREG(baseAddr + MDIO_USERPHYSEL0) = 0x40  // Port1

    /* MDIOUSERPHYSEL 1 Register (LINKINTENB:1 PHYADDRMON:1) */

    HWREG(baseAddr + MDIO_USERPHYSEL1) = 0x41  // Port2

 

Next, I change my code. Swap the PHY address.

 

    /* MDIOUSERPHYSEL 0 Register (LINKINTENB:1 PHYADDRMON:1) */

    HWREG(baseAddr + MDIO_USERPHYSEL0) = 0x41  // Port2

    /* MDIOUSERPHYSEL 1 Register (LINKINTENB:1 PHYADDRMON:0) */

    HWREG(baseAddr + MDIO_USERPHYSEL1) = 0x40  // Port1

 

This time, Link change interrupt on port2 is generated.

But, Link change interrupt on port1 is not generated.

 

What's the mistake?

 

Best Regards.