• Ben Hutchings's avatar
    sfc: Simplify XMAC link polling · 9007b9fa
    Ben Hutchings authored
    From: Steve Hodgson <shodgson@solarflare.com>
    Only the XMAC on Falcon needs help from the driver to poll and reset
    the MAC-PHY link (XAUI); GMII is a simple parallel bus and on later
    NICs firmware takes care of the XAUI link.  Also, an XMAC interrupt
    currently schedules a work item which simply clears a flag
    (efx_nic::mac_up) to be checked by the regular monitor (or the next
    link reconfiguration, if that is sooner).
    Rename the flag to xmac_poll_required, changing its sense.  Remove the
    needless indirection and just set the flag immediately.  Call
    falcon_xmac_poll() directly where required.
    Add a new generic operation mac_op::check_fault to check the link
    outside of regular monitoring, as required during self-tests.
    (Note that this leaves us with an unused work item, but we will
    immediately have another use for it.)
    Signed-off-by: default avatarBen Hutchings <bhutchings@solarflare.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>