A
system and method for auto-
polling a
status register within a
physical layer (
PHY) interface to a
local area network (LAN). The
system includes a host CPU which needs to detect and service interrupts generated by a
PHY device on the LAN which is coupled between a first
transmission medium (such as
copper or
fiber cable) and a management interface to the
system. The system further includes an auto-
polling unit which monitors activity on the management interface of the
PHY device. When the auto-
polling unit detects a lack of activity on the management interface of the PHY for a predetermined interval, the auto-polling unit reads a first value from the PHY
status register. This first status value is then compared to a previously stored value which corresponds to the last PHY status value read by the host CPU. If a mismatch is detected between these two values, an interrupt is generated to the CPU. In response to receiving the interrupt, auto-polling is suspended (to avoid changing the status data that caused the interrupt) and the CPU requests a read of the status value in the first register. In this manner, the CPU is able to access the status value which caused the interrupt and determine the appropriate
course of action. This status read by the CPU also has the effect of clearing the interrupt. This system frees the CPU from having to continually poll the PHY
status register to determine if a change in status has occurred.