linux_dsm_epyc7002/drivers/net/phy
Markus Niebel e1b505a603 net: phy: micrel: add 125MHz reference clock workaround
The micrel KSZ9031 phy has a optional clock pin (CLK125_NDO) which can be
used as reference clock for the MAC unit. The clock signal must meet the
RGMII requirements to ensure the correct data transmission between the
MAC and the PHY. The KSZ9031 phy does not fulfill the duty cycle
requirement if the phy is configured as slave. For a complete
describtion look at the errata sheets: DS80000691D or DS80000692D.

The errata sheet recommends to force the phy into master mode whenever
there is a 1000Base-T link-up as work around. Only set the
"micrel,force-master" property if you use the phy reference clock provided
by CLK125_NDO pin as MAC reference clock in your application.

Attenation, this workaround is only usable if the link partner can
be configured to slave mode for 1000Base-T.

Signed-off-by: Markus Niebel <Markus.Niebel@tqs.de>
[m.felsch@pengutronix.de: fix dt-binding documentation]
[m.felsch@pengutronix.de: use already existing result var for read/write]
[m.felsch@pengutronix.de: add error handling]
[m.felsch@pengutronix.de: add more comments]
Signed-off-by: Marco Felsch <m.felsch@pengutronix.de>
Reviewed-by: Andrew Lunn <andrew@lunn.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-05-16 12:20:03 -04:00
..
amd.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
aquantia.c net: phy: aquantia: Utilize genphy_c45_aneg_done() 2018-03-01 21:23:34 -05:00
at803x.c net: phy: fix wrong masks to phy_modify() 2018-01-08 14:20:21 -05:00
bcm7xxx.c net: phy: Fix spelling mistake: "advertisment"-> "advertisement" 2018-03-04 18:11:54 -05:00
bcm63xx.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
bcm87xx.c phy: Centralize setting driver module owner 2016-01-07 14:31:27 -05:00
bcm-cygnus.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
bcm-phy-lib.c net: phy: broadcom: Use strlcpy() for ethtool::get_strings 2018-03-06 11:12:39 -05:00
bcm-phy-lib.h net: phy: broadcom: Add support code for reading PHY counters 2016-11-30 10:22:27 -05:00
broadcom.c net: phy: broadcom: add support for BCM89610 PHY 2018-05-04 12:45:55 -04:00
cicada.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
cortina.c net: phy: cortina: Utilize generic functions 2018-03-01 21:23:35 -05:00
davicom.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
dp83640_reg.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
dp83640.c dp83640: Ensure against premature access to PHY registers after reset 2018-04-08 19:58:52 -04:00
dp83822.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
dp83848.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
dp83867.c net: phy: dp83867: Add binding for the CLK_OUT pin muxing option 2018-02-14 15:33:43 -05:00
et1011c.c phy: Centralize setting driver module owner 2016-01-07 14:31:27 -05:00
fixed_phy.c net: phy: fixed-phy: remove fixed_phy_update_state() 2018-01-03 10:38:54 -05:00
icplus.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
intel-xway.c net: phy: intel-xway: add VR9 v1.1 phy ids 2018-03-23 13:19:49 -04:00
Kconfig net: phy: leds: Add support for "link" trigger 2017-11-08 10:24:14 +09:00
lxt.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
Makefile Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2017-11-04 09:26:51 +09:00
marvell10g.c net: phy: marvell10g: add thermal hwmon device 2018-04-04 11:24:54 -04:00
marvell.c net: phy: marvell: clear wol event before setting it 2018-04-23 21:06:41 -04:00
mdio_bus.c net: phy: Handle not having GPIO enabled in the kernel 2018-02-06 11:20:17 -05:00
mdio_device.c phylib: rename reset-(post-)delay-us to reset-(de)assert-us 2017-12-27 11:06:50 -05:00
mdio-bcm-iproc.c net: phy: Initialize mdio clock at probe function 2017-02-09 17:10:23 -05:00
mdio-bcm-unimac.c net: phy: mdio-bcm-unimac: fix potential NULL dereference in unimac_mdio_probe() 2018-01-11 13:56:24 -05:00
mdio-bitbang.c fix typo in command value in drivers/net/phy/mdio-bitbang. 2018-04-01 20:54:41 -04:00
mdio-boardinfo.c net: phy: Allow building mdio-boardinfo into the kernel 2017-03-29 10:32:32 -07:00
mdio-boardinfo.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
mdio-cavium.c phy: mdio-cavium: Add missing MODULE_* annotations. 2016-03-16 19:55:37 -04:00
mdio-cavium.h phy: mdio-octeon: Refactor into two files/modules 2016-03-14 15:27:22 -04:00
mdio-gpio.c net: mdio-gpio: make mdiobb_ops const 2017-08-22 14:22:18 -07:00
mdio-hisi-femac.c net: Add MDIO bus driver for the Hisilicon FEMAC 2016-07-16 21:32:58 -07:00
mdio-i2c.c net: phy: add I2C mdio bus 2017-08-06 20:55:28 -07:00
mdio-i2c.h net: phy: add I2C mdio bus 2017-08-06 20:55:28 -07:00
mdio-moxart.c mdio: Move allocation of interrupts into core 2016-01-07 14:31:26 -05:00
mdio-mux-bcm-iproc.c net: mdio-mux: add mdio_mux parameter to mdio_mux_init() 2017-09-05 14:42:52 -07:00
mdio-mux-gpio.c net: mdio-mux: add mdio_mux parameter to mdio_mux_init() 2017-09-05 14:42:52 -07:00
mdio-mux-mmioreg.c net: phy: mdio-mux: slience probe defer error 2018-03-07 12:39:59 -05:00
mdio-mux.c net: mdio-mux: add mdio_mux parameter to mdio_mux_init() 2017-09-05 14:42:52 -07:00
mdio-octeon.c phy: mdio-octeon: Refactor into two files/modules 2016-03-14 15:27:22 -04:00
mdio-sun4i.c mdio-sun4i: Fix a memory leak 2018-01-08 14:30:28 -05:00
mdio-thunder.c phy: mdio-thunder: Add driver for Cavium Thunder SoC MDIO buses. 2016-03-14 15:27:22 -04:00
mdio-xgene.c net: phy: xgene: disable clk on error paths 2017-12-18 15:09:42 -05:00
mdio-xgene.h drivers: net: phy: xgene: Add lock to protect mac access 2017-05-16 11:41:08 -04:00
meson-gxl.c net: phy: meson-gxl: join the authors 2017-12-18 13:24:56 -05:00
micrel.c net: phy: micrel: add 125MHz reference clock workaround 2018-05-16 12:20:03 -04:00
microchip.c lan78xx: PHY DSP registers initialization to address EEE link drop issues with long cables 2018-04-12 21:46:10 -04:00
mscc.c net: phy: Add LED mode driver for Microsemi PHYs. 2017-02-08 13:29:04 -05:00
national.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
phy_device.c net: phy: allow scanning busses with missing phys 2018-04-25 12:59:42 -04:00
phy_led_triggers.c net: phy: leds: Add support for "link" trigger 2017-11-08 10:24:14 +09:00
phy-c45.c net: phy: Fix spelling mistake: "advertisment"-> "advertisement" 2018-03-04 18:11:54 -05:00
phy-core.c net: phy: Fix spelling mistake: "advertisment"-> "advertisement" 2018-03-04 18:11:54 -05:00
phy.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-03-23 11:31:58 -04:00
phylink.c sfp/phylink: move module EEPROM ethtool access into netdev core ethtool 2018-03-30 10:11:06 -04:00
qsemi.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
realtek.c net: phy: realtek: Use the dummy stubs for MMD register access for rtl8211b 2018-03-22 11:41:07 -04:00
rockchip.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
sfp-bus.c net: phy: sfp: fix the BR,min computation 2018-05-04 13:30:10 -04:00
sfp.c sfp: allow cotsworks modules 2018-03-29 14:30:41 -04:00
sfp.h sfp: add sfp-bus to bridge between network devices and sfp cages 2017-08-06 20:55:29 -07:00
smsc.c net: phy: smsc: LAN8710/20: add PHY_RST_AFTER_CLK_EN flag 2017-12-13 11:22:54 -05:00
spi_ks8995.c drivers/net: Use octal not symbolic permissions 2018-03-26 12:07:49 -04:00
ste10Xp.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
swphy.c phy: generate swphy registers on the fly 2016-06-27 10:40:57 -04:00
swphy.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
teranetics.c net: phy: teranetics: Utilize generic functions 2018-03-01 21:23:34 -05:00
uPD60620.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
vitesse.c net: phy: remove generic settings for callbacks config_aneg and read_status from drivers 2017-12-01 15:42:21 -05:00
xilinx_gmii2rgmii.c net: phy: Fix mask value write on gmii2rgmii converter speed register 2017-09-18 16:33:18 -07:00