On Fri, Jan 03, 2020 at 07:01:50AM +0000, Madalin Bucur (OSS) wrote: > > -----Original Message----- > > From: Russell King - ARM Linux admin <linux@xxxxxxxxxxxxxxx> > > Sent: Monday, December 23, 2019 2:08 PM > > To: Madalin Bucur <madalin.bucur@xxxxxxx> > > Cc: davem@xxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; andrew@xxxxxxx; > > f.fainelli@xxxxxxxxx; hkallweit1@xxxxxxxxx; shawnguo@xxxxxxxxxx; > > devicetree@xxxxxxxxxxxxxxx > > Subject: Re: [PATCH 1/6] net: phy: add interface modes for XFI, SFI > > > > On Thu, Dec 19, 2019 at 06:32:51PM +0000, Madalin Bucur wrote: > > > 10GBase-R could be used as a common nominator but just as well 10G and > > > remove the rest while we're at it. There are/may be differences in > > > features, differences in the way the HW is configured (the most > > > important aspect) and one should be able to determine what interface > > > type is in use to properly configure the HW. SFI does not have the CDR > > > function in the PMD, relying on the PMA signal conditioning vs the XFI > > > that requires this in the PMD. > > > > I've now found a copy of INF-8077i on the net, which seems to be the > > document that defines XFI. The definition in there seems to be very > > similar to SFI in that it is an electrical specification, not a > > protocol specification, and, just like SFI, it defines the electrical > > characteristics at the cage, not at the serdes. Therefore, the effects > > of the board layout come into play to achieve compliance with XFI. > > I think we're missing the point here: we need to start from the device > tree and that is supposed to describe the board, the hardware, not to > configure the software. Please re-read the paragraph above in this key: > the device tree needs to describe the HW features, those electrical > properties you are discussing above. The fact that we use a certain > protocol over it, by choice in software, does not change the HW and it > should not change the device tree describing it. phy_interface_t does *NOT* describe the electrical properties of the link; it describes the protocol. The protocol for 10GBASE-R, SFI and XFI are *all* the same. Therefore, phy_interface_t does *not* distinguish between these. Yes, DT may need to describe the electrical properties. That needs to be done independently of the phy_interface_t and therefore phy-mode definition. Just like it is done for SATA interfaces that need the eye mask (electrical properties of the serdes) adjusted for the board. > > Just like SFI, XFI can be used with multiple different underlying > > protocols. I quote: > > > > "The XFI interface is designed to support SONET OC-192, > > IEEE.Std-802.3ae, 10GFC and G.709(OTU-2) applications." > > > > Therefore, to describe 10GBASE-R as "XFI" is most definitely incorrect. > > 10GBASE-R is just _one_ protocol that can be run over XFI, but it is > > not the only one. > > Exactly why the chip to chip interface described by the device tree needs > to be xfi not 10GBASE-R, Sorry no. Merely specifying "xfi" does not tell you what you need to do to achieve XFI compliance at the point defined in INF8077i. Plus, XFI can also be protocols _other_ than 10GBASE-R. Claiming that "XFI" properly defines the interface is utter rubbish. It does not. XFI defines the electrical characteristics *only* and not the underlying protocol. It is not limited to 10GBASE-R, but includes other protocols as well. XFI is not a phy interface type. Sorry. -- RMK's Patch system: https://www.armlinux.org.uk/developer/patches/ FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up According to speedtest.net: 11.9Mbps down 500kbps up