The MDIO module includes a user access register
(MDIO CPSW_MDIO_USER_ACCESS_REG_k, where k = 0 or 1) to directly access a specified
PHY device.To write a PHY register, perform the following:
- Check to ensure that the GO bit in the MDIO user
access register (MDIO CPSW_MDIO_USER_ACCESS_REG_k) is cleared.
- Write to the GO, WRITE, REGADR, PHYADR, and DATA
bits in MDIO CPSW_MDIO_USER_ACCESS_REG_k corresponding to the PHY and PHY
register SW wants to write.
- The write operation to the PHY is scheduled and
completed by the MDIO module. Completion of the write operation can be
determined by polling the GO bit in MDIO CPSW_MDIO_USER_ACCESS_REG_k for a
0.
- Completion of the operation sets the
corresponding USERINTRAW bit (0 or 1) in the MDIO user command complete
interrupt register (CPSW_MDIO_USER_INT_RAW_REG) corresponding to MDIO
CPSW_MDIO_USER_ACCESS_REG_k used. If interrupts have been enabled on this bit
using the MDIO user command complete interrupt mask set register
(CPSW_MDIO_USER_INT_MASK_SET_REG), then the bit is also set in the MDIO user
command complete interrupt register (CPSW_MDIO_USER_INT_MASKED_REG) and an
interrupt is triggered on the host processor.