[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200127112102.GT25745@shell.armlinux.org.uk>
Date: Mon, 27 Jan 2020 11:21:02 +0000
From: Russell King - ARM Linux admin <linux@...linux.org.uk>
To: Jose Abreu <Jose.Abreu@...opsys.com>
Cc: netdev@...r.kernel.org, Joao Pinto <Joao.Pinto@...opsys.com>,
Giuseppe Cavallaro <peppe.cavallaro@...com>,
Alexandre Torgue <alexandre.torgue@...com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Andrew Lunn <andrew@...n.ch>,
Florian Fainelli <f.fainelli@...il.com>,
Heiner Kallweit <hkallweit1@...il.com>,
linux-stm32@...md-mailman.stormreply.com,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: Re: [RFC net-next 6/8] net: phylink: Configure MAC/PCS when link is
up without PHY
On Mon, Jan 27, 2020 at 12:09:11PM +0100, Jose Abreu wrote:
> When we don't have any real PHY driver connected and we get link up from
> PCS we shall configure MAC and PCS for the desired speed and also
> resolve the flow control settings from MAC side.
This is certainly the wrong place for it. Please hold off on this patch
for the time being. Thanks.
>
> Signed-off-by: Jose Abreu <Jose.Abreu@...opsys.com>
>
> ---
> Cc: Giuseppe Cavallaro <peppe.cavallaro@...com>
> Cc: Alexandre Torgue <alexandre.torgue@...com>
> Cc: Jose Abreu <joabreu@...opsys.com>
> Cc: "David S. Miller" <davem@...emloft.net>
> Cc: Jakub Kicinski <kuba@...nel.org>
> Cc: Maxime Coquelin <mcoquelin.stm32@...il.com>
> Cc: Russell King <linux@...linux.org.uk>
> Cc: Andrew Lunn <andrew@...n.ch>
> Cc: Florian Fainelli <f.fainelli@...il.com>
> Cc: Heiner Kallweit <hkallweit1@...il.com>
> Cc: netdev@...r.kernel.org
> Cc: linux-stm32@...md-mailman.stormreply.com
> Cc: linux-arm-kernel@...ts.infradead.org
> Cc: linux-kernel@...r.kernel.org
> ---
> drivers/net/phy/phylink.c | 14 ++++++++++++--
> 1 file changed, 12 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/phy/phylink.c b/drivers/net/phy/phylink.c
> index 4174d874b1f7..75dbaf80d7a5 100644
> --- a/drivers/net/phy/phylink.c
> +++ b/drivers/net/phy/phylink.c
> @@ -533,10 +533,20 @@ static void phylink_resolve(struct work_struct *w)
>
> if (link_changed) {
> pl->old_link_state = link_state.link;
> - if (!link_state.link)
> + if (!link_state.link) {
> phylink_mac_link_down(pl);
> - else
> + } else {
> + /* If no PHY is connected, we still need to configure
> + * MAC/PCS for flow control and speed.
> + */
> + if (!pl->phydev) {
> + phylink_resolve_flow(pl, &link_state);
> + phylink_mac_config(pl, &link_state);
> + }
> +
> phylink_mac_link_up(pl, link_state);
> + }
> +
> }
> if (!link_state.link && pl->mac_link_dropped) {
> pl->mac_link_dropped = false;
> --
> 2.7.4
>
>
--
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
Powered by blists - more mailing lists