From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.3 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_PASS,USER_AGENT_MUTT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 27AC5C43381 for ; Tue, 19 Feb 2019 13:19:13 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id E01E82146E for ; Tue, 19 Feb 2019 13:19:12 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (1024-bit key) header.d=lunn.ch header.i=@lunn.ch header.b="SnV1gvst" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728454AbfBSNTL (ORCPT ); Tue, 19 Feb 2019 08:19:11 -0500 Received: from vps0.lunn.ch ([185.16.172.187]:58334 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726221AbfBSNTL (ORCPT ); Tue, 19 Feb 2019 08:19:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lunn.ch; s=20171124; h=In-Reply-To:Content-Type:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Sender:Reply-To:Content-Transfer-Encoding:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=ipO1cq1C/fdKyVkNDCQwJ7Nl3DBDQzZXb/Rbo8MxRP4=; b=SnV1gvstp6lYjsLXDv21MS9bxP robVRr6/hrhpgDY9xtSLLajj/N1Y/uOEGb9t+EHioX5WkKc9ilE/dK93kfuaMci6UxLzptTXYEzZ3 BZAvCPls8p+m2tbcrKQjoCt/DBhs51JGqMAMnBDvL6w4rySYbA0QMtx0cFPX5pEelWrc=; Received: from andrew by vps0.lunn.ch with local (Exim 4.89) (envelope-from ) id 1gw5Ij-0001sg-Eu; Tue, 19 Feb 2019 14:19:09 +0100 Date: Tue, 19 Feb 2019 14:19:09 +0100 From: Andrew Lunn To: Frank de Brabander Cc: Florian Fainelli , Heiner Kallweit , netdev@vger.kernel.org Subject: Re: [PATCH] phy/marvell: prevent unneeded page switching Message-ID: <20190219131909.GM14879@lunn.ch> References: <1550560893-2445-1-git-send-email-debrabander@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1550560893-2445-1-git-send-email-debrabander@gmail.com> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org On Tue, Feb 19, 2019 at 08:21:33AM +0100, Frank de Brabander wrote: > marvell_read_status() no longer first switches to the fiber page, instead > looks at the already active register page first. In case the link is down, > switches to the other (fiber/copper) register page. > > Unneeded register page switching of the Marvell 88E1510 PHY can cause > the ethernet driver to register a link down & up event. Hi Frank I think the page change itself is unlikely to cause a link down/up. It seems more likely there is something else going on here. The wrong page being read, fibre page being read when there is no support for fibre, etc. Do you get link down/up reported when you read the temperature sensor? That also causes a page change? I think i would first start by adding locking to marvell_read_status(). phy_select_page() takes a lock before changing the page. phy_restore_page() releases the lock. Use those around reading the status. Andrew