linux_dsm_epyc7002/drivers/net/phy
Andrew Lunn 3c293f4e08 net: phy: Trigger state machine on state change and not polling.
The phy_start() is used to indicate the PHY is now ready to do its
work. The state is changed, normally to PHY_UP which means that both
the MAC and the PHY are ready.

If the phy driver is using polling, when the next poll happens, the
state machine notices the PHY is now in PHY_UP, and kicks off
auto-negotiation, if needed.

If however, the PHY is using interrupts, there is no polling. The phy
is stuck in PHY_UP until the next interrupt comes along. And there is
no reason for the PHY to interrupt.

Have phy_start() schedule the state machine to run, which both speeds
up the polling use case, and makes the interrupt use case actually
work.

This problems exists whenever there is a state change which will not
cause an interrupt. Trigger the state machine in these cases,
e.g. phy_error().

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Cc: Kyle Roeschley <kyle.roeschley@ni.com>
Tested-by: Kyle Roeschley <kyle.roeschley@ni.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-10-13 12:03:47 -04:00
..
amd.c
aquantia.c
at803x.c
bcm7xxx.c
bcm63xx.c
bcm87xx.c
bcm-cygnus.c
bcm-phy-lib.c
bcm-phy-lib.h
broadcom.c
cicada.c
davicom.c
dp83640_reg.h
dp83640.c
dp83848.c
dp83867.c
et1011c.c
fixed_phy.c
icplus.c
intel-xway.c
Kconfig drivers: net: phy: Correct duplicate MDIO_XGENE entry 2016-10-06 21:15:42 -04:00
lxt.c
Makefile
marvell.c
mdio_bus.c
mdio_device.c
mdio-bcm-iproc.c
mdio-bcm-unimac.c
mdio-bitbang.c
mdio-cavium.c
mdio-cavium.h
mdio-gpio.c
mdio-hisi-femac.c
mdio-moxart.c
mdio-mux-bcm-iproc.c
mdio-mux-gpio.c
mdio-mux-mmioreg.c
mdio-mux.c
mdio-octeon.c
mdio-sun4i.c
mdio-thunder.c
mdio-xgene.c drivers: net: phy: xgene: Fix 'remove' function 2016-09-13 12:04:11 -04:00
mdio-xgene.h
micrel.c phy: micrel.c: Enable ksz9031 energy-detect power-down mode 2016-10-05 21:19:06 -04:00
microchip.c phy: mark lan88xx_suspend() static 2016-09-19 21:52:10 -04:00
mscc.c net: phy: Add Wake-on-LAN driver for Microsemi PHYs. 2016-10-06 20:48:04 -04:00
national.c
phy_device.c
phy.c net: phy: Trigger state machine on state change and not polling. 2016-10-13 12:03:47 -04:00
qsemi.c
realtek.c
smsc.c
spi_ks8995.c
ste10Xp.c
swphy.c
swphy.h
teranetics.c
vitesse.c
xilinx_gmii2rgmii.c