linux/drivers/net/ethernet/freescale
Andrew Lunn 6c3e921b18 net: fec: Ensure clocks are enabled while using mdio bus
When a switch is attached to the mdio bus, the mdio bus can be used
while the interface is not open. If the IPG clock is not enabled, MDIO
reads/writes will simply time out.

Add support for runtime PM to control this clock. Enable/disable this
clock using runtime PM, with open()/close() and mdio read()/write()
function triggering runtime PM operations. Since PM is optional, the
IPG clock is enabled at probe and is no longer modified by
fec_enet_clk_enable(), thus if PM is not enabled in the kernel, it is
guaranteed the clock is running when MDIO operations are performed.

Signed-off-by: Andrew Lunn <andrew@lunn.ch>
Acked-by: Fugang Duan <B38611@freescale.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-07-08 15:59:04 -07:00
..
fs_enet Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-06-24 02:58:51 -07:00
fec_main.c net: fec: Ensure clocks are enabled while using mdio bus 2015-07-08 15:59:04 -07:00
fec_mpc52xx_phy.c net/fsl: constify of_device_id array 2015-03-17 15:00:21 -04:00
fec_mpc52xx.c net/fsl: constify of_device_id array 2015-03-17 15:00:21 -04:00
fec_mpc52xx.h drivers/net: fix up stale paths from driver reorg 2012-01-30 12:54:40 -05:00
fec_ptp.c net: fec: ptp: correct the ENET_ATCOR value 2015-06-07 15:30:42 -07:00
fec.h net: fec: don't access RACC register when not available 2015-06-28 17:02:40 -07:00
fsl_pq_mdio.c net/fsl: constify of_device_id array 2015-03-17 15:00:21 -04:00
gianfar_ethtool.c gianfar: correct the bad expression while writing bit-pattern 2015-02-04 13:55:24 -08:00
gianfar_ptp.c ptp: gianfar: use helpers for converting ns to timespec. 2015-03-31 17:19:18 -04:00
gianfar.c gianfar: Enable changing mac addr when if up 2015-05-09 17:37:46 -04:00
gianfar.h gianfar: Make FCB access endian safe 2015-03-15 19:56:47 -04:00
Kconfig net/fsl: remove dependency FSL_SOC for Gianfar 2015-06-25 02:13:04 -07:00
Makefile gianfar: Remove sysfs stubs for FIFOCFG and stashing 2014-02-18 15:03:02 -05:00
ucc_geth_ethtool.c net: get rid of SET_ETHTOOL_OPS 2014-05-13 17:43:20 -04:00
ucc_geth.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-04-02 16:16:53 -04:00
ucc_geth.h net: remove skb recycling 2012-10-07 00:40:54 -04:00
xgmac_mdio.c net/fsl: constify of_device_id array 2015-03-17 15:00:21 -04:00