On Tue, 2019-08-06 at 17:39 +0200, Andrew Lunn wrote: > [External] > > On Tue, Aug 06, 2019 at 06:47:08AM +0000, Ardelean, Alexandru wrote: > > On Mon, 2019-08-05 at 16:51 +0200, Andrew Lunn wrote: > > > [External] > > > > > > On Mon, Aug 05, 2019 at 07:54:43PM +0300, Alexandru Ardelean wrote: > > > > Sometimes, the connection between a MAC and PHY is done via a > > > > mode/interface converter. An example is a GMII-to-RGMII converter, which > > > > would mean that the MAC operates in GMII mode while the PHY operates in > > > > RGMII. In this case there is a discrepancy between what the MAC expects & > > > > what the PHY expects and both need to be configured in their respective > > > > modes. > > > > > > > > Sometimes, this converter is specified via a board/system configuration (in > > > > the device-tree for example). But, other times it can be left unspecified. > > > > The use of these converters is common in boards that have FPGA on them. > > > > > > > > This patch also adds support for a `adi,phy-mode-internal` property that > > > > can be used in these (implicit convert) cases. The internal PHY mode will > > > > be used to specify the correct register settings for the PHY. > > > > > > > > `fwnode_handle` is used, since this property may be specified via ACPI as > > > > well in other setups, but testing has been done in DT context. > > > > > > Looking at the patch, you seems to assume phy-mode is what the MAC is > > > using? That seems rather odd, given the name. It seems like a better > > > solution would be to add a mac-mode, which the MAC uses to configure > > > its side of the link. The MAC driver would then implement this > > > property. > > > > > > > actually, that's a pretty good idea; > > i guess i was narrow-minded when writing the driver, and got stuck on phy specifics, and forgot about the MAC-side; > > [ i also catch these design elements when reviewing, but i also seem to miss them when writing stuff sometimes ] > > > > Hi Ardelean > > We should also consider the media converter itself. It is passive, or > does it need a driver. You seems to be considering GMII-to-RGMII. But > what about RGMII to SGMII? or RGMII to 1000Base-KX etc? Ideally we > want a generic solution and we need to think about all the parts in > the system. In our case the GMII-to-RGMII converter is passive and does not need a driver. It's an HDL/FPGA block. There may be other converters that do need a driver. To be honest, the multitude of possible configurations [given that it's FPGA] can be... a lot. In one of our cases, specifying the MAC mode to be different than PHY mode [which assumes that there is an implicit passive media converter in-between] works. I admit that a generic solution would be nice. Is it ok if we defer the solution for this drivers/patchset? If you propose something, I can take a look as part of a different/new discussion. No guarrantees about how soon it would be implemented. Thanks Alex > > Andrew