On 11/25/2016 05:12 AM, Martin Blumenstingl wrote: > 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@xxxxxxxxxxxxxx> Reviewed-by: Florian Fainelli <f.fainelli@xxxxxxxxx> -- Florian -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html