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]

 





On 2024-11-29 23:29, Andrew Lunn wrote:
I was mistaken earlier; it is actually the EMAC that will introduce a time
skew by shifting the phase of the clock in 'rgmii' mode.

This is fine, but not the normal way we do this. The Linux preference
is that the PHY adds the delays. There are a few exceptions, boards
which have PHYs which cannot add delays. In that case the MAC adds the
delays. But this is pretty unusual.

After testing, it has been observed that modes other than 'rgmii' do not function properly due to the current configuration sequence in the driver code.


If you decided you want to be unusual and have the MAC add the delays,
it should not be hard coded. You need to look at phy-mode. Only add

Are you suggesting that 'rgmii' indicates the delay is introduced by the board rather than the EMAC? But according to the Documentation/devicetree/bindings/net/ethernet-controller.yaml, this mode explicitly states that 'RX and TX delays are added by the MAC when required'. That is indeed my preference.

delays for rgmii-id. And you then need to mask the value passed to the
PHY, pass PHY_INTERFACE_MODE_RGMII, not PHY_INTERFACE_MODE_RGMII_ID,
so the PHY does not add delays as well.

	Andrew

--
Best Regards,
Yijie





[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