1PHY_POLL_RESET(9)           Network device support           PHY_POLL_RESET(9)
2
3
4

NAME

6       phy_poll_reset - Safely wait until a PHY reset has properly completed
7

SYNOPSIS

9       int phy_poll_reset(struct phy_device * phydev);
10

ARGUMENTS

12       phydev
13           The PHY device to poll
14

DESCRIPTION

16       According to IEEE 802.3, Section 2, Subsection 22.2.4.1.1, as published
17       in 2008, a PHY reset may take up to 0.5 seconds. The MII BMCR register
18       must be polled until the BMCR_RESET bit clears.
19
20       Furthermore, any attempts to write to PHY registers may have no effect
21       or even generate MDIO bus errors until this is complete.
22
23       Some PHYs (such as the Marvell 88E1111) don't entirely conform to the
24       standard and do not fully reset after the BMCR_RESET bit is set, and
25       may even *REQUIRE* a soft-reset to properly restart autonegotiation. In
26       an effort to support such broken PHYs, this function is separate from
27       the standard phy_init_hw which will zero all the other bits in the BMCR
28       and reapply all driver-specific and board-specific fixups.
29
31Kernel Hackers Manual 3.10         June 2019                 PHY_POLL_RESET(9)
Impressum