Re: [PATCH v2 2/2] arm64: dts: qcom: qcs615-ride: Enable ethernet node

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> > The usual setting here is 'rgmmii-id', which means something needs to
> > insert a 2ns delay on the clock lines. This is not always true, a very
> > small number of boards use extra long clock likes on the PCB to add
> > the needed 2ns delay.
> > 
> > Now, if 'rgmii' does work, it means something else is broken
> > somewhere. I will let you find out what.
> 
> The 'rgmii' does function correctly, but it does not necessarily mean that a
> time delay is required at the board level. The EPHY can also compensate for
> the time skew.

Basic definitions for phy-mode:

rgmii: Indicates the board provides the delays, normally via extra
long clock lines.

rgmii-id: The board does not provide the delay, the software need to
arrange that either the MAC or the PHY adds the delays.

We then have the values passed between the MAC and the PHY driver:
PHY_INTERFACE_MODE_RGMII: The PHY should not add delays
PHY_INTERFACE_MODE_RGMII_ID: The PHY should add delays.

A typical MAC/PHY combination, phy-mode is passed to the PHY, and the
PHY adds the delays, if needed.

This is why i said there are probably two bugs:

1) phy-mode rgmii should probably be rgmii-id

2) The PHY is adding delays when it should not be, because it is being
   passed PHY_INTERFACE_MODE_RGMII not PHY_INTERFACE_MODE_RGMII_ID.

	Andrew




[Index of Archives]     [Device Tree Compilter]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux PCI Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Yosemite Backpacking]


  Powered by Linux