linux-stable/drivers/net/phy
Bruno Thomsen b838b4aced phy/micrel: KSZ8031RNL RMII clock reconfiguration bug
Bug: Unable to send and receive Ethernet packets with Micrel PHY.

Affected devices:
KSZ8031RNL (commercial temp)
KSZ8031RNLI (industrial temp)

Description:
PHY device is correctly detected during probe.
PHY power-up default is 25MHz crystal clock input
and output 50MHz RMII clock to MAC.
Reconfiguration of PHY to input 50MHz RMII clock from MAC
causes PHY to become unresponsive if clock source is changed
after Operation Mode Strap Override (OMSO) register setup.

Cause:
Long lead times on parts where clock setup match circuit design
forces the usage of similar parts with wrong default setup.

Solution:
Swapped KSZ8031 register setup and added phy_write return code validation.

Tested with Freescale i.MX28 Fast Ethernet Controler (fec).

Signed-off-by: Bruno Thomsen <bth@kamstrup.dk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2014-10-14 12:41:03 -04:00
..
amd-xgbe-phy.c amd-xgbe-phy: Fix build break for missing declaration 2014-09-07 11:21:31 -07:00
amd.c
at803x.c net: phy: at803x: fix coccinelle warnings 2014-06-22 17:16:02 -07:00
bcm7xxx.c net: phy: add BCM7425 and BCM7429 PHYs 2014-10-01 22:12:48 -04:00
bcm63xx.c
bcm87xx.c
broadcom.c net: phy: broadcom: move shadow 0x1C register accessors to brcmphy.h 2014-08-23 11:38:53 -07:00
cicada.c net: phy: cicada: fix checkpath errors 2013-12-18 00:49:01 -05:00
davicom.c net: phy: davicom: fix checkpath errors 2013-12-18 00:49:01 -05:00
dp83640.c dp83640: Make use of skb_queue_purge instead of reimplementing the code 2014-09-08 14:24:35 -07:00
dp83640_reg.h
et1011c.c
fixed.c net: phy: adjust fixed_phy_register() return value 2014-10-07 13:06:45 -04:00
icplus.c net: phy: icplus: fix checkpath error 2013-12-18 00:49:02 -05:00
Kconfig drivers/net/phy/Kconfig: Let MDIO_BCM_UNIMAC depend on HAS_IOMEM 2014-10-06 00:46:27 -04:00
lxt.c net: phy: lxt: fix checkpath errors 2013-12-18 00:49:02 -05:00
Makefile net: phy: add generic UniMAC MDIO bus driver 2014-08-27 22:59:39 -07:00
marvell.c net: phy: marvell: provide genphy suspend/resume 2013-12-17 14:42:44 -05:00
mdio-bcm-unimac.c net: phy: mdio-bcm-unimac: NULL-terminate unimac_mdio_ids 2014-09-01 20:41:45 -07:00
mdio-bitbang.c
mdio-gpio.c net: mdio-gpio: warn about missing bus alias id 2014-05-09 15:51:19 -04:00
mdio-moxart.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
mdio-mux-gpio.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
mdio-mux-mmioreg.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
mdio-mux.c
mdio-octeon.c drivers/net: delete non-required instances of include <linux/init.h> 2014-01-16 11:53:26 -08:00
mdio-sun4i.c net: sun4i: remove empty MDIO bus reset function 2014-03-28 01:38:02 -04:00
mdio_bus.c net: phy: properly report internal PHYs through sysfs 2014-08-29 20:17:53 -07:00
micrel.c phy/micrel: KSZ8031RNL RMII clock reconfiguration bug 2014-10-14 12:41:03 -04:00
national.c
phy.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2014-09-07 21:41:53 -07:00
phy_device.c phylib: use MDIO_DEVS[12] 2014-08-22 21:16:51 -07:00
qsemi.c
realtek.c net: phy: realtek: register/unregister multiple drivers properly 2014-06-11 15:17:27 -07:00
smsc.c net: phy: smsc: move smsc_phy_config_init reset part in a soft_reset function 2014-08-16 20:15:54 -07:00
spi_ks8995.c net: phy: spi_ks8995: Introduce the use of devm_kzalloc 2014-08-04 12:55:23 -07:00
ste10Xp.c
vitesse.c net/phy: Remove return value for void function 2014-04-23 15:28:05 -04:00