summaryrefslogtreecommitdiffstats
path: root/net/switchdev
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2021-01-26 18:23:39 -0800
committerJakub Kicinski <kuba@kernel.org>2021-01-26 18:24:46 -0800
commit2bd29748fca137e4fc01f1a40819e010d9d9cc2e (patch)
tree70adc938dc3824de01d88256f27ecbc7dfc68ec4 /net/switchdev
parentb491e6a7391e3ecdebdd7a097550195cc878924a (diff)
parentc730ab423bfa1ae99b688a9abdedf74477d44955 (diff)
downloadlinux-2bd29748fca137e4fc01f1a40819e010d9d9cc2e.tar.gz
linux-2bd29748fca137e4fc01f1a40819e010d9d9cc2e.tar.bz2
linux-2bd29748fca137e4fc01f1a40819e010d9d9cc2e.zip
Merge branch 'net-fec-fix-temporary-rmii-clock-reset-on-link-up'
Laurent Badel says: ==================== net: fec: Fix temporary RMII clock reset on link up v2: fixed a compilation warning The FEC drivers performs a "hardware reset" of the MAC module when the link is reported to be up. This causes a short glitch in the RMII clock due to the hardware reset clearing the receive control register which controls the MII mode. It seems that some link partners do not tolerate this glitch, and invalidate the link, which leads to a never-ending loop of negotiation-link up-link down events. This was observed with the iMX28 Soc and LAN8720/LAN8742 PHYs, with two Intel adapters I218-LM and X722-DA2 as link partners, though a number of other link partners do not seem to mind the clock glitch. Changing the hardware reset to a software reset (clearing bit 1 of the ECR register) cured the issue. Attempts to optimize fec_restart() in order to minimize the duration of the glitch were unsuccessful. Furthermore manually producing the glitch by setting MII mode and then back to RMII in two consecutive instructions, resulting in a clock glitch <10us in duration, was enough to cause the partner to invalidate the link. This strongly suggests that the root cause of the link being dropped is indeed the change in clock frequency. In an effort to minimize changes to driver, the patch proposes to use soft reset only for tested SoCs (iMX28) and only if the link is up. This preserves hardware reset in other situations, which might be required for proper setup of the MAC. ==================== Link: https://lore.kernel.org/r/20210125100745.5090-1-laurentbadel@eaton.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/switchdev')
0 files changed, 0 insertions, 0 deletions