[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20190219131909.GM14879@lunn.ch>
Date: Tue, 19 Feb 2019 14:19:09 +0100
From: Andrew Lunn <andrew@...n.ch>
To: Frank de Brabander <debrabander@...il.com>
Cc: Florian Fainelli <f.fainelli@...il.com>,
Heiner Kallweit <hkallweit1@...il.com>, netdev@...r.kernel.org
Subject: Re: [PATCH] phy/marvell: prevent unneeded page switching
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
Powered by blists - more mailing lists