linux/Documentation/devicetree/bindings/net
Martin Blumenstingl e5f3a4a56c Documentation: devicetree: clarify usage of the RGMII phy-modes
RGMII requires special RX and/or TX delays depending on the actual
hardware circuit/wiring. These delays can be added by the MAC, the PHY
or the designer of the circuit (the latter means that no delay has to
be added by PHY or MAC).
There are 4 RGMII phy-modes used describe where a delay should be
applied:
- rgmii: the RX and TX delays are either added by the MAC (where the
  exact delay is typically configurable, and can be turned off when no
  extra delay is needed) or not needed at all (because the hardware
  wiring adds the delay already). The PHY should neither add the RX nor
  TX delay in this case.
- rgmii-rxid: configures the PHY to enable the RX delay. The MAC should
  not add the RX delay in this case.
- rgmii-txid: configures the PHY to enable the TX delay. The MAC should
  not add the TX delay in this case.
- rgmii-id: combines rgmii-rxid and rgmii-txid and thus configures the
  PHY to enable the RX and TX delays. The MAC should neither add the RX
  nor TX delay in this case.

Document these cases in the ethernet.txt documentation to make it clear
when to use each mode.
If applied incorrectly one might end up with MAC and PHY both enabling
for example the TX delay, which breaks ethernet TX traffic on 1000Mbit/s
links.

Signed-off-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2016-11-28 12:06:54 -05:00
..
can can: rcar_canfd: Add Classical CAN only mode support 2016-06-23 11:23:49 +02:00
dsa Documentation: devicetree: add qca8k binding 2016-09-16 04:31:51 -04:00
ieee802154 ieee802154/adf7242: Driver for ADF7242 MAC IEEE802154 2015-12-11 11:27:22 +01:00
nfc nfc: pn533: Add device tree documentation for i2c phy 2016-05-01 23:28:50 +02:00
wireless dt: bindings: Add binding for ESP8089 wifi chips 2016-08-30 17:07:47 -05:00
allwinner,sun4i-emac.txt
allwinner,sun4i-mdio.txt
allwinner,sun7i-a20-gmac.txt
altera_tse.txt
amd-xgbe.txt amd-xgbe: Support defining PHY resources in ETH device node 2015-05-15 15:21:43 -04:00
apm-xgene-enet.txt Documentation: dtb: xgene: Add rxlos GPIO mapping 2016-08-13 11:48:53 -07:00
apm-xgene-mdio.txt Documentation: dtb: xgene: Add MDIO node 2016-07-25 21:51:44 -07:00
arc_emac.txt net: arc_emac: add phy reset is optional for device tree 2016-03-16 19:28:01 -04:00
brcm,amac.txt dt-bindings: net: bgmac: add bindings documentation for bgmac 2016-08-08 11:06:24 -07:00
brcm,bcm7445-switch-v4.0.txt Documentation: dt: bindings: Update Broadcom 7445 switch document 2016-08-19 17:15:36 -07:00
brcm,bcmgenet.txt DT: phy.txt: Clarify expected compatible values 2016-01-28 22:53:16 -08:00
brcm,bgmac-nsp.txt dt-bindings: net: bgmac: add bindings documentation for bgmac 2016-08-08 11:06:24 -07:00
brcm,iproc-mdio.txt dt-bindings: net: Broadcom iProc MDIO bus driver device tree binding 2015-10-08 04:44:44 -07:00
brcm,mdio-mux-iproc.txt binding: mdio-mux: Add DT binding doc for Broadcom MDIO bus multiplexer 2016-06-10 23:24:54 -07:00
brcm,systemport.txt dt-bindings: brcm: rationalize Broadcom documentation naming 2015-03-26 12:14:11 -05:00
brcm,unimac-mdio.txt dt-bindings: brcm: rationalize Broadcom documentation naming 2015-03-26 12:14:11 -05:00
broadcom-bcm87xx.txt
calxeda-xgmac.txt
cavium-mdio.txt phy: mdio-thunder: Add driver for Cavium Thunder SoC MDIO buses. 2016-03-14 15:27:22 -04:00
cavium-mix.txt
cavium-pip.txt Documentation/devicetree: document cavium-pip rx-delay/tx-delay properties 2016-07-18 17:18:35 -05:00
cirrus,cs89x0.txt dt: bindings: Add bindings for Cirrus Logic CS89x0 ethernet chip 2016-06-15 12:17:57 -07:00
cpsw-phy-sel.txt
cpsw.txt Documentation: DT: cpsw: remove rx_descs property 2016-06-17 21:27:57 -07:00
davicom-dm9000.txt dm9000: Add regulator and reset support to dm9000 2015-01-15 14:08:07 -05:00
davinci_emac.txt net: davinci_emac: Add support for emac on dm816x 2015-01-16 01:00:03 -05:00
davinci-mdio.txt net: davinci_mdio: introduce "ti,cpsw-mdio" compat string 2016-06-28 08:57:19 -04:00
emac_rockchip.txt net: arc_emac: make the rockchip emac document more compatible 2016-03-16 19:28:01 -04:00
ethernet.txt Documentation: devicetree: clarify usage of the RGMII phy-modes 2016-11-28 12:06:54 -05:00
ezchip_enet.txt NET: Add ezchip ethernet driver 2015-06-23 07:16:25 -07:00
fixed-link.txt phy: fixed_phy: Add gpio to determine link up/down. 2015-08-31 14:48:02 -07:00
fsl-fec.txt ARM: imx6: disable deeper idle states when FEC is active w/o HW workaround 2016-06-12 19:48:08 +08:00
fsl-tsec-phy.txt doc: dt: net: Add fsl,wake-on-filer for eTSEC 2015-10-07 04:19:42 -07:00
gpmc-eth.txt
hisilicon-femac-mdio.txt net: Add MDIO bus driver for the Hisilicon FEMAC 2016-07-16 21:32:58 -07:00
hisilicon-femac.txt net: hisilicon: Add Fast Ethernet MAC driver 2016-07-16 21:32:58 -07:00
hisilicon-hip04-net.txt net: add Hisilicon Network Subsystem support (config and documents) 2015-09-20 21:42:57 -07:00
hisilicon-hix5hd2-gmac.txt
hisilicon-hns-dsaf.txt Documentation: Bindings: Update DT binding for hns dsaf node 2016-04-29 13:39:03 -04:00
hisilicon-hns-mdio.txt net: hisilicon: fix binding document of mdio 2015-11-18 15:08:22 -05:00
hisilicon-hns-nic.txt Devicetree for 4.7: 2016-05-20 14:51:34 -07:00
ipq806x-dwmac.txt net: stmmac: ipq806x: document device tree bindings 2015-05-30 17:04:37 -07:00
keystone-netcp.txt net: netcp: Fix a typo in keystone-netcp.txt 2016-06-30 08:53:44 -04:00
lpc-eth.txt
macb.txt net: ethernet: macb: Add support for rx_clk 2016-08-18 20:58:42 -07:00
marvell-armada-370-neta.txt net: mvneta: bm: add support for hardware buffer management 2016-03-14 12:19:46 -04:00
marvell-bt-sd8xxx.txt dt: bindings: fix documentation for MARVELL's bt-sd8xxx wireless device 2016-06-03 07:32:38 -05:00
marvell-neta-bm.txt net: mvneta: bm: add support for hardware buffer management 2016-03-14 12:19:46 -04:00
marvell-orion-mdio.txt
marvell-orion-net.txt net: mv643xx_eth: Fetch the phy connection type from DT 2016-10-29 15:11:36 -04:00
marvell-pp2.txt
marvell-pxa168.txt Documentation: bindings: net: add the Marvell PXA168 Ethernet controller 2014-09-30 16:36:12 -04:00
maxim,ds26522.txt powerpc/t104xd4rdb: add DS26522 nodes to device tree 2015-10-16 19:32:11 -05:00
mdio-gpio.txt
mdio-mux-gpio.txt DT: phy.txt: Clarify expected compatible values 2016-01-28 22:53:16 -08:00
mdio-mux-mmioreg.txt
mdio-mux.txt binding: Make "mdio-parent-bus" property from mandatory to optional 2016-06-10 23:24:54 -07:00
mediatek-net.txt net: ethernet: mediatek: remove hwlro property in the device tree 2016-10-06 21:08:08 -04:00
mediatek,mt7620-gsw.txt Documentation: DT: net: add docs for ralink/mediatek SoC ethernet binding 2016-01-20 00:39:20 +01:00
meson-dwmac.txt net: dt-bindings: Document the new Meson8b and GXBB DWMAC bindings 2016-09-07 14:12:47 -07:00
micrel-ks8851.txt
micrel-ks8995.txt dt-bindings: net: ks8995: add bindings documentation for ks8995 2016-02-11 11:34:25 -05:00
micrel-ksz90x1.txt devicetree: net: micrel-ksz90x1.txt: Properly explain skew settings 2016-10-06 20:49:12 -04:00
micrel.txt net: phy: micrel: Add KSZ8041FTL fiber mode support 2016-07-15 11:53:02 -07:00
microchip,enc28j60.txt net: ethernet: enc28j60: add device tree support 2016-04-29 16:23:02 -04:00
moxa,moxart-mac.txt
mscc-phy-vsc8531.txt net: phy: Add Edge-rate driver for Microsemi PHYs. 2016-10-04 00:47:30 -04:00
nxp,lpc1850-dwmac.txt doc: dt: add documentation for nxp,lpc1850-dwmac 2015-05-15 12:44:21 -04:00
opencores-ethoc.txt
phy.txt Revert "phy: add support for a reset-gpio specification" 2016-05-20 17:56:59 -04:00
qca-qca7000-spi.txt Documentation: add Device tree bindings for QCA7000 2014-09-29 00:23:52 -04:00
qcom-emac.txt net: emac: emac gigabit ethernet controller driver 2016-09-01 23:32:05 -07:00
ralink,rt2880-net.txt Documentation: DT: net: add docs for ralink/mediatek SoC ethernet binding 2016-01-20 00:39:20 +01:00
ralink,rt3050-esw.txt Documentation: DT: net: add docs for ralink/mediatek SoC ethernet binding 2016-01-20 00:39:20 +01:00
renesas,ravb.txt dt-bindings: net: renesas-ravb: Add support for R8A7796 RAVB 2016-10-06 20:46:40 -04:00
rockchip-dwmac.txt net: stmmac: dwmac-rk: add rk3366 & rk3399 specific data 2016-09-02 17:08:56 -07:00
samsung-sxgbe.txt
sh_eth.txt sh_eth: add R8A7743/5 support 2016-09-28 05:01:50 -04:00
smsc911x.txt net: smsc911x: augment device tree bindings 2016-09-07 21:05:54 -07:00
smsc-lan87xx.txt net: phy: smsc: disable energy detect mode 2015-10-21 06:41:44 -07:00
smsc-lan91c111.txt net: smc91x: Fix gpios for device tree based booting 2014-10-31 15:54:18 -04:00
snps,dwc-qos-ethernet.txt dt: net: enhance DWC EQoS binding to support Tegra186 2016-09-12 08:38:03 -05:00
socfpga-dwmac.txt net: ethernet: Add TSE PCS support to dwmac-socfpga 2016-07-10 22:07:50 -07:00
sti-dwmac.txt stmmac: dwmac-sti: Pass sysconfig register offset via syscon dt property. 2015-01-11 18:53:34 -05:00
stm32-dwmac.txt Documentation: Bindings: Add STM32 DWMAC glue 2016-09-01 14:03:40 -07:00
stmmac.txt drivers: net: stmmac: add port selection programming 2016-06-28 08:54:23 -04:00
ti,dp83867.txt Documentation: dt: net: fix spelling mistakes 2016-04-25 08:41:19 -05:00
via-rhine.txt
via-velocity.txt
xilinx_gmii2rgmii.txt Documentation: DT: net: Add Xilinx gmiitorgmii converter device tree binding documentation 2016-08-12 16:57:20 -07:00