> -----Original Message----- > From: Andrew Lunn <andrew@xxxxxxx> > Sent: 2024年8月15日 22:33 > To: Wei Fang <wei.fang@xxxxxxx> > Cc: davem@xxxxxxxxxxxxx; edumazet@xxxxxxxxxx; kuba@xxxxxxxxxx; > pabeni@xxxxxxxxxx; robh@xxxxxxxxxx; krzk+dt@xxxxxxxxxx; > conor+dt@xxxxxxxxxx; f.fainelli@xxxxxxxxx; hkallweit1@xxxxxxxxx; > linux@xxxxxxxxxxxxxxx; Andrei Botila (OSS) <andrei.botila@xxxxxxxxxxx>; > netdev@xxxxxxxxxxxxxxx; devicetree@xxxxxxxxxxxxxxx; > linux-kernel@xxxxxxxxxxxxxxx > Subject: Re: [PATCH net-next 1/3] dt-bindings: net: tja11xx: use reverse-mode > to instead of rmii-refclk-in > > On Thu, Aug 15, 2024 at 01:51:24PM +0800, Wei Fang wrote: > > Per the MII and RMII specifications, for the standard RMII mode, the > > REF_CLK is sourced from MAC to PHY or from an external source. > > For the standard MII mode, the RX_CLK and TX_CLK are both sourced by > > the PHY. But for TJA11xx PHYs, they support reverse mode, that is, for > > revRMII mode, the REF_CLK is output, and for revMII mode, the TX_CLK > > and RX_CLK are inputs to the PHY. > > Previously the "nxp,rmii-refclk-in" was added to indicate that in RMII > > mode, if this property present, REF_CLK is input to the PHY, otherwise > > it is output. This seems inappropriate now. Firstly, for the standard > > RMII mode, REF_CLK is originally input, and there is no need to add > > the "nxp,rmii-refclk-in" property to indicate that REF_CLK is input. > > Secondly, this property is not generic for TJA PHYs, because it cannot > > cover the settings of TX_CLK and RX_CLK in MII mode. Therefore, add > > new property "nxp,reverse-mode" to instead of the "nxp,rmii-refclk-in" > > property. > > Please could you add some justification why using > PHY_INTERFACE_MODE_REVRMII is not possible. > According to the commit message c858d436be8b ("net: phy: introduce PHY_INTERFACE_MODE_REVRMII"), my understanding is that PHY_INTERFACE_MODE_REVRMII and PHY_INTERFACE_MODE_REVMII are used for MAC to MAC connections, which means the MAC behaves link an RMII/MII PHY. For the MAC to PHY connection, I think these two macros are not applicable. Currently PHY_INTERFACE_MODE_REVMII is used in both TJA11xx drivers, and if my understanding is correct I think they will need to be removed in the future.