Re: [PATCH v2] net/phy/vitesse: Configure RGMII skew on VSC8601, if needed

From: Alex
Date: Wed Nov 16 2016 - 12:10:23 EST




On 11/16/2016 08:54 AM, Andrew Lunn wrote:
On Wed, Nov 16, 2016 at 08:44:30AM -0800, Alex wrote:


On 11/16/2016 05:50 AM, Andrew Lunn wrote:
On Wed, Nov 16, 2016 at 01:02:33AM -0800, Alexandru Gagniuc wrote:
With RGMII, we need a 1.5 to 2ns skew between clock and data lines. The
VSC8601 can handle this internally. While the VSC8601 can set more
fine-grained delays, the standard skew settings work out of the box.
The same heuristic is used to determine when this skew should be enabled
as in vsc824x_config_init().

+/* This adds a skew for both TX and RX clocks, so the skew should only be
+ * applied to "rgmii-id" interfaces. It may not work as expected
+ * on "rgmii-txid", "rgmii-rxid" or "rgmii" interfaces. */

Hi Alexandru

You should be able to make "rgmii" work as expected. If that is the
phy mode, disable the skew.

And that's exactly the implemented behavior. See
vsc8601_config_init() below.

I don't think so. vsc8601_config_init() will not cause the skew to be
cleared if the phy-mode is "rgmii" and something else like the
bootloader could of set the skew. So saying that "rgmii" might not
work as expected is true. But with a minor change, you can make it
work as expected.

That's not within the scope of this change. The scope is to make rgmii-id work. Any additional changes would be untested.

Alex