> > > > > + phy-mode: > > > > > + enum: > > > > > + - rgmii-id > > > > > > > > phy-mode is normally a board property, in the .dts file, since the > > > > board > > > might > > > > decide to have extra long clock lines and so want 'rgmii'. > Hi Andrew, > What you said is right. Generally, PCB provides internal delay. It is actually pretty unusual for the PCB to add the delays. But there are some boards which do this. Which is why you should support it. > But in this case, due to customer request, the delay was added into SoC. Idealy, by the PHY. However, in terms of DT, the board .dts file just needs to say 'rmgii-id', meaning that the board does not provide the delays, so the MAC/PHY pair needs to provide the delay. > The following doc on rgmii says that "Devices which implement internal delay > shall be referred to as RGMII-ID. > Devices may offer an option to operate with/without internal delay and still > remain compliant with this spec" > https://community.nxp.com/pwmxy87654/attachments/pwmxy87654/imx-processors/2 > 0655/1/RGMIIv2_0_final_hp.pdf > > Also, the driver is in such a way that it handles all four rgmii in the same > way. > > Considering this, could you let us know what will be the right approach to > take in this case? List all four phy-modes in the binding. They should all be valid. However, the .dtsi file should not list a phy-mode, since it is a board property, not a SoC property. Andrew