lkml.org 
[lkml]   [2020]   [Mar]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH net 2/2] net: bcmgenet: keep MAC in reset until PHY is up
From
Date


On 3/16/2020 2:44 PM, Doug Berger wrote:
> As noted in commit 28c2d1a7a0bf ("net: bcmgenet: enable loopback
> during UniMAC sw_reset") the UniMAC must be clocked at least 5
> cycles while the sw_reset is asserted to ensure a clean reset.
>
> That commit enabled local loopback to provide an Rx clock from the
> GENET sourced Tx clk. However, when connected in MII mode the Tx
> clk is sourced by the PHY so if an EPHY is not supplying clocks
> (e.g. when the link is down) the UniMAC does not receive the
> necessary clocks.
>
> This commit extends the sw_reset window until the PHY reports that
> the link is up thereby ensuring that the clocks are being provided
> to the MAC to produce a clean reset.
>
> One consequence is that if the system attempts to enter a Wake on
> LAN suspend state when the PHY link has not been active the MAC
> may not have had a chance to initialize cleanly. In this case, we
> remove the sw_reset and enable the WoL reception path as normal
> with the hope that the PHY will provide the necessary clocks to
> drive the WoL blocks if the link becomes active after the system
> has entered suspend.
>
> Fixes: 1c1008c793fa ("net: bcmgenet: add main driver file")
> Signed-off-by: Doug Berger <opendmb@gmail.com>

Acked-by: Florian Fainelli <f.fainelli@gmail.com>
--
Florian

\
 
 \ /
  Last update: 2020-03-17 03:22    [W:1.394 / U:0.028 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site