Hi Russell, On Fri, Feb 15, 2019 at 05:12:24PM +0000, Russell King - ARM Linux admin wrote: > On Fri, Feb 15, 2019 at 04:32:38PM +0100, Antoine Tenart wrote: > > The documentation advises to set the XPCS in reset while reconfiguring > > the serdes lanes. This seems to be a good thing to do, but the PPv2 > > driver wasn't doing it. This patch fixes it. > > Hmm. That statment seems to have some ambiguity in it - we do two > "reconfigurations" - one may be upon initialisation, where the lane > is already configured for 10Gbase-KR, and we're re-initialising it > for the same mode. The other case is when we're switching between > 10Gbase-KR and SGMII, or as will be the case with 2.5G support for > the Alaska PHYs, 2500base-X.
The configuration at the lane at boot time is dependent to the firmware or bootloader configuration. On the mcbin, the lane may be configured in 10Gbase-KR, but it could be configured in SGMII as well. The configuration upon initialization and the re-configuration are quite similar then, as we might change mode as well at boot time. You're right in that we might be re-configuring the lane for the same exact mode at boot time, if it was already configured in the same mode. > Does this apply to reconfiguration of the serdes lane between > 10Gbase-KR and slower modes? This applies only when configuring a line in a 10G mode, mvpp22_gop_init_10gkr isn't called otherwise. When switching to an non-10G mode we might want to put the XPCS in reset though, which is not done today with this patch. Thanks, Antoine -- Antoine Ténart, Bootlin Embedded Linux and Kernel engineering https://bootlin.com