linux/drivers/net/ethernet/smsc
Enric Balletbo i Serra ccf899a27c smsc911x: power-up phydev before doing a software reset.
With commit be9dad1f9f ("net: phy: suspend phydev when going
to HALTED"), the PHY device will be put in a low-power mode using
BMCR_PDOWN if the the interface is set down. The smsc911x driver does
a software_reset opening the device driver (ndo_open). In such case,
the PHY must be powered-up before access to any register and before
calling the software_reset function. Otherwise, as the PHY is powered
down the software reset fails and the interface can not be enabled
again.

This patch fixes this scenario that is easy to reproduce setting down
the network interface and setting up again.

    $ ifconfig eth0 down
    $ ifconfig eth0 up
    ifconfig: SIOCSIFFLAGS: Input/output error

Signed-off-by: Enric Balletbo i Serra <eballetbo@iseebcn.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-11-13 15:09:28 -05:00
..
epic100.c PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
Kconfig netdev: smc91x: enable for xtensa 2013-11-08 13:27:55 -05:00
Makefile
smc91c92_cs.c net: get rid of SET_ETHTOOL_OPS 2014-05-13 17:43:20 -04:00
smc91x.c smc91x: retrieve IRQ and trigger flags in a modern way 2014-11-01 17:04:20 -04:00
smc91x.h net: smc91x: Fix gpios for device tree based booting 2014-10-31 15:54:18 -04:00
smc911x.c net: ethernet: Remove superfluous ether_setup after alloc_etherdev 2014-10-03 15:31:40 -07:00
smc911x.h ethernet: Fix FSF address in file headers 2013-12-06 12:37:55 -05:00
smc9194.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2013-11-13 17:40:34 +09:00
smc9194.h
smsc911x.c smsc911x: power-up phydev before doing a software reset. 2014-11-13 15:09:28 -05:00
smsc911x.h smsc: replace WARN_ON() with WARN_ON_SMP() 2014-08-11 14:38:29 -07:00
smsc9420.c PCI: Remove DEFINE_PCI_DEVICE_TABLE macro use 2014-08-12 12:15:14 -06:00
smsc9420.h ethernet: Fix FSF address in file headers 2013-12-06 12:37:55 -05:00